Your browser lacks required capabilities. Please upgrade it or switch to another to continue.
Loading…
/*#
#desc: admin texts you due to missing workouts
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $npc_admin.flags.flirted>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate to setup.setNextDate($now, 1, 7, 10)>>
<<case 5>>
<<set _nextDate to setup.setNextDate($now, 3, 7, 10)>>
<<case 6>>
<<set _nextDate to setup.setNextDate($now, 2, 7, 10)>>
<</switch>>
<<set $npc_admin.flags.nextWorkout = _nextDate>>
<<addEvent 'event_admin_morning_visit'
'{"trigger":"always","type":["date"],"priority":100}'
'{"szene":"event_admin_morning_surprise"}'
_nextDate
>>
<</if>>
<<if $currentTasks.manager_morning_inspection_task.finished>>
/% Hacky fix to deal with event + task system conflict %/
<<set $currentTasks.manager_morning_inspection_task.finished = false>>
<<set $currentTasks.manager_morning_inspection_task.finishedTime = undefined>>
<<set $currentTasks.manager_morning_inspection_task.condition = "">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text from <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_admin;Hey! Missed you at the gym today, hope you're feeling good, don't wanna let those gainz goblins catch ya!@@"<br>
<br>
You feel bad about standing him up and text back an apology saying you just couldn't manage to get up in time.<br>
<br>
<<if $npc_admin.flags.flirted>>
"@@.npc_admin;Well maybe next time... that or I'll just pop by and carry you to the gym! No comrade left behind! Allies under the bar!@@"<br>
<br>
You blush, maybe the plan to lure him to your flat could work...
<<else>>
"@@.npc_admin;Well maybe next time. Don't worry about me constantly bugging you like this in the future, but I hope to see you again at the gym!@@"
<</if>>
<br><br>
[<<moveTo $beforetasklocation "Hang up." 60>>]
</div>/*#
#desc: admin shows up in the morning due to missing workouts multiple times
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.atHome = setup.inPassageTag($beforetasklocation, 'home')>>
<<set $npc_admin.flags.morning_visit = true>>
<<set $scene.leavingHome = $beforetasklocation == 'room_citymap'>>
<</if>>
<<if $scene.atHome || $scene.leavingHome>>
<<set $player.location to "Foyer">>
<<else>>
<<set $player.location to "Phonecall">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.atHome || $scene.leavingHome>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<<else>>
<<createBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.atHome>>
You hear your doorbell ring, but being a bit drowsy this early in the morning, you react kind of slow. And you didn't have your fill of hot black caffeinated beverage, aka coffee yet. You have no idea who this could be so you take a look at the screen of your security system and see your friend <<=setup.getNpcName('npc_admin', 'first')>> standing outside the door in full gym attire.<br>
<br>
Sure you haven't made it in to workout for a few days, and this was technically your plan, but you're still surprised he came all the way out to your apartment.<br>
<br>
[<<moveTo "event_admin_morning_surprise_answer" "Open the door." 60>>]
<<elseif $scene.leavingHome>>
You reach for the door to head out just as your doorbell chimes. You check the display to see that <<=setup.getNpcName('npc_admin', 'first')>> is standing outside in full gym attire.<br>
<br>
Sure you haven't made it in to workout for a few days, and this was technically your plan, but you're still surprised he came all the way out to your apartment.<br>
<br>
[<<moveTo "event_admin_morning_surprise_answer" "Open the door." 60>>]
<<else>>
You get a text from <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_admin;Hey! Missed you at the gym again today, swung by your pad but you aren't here. Guess you're taking a break from working out? I'll stop buggin' ya but hope to see you in again some morning. You know I'll be there!@@"<br>
<br>
<<printThought $player "Shit, I botched my opportunity to get him alone...">><br>
<br>
[<<moveTo $beforetasklocation "Hang up." 60>>]
<</if>>
</div>/*#
#desc: answer door when admin drops by in the morning
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene= {}>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<set $scene.outfit_type = "">>
<<set $scene.clothinggender = setup.analyzeWornTags(['female','male','unisex'])>>
<<if $player.indecent >= 90>>
<<set $scene.naked = "naked">>
<<applyExperience 'humiliation' 8 'terrible' $SEEN_FRIEND>>
<<else>>
<<switch setup.analyzeWornTags(['sleepwear', 'gym', 'office'])>>
<<case 'sleepwear'>>
<<set $scene.outfit_type = "sleep">>
<<applyExperience 'humiliation' 8 'normal' $SEEN_FRIEND>>
<<case 'gym'>>
<<set $scene.outfit_type = "gym">>
<<case 'office'>>
<<set $scene.outfit_type = "work">>
<<default>>
<<set $scene.outfit_type = "other">>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png" "./images/characters/npc_admin_gym.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.outfit_type>>
<<case "naked">>
You open the door without thinking (or is that "just as planned?") completely naked.<br>
<br>
<<=ps(setup.getNpcName('npc_admin', 'first'))>> is wide-eyed in shock, you can practically see his brain slowly going through a full reboot cycle as his gaze glides partway down your body and then snaps back up to fixate purposefully on your face.<br>
<br>
"@@.npc_admin;I, uh... wow. I guess I kind of forgot that you're a different sort of girl... down there, funny how that works given how much longer I knew you as a guy.@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
You smile and lean against the doorframe, seductively looking up at him as you state that "but... I AM a girl..." <br>
<br>
He quickly back-pedals.<br>
<br>
"@@.npc_admin;Shit, sorry, I didn't mean, I mean, of course you are. Um, look this is just a bit awkward. I just hadn't seen you at the gym for a few days and wanted to check in - gainz goblins are gonna close in if you keep slacking! Anyway, I, uh, gotta go, I'll see you at work?@@"
<<else>>
<<printThought $player "Oh <<getWordGod $player>>, why did I do this? This is the most humiliating thing ever...">><br>
<br>
"@@.npc_admin;Anyway, I, uh just came by since I hadn't seen you at the gym in a few days, just wanted to check in - gainz goblins are gonna close in if you keep slacking! Anyway, I, uh, gotta go, I'll see you at work?@@"
<</if>>
<br><br>
[<<moveTo "event_admin_morning_surprise_seduce_1" "Try to get him to stay..." 60>>]<br>
[<<moveTo "room_foyer" "Let him go" 60>>]
<<case "sleep">>
You show up to the door wearing your
<<switch $scene.clothinggender>>
<<case "female">>
cute sleeping outfit.
<<case "male">>
boring old PJs
<<case "unisex">>
gender-ambiguous sleeping attire.
<<default>>
ERROR: unknown clothing gender: <<=$scene.clothinggender>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_admin', 'first')>> balks a bit.<br>
<br>
"@@.npc_admin;Shit, did I wake you? Sorry about that... Anyway, I, uh just came by since I hadn't seen you at the gym in a few days, just wanted to check in - gainz goblins are gonna close in if you keep slacking! Anyway, I, uh, gotta go, I'll see you at work?@@"
<br><br>
[<<moveTo "event_admin_morning_surprise_seduce_1" "Try to get him to stay..." 60>>]<br>
[<<moveTo "room_foyer" "Let him go" 60>>]
<<case "gym">>
You open the door wearing your gym attire.<br>
<br>
"@@.npc_admin;Oh, cool, looks like you were just running a bit late. I'd missed you at workout the past few days. Come on, if we hurry we should still be able to jam a few sets in before work.@@"<br>
<br>
[<<moveTo "event_admin_gym_morning_1_alt" "Grab your stuff and head out with him." 60>>]
<<case "work">>
You open the door dressed for work.<br>
<br>
"@@.npc_admin;Oh, looks like you were about to head in to work. I was just coming by to check on why you hadn't made it to the gym the past few mornings. Guess you've been doing some extra hours at the office? That <<=setup.getNpcName('npc_manager', 'first')>> is a real ball-buster, isn't she?@@"<br>
<br>
<<printThought $player "You have no idea...">><br>
<br>
"@@.npc_admin;Well I don't wanna get you in trouble so I'll let you go, hope you can make it back in to work out sometime otherwise I guess I'll see ya at the office!@@"<br>
<br>
He gives you a wave and heads up the hall.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 60>>]
<<default>>
You open the door.<br>
<br>
"@@.npc_admin;Oh, hey. I just swung by since I haven't seen you at the gym for a few days, everything alright?@@"<br>
<br>
You explain that you've just been really busy of late but you promise you'll get back in soon.<br>
<br>
He nods and says he'll see you around at work before jetting off to the gym.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 60>>]
<</switch>>
</div>/*#
#desc: try to seduce admin when he visits in the morning
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.accept = $npc_admin.flags.knowgender == 'female' && setup.getTotalValue("stamina") >= 10 && setup.getTotalValue("strength") >= 10 && setup.getTotalValue("dexterity") >= 10 && setup.calcBreastSize($player) != "none" && $scene.outfit_type == 'sleep' && $scene.clothinggender == 'female' && ["normalmakeup", "expertmakeup", "moviestar", "sissy_doll"].includes(setup.getCurrentMakeup($player)) && $player.makeup.messed < 15>>
<</if>>
<<set $player.location to "Foyer">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png" "./images/characters/npc_admin_gym.png">>
<div id="invframe" class="scrolltext">
You smoulder up at <<=setup.getNpcName('npc_admin', 'first')>> as you turn on every sex-kitten power you've got, telling him it would be a shame for him to have come all this way for nothing...<br>
<br>
<<if $scene.accept>>
He's like a cute puppy following you into the apartment, his trance only broken when the door closes behind with a surprisingly loud thunk.<br>
<br>
He turns with a start to find you walking forward, oozing sex with each sway of your hips, his gaze finally settling on locking on to your bouncing breasts.<br>
<br>
"You like?" You purr as you glide forward, your dainty sleep outfit barely keeping you decent as you show off the body you have spent hours working on in the gym.<br>
<br>
You come to a stop in front of him and blink up at him. Standing this close you can hear the thundering beat of <<=ps(setup.getNpcName('npc_admin', 'first'))>> big heart as he looks down at your seductively made-up face.<br>
<br>
"@@.npc_admin;I-@@" He seems at a loss for words but then... suddenly so are you.<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_admin_morning_surprise_seduce_2" "Why use words when a passionate kiss can say so much more?" 60>>]
<<else>>
<<printThought $player "Shit, why am I suddenly petrified!">><br>
<br>
[<<moveTo "event_admin_morning_surprise_seduce_2" "Continue." 60>>]
<</if>>
<<else>>
<<if $npc_admin.flags.knowgender != "female">>
"@@.npc_admin;Sorry bro, I just don't see you that way I- uh-... this is really awkward Imma go, I'll see you at work or the gym or something.@@"<br>
<br>
<<if $player.flags.identify_as == "female">>
<<printThought $player "Crap, of course. He's like the most hetero guy I know, but maybe if I explained to him that I'm a woman? Probably a bit of an awkward time to try that right now tho...">>
<<else>>
<<printThought $player "Crap, of course. He's like the most hetero guy I know, there's no way I have a chance with him unless both of us thought of me as a woman.">>
<</if>>
<<elseif setup.getTotalValue("stamina") < 10 || setup.getTotalValue("strength") >= 10 || setup.getTotalValue("dexterity") >= 10>>
He shakes his head. "@@.npc_admin;Sorry but I can feel my muscles wilting already, I need to get to the gym... and you should be hitting it up a bit too; you still have a bit of that skinny-fat goin' on.@@"<br>
<br>
<<printThought $player "Hmm, makes sense, he usually goes for pretty fit girls, I should work on getting in better overall shape for him.">>
<<elseif setup.calcBreastSize($player) == "none">>
You catch his gaze lingering on your flat chest before he shakes his head.<br>
<br>
<<printThought $player "Damn, of course. I mean, he always was a bit of a breast man, things are going to be challenging enough without me being flat chested!">>
<<elseif $scene.clothinggender == 'female'>>
His gaze seems to keep coming back to your outfit... your decidedly un-feminine outfit...<br>
<br>
<<printThought $player "Dammit, why didn't I dress for the occasion? Something flirty and feminine but not too put-on... maybe a sleep outfit to sell him on this being serendipity?">>
<<elseif $scene.outfit_type != 'sleep'>>
He seems distracted by your nudity, particularly your <<getWordMyPenis $player>>.<br>
<br>
<<printThought $player "Hmm... sure he has accepted me as a woman but maybe I could ease him into things a bit more gradually if I want to get him to fall in love with me?">>
<<elseif !(["normalmakeup", "expertmakeup", "moviestar", "sissy_doll"].includes(setup.getCurrentMakeup($player)) && $player.makeup.messed < 15)>>
He looks you in the eye and you are suddenly cognisant of your
<<if setup.getCurrentMakeup($player) != "">>
total lack of makeup
<<elseif $player.makeup.messed >= 15>>
unkempt makeup
<<else>>
inappropriate makeup
<</if>>
what were you thinking, not striving to look your best?
<<else>>
ERROR: unexpected failure state!
<</if>>
<br><br>
He looks very awkward and confused. "@@.npc_admin;I, uh... think I should be going but like... don't be a stranger, ok? Let me know next time you want to hit the bar, or just meet me at the gym like normal.@@"<br>
<br>
He leaves the flat, but you would swear he took a final glance back at you...<br>
<br>
<<printThought $player "Hmm... maybe there's a chance?">><br>
<br>
[<<moveTo "room_foyer" "Close the door and start your morning." 60>>]
<</if>>
</div>/*#
#desc: seduction results vs admin when he visits in the morning
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $player.flags.humiliationStyle == "brazen">>
/% TODOfuture, add dinner date %/
<<else>>
<<addWorkEvent 'manager_matchmaker' '{"trigger":"afternoon","minTimeDiff":0,"type":"always","chance":100,"repeat":false,"priority":200}' '{"szene":"event_work_manager_admin_cock_1","length":"30"}'>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_15'
0
'event_psychiatrist_session_admin_seduce_fail'
false
'theme_psychiatrist_admin_header'
>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png" "./images/characters/npc_admin_gym.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.humiliationStyle == "brazen">>
Your lips part and you fill the gap by reaching up for a kiss, your arms wrapping over his shoulders. He freezes for a moment and then returns your embrace, his hands finding their way to your hips as he casually lifts you into the air. Feet far from the ground you feel light as a feather, like you could float here forever...<br>
<br>
Finally he gently places you back down and then he blinks, lust, confusion and a dozen other emotions playing over his face.<br>
<br>
"@@.npc_admin;I- Uh, wow, that was just- wow...@@"<br>
<br>
You smile and blink, telling him there's more where that came from, one of your hands reaching out to caress his VERY hard cock through his tight pants.<br>
<br>
"@@.npc_admin;Woah! Uh, sorry, I, uh... I think I need time to think about this and, um, we need to get to work soon so uh... How about we meet after work, dinner... my treat?@@"<br>
<br>
You're a bit disappointed that things aren't going further but, well... you can work with this. You smile and nod, giving him a peck on the cheek and telling him you're looking forward to it.<br>
<br>
Just before the door closes behind him you call out after him "I'll give you a treat too!" <br>
<br>
The shudder spreads across his broad shoulders like a wave on the ocean as he quickly steps out and closes the door.<br>
<br>
You take a deep breath and try to centre yourself, after all, you still have a day of work to get through first...
<<else>>
The moment of silence draws out and then is shattered by the loud chime of an alarm.<br>
<br>
"@@.npc_admin;Shit, sorry, that's me, 's the reminder that I need to start my first set, I use it just in case I get trapped in a conversation at the front desk or something... Uh...@@"<br>
<br>
The magic of the moment shattered he seems unable to look at you. "@@.npc_admin;Sorry, uh, it's a bit too early for this um... I'm just going to head to the gym, I'll see you next time, maybe? Or at work... bye!@@"<br>
<br>
Surprising you with his speed he darts out of the flat leaving you alone and cursing yourself.<br>
<br>
<<printThought $player "Dammit, why did I freeze! This is even harder than back when I was trying to first date <<=setup.getNpcName('npc_exgirlfriend', 'first')>>! I'm certain <<=setup.getNpcName('npc_admin', 'first')>> has feelings for me I just... can't seem to push past our history...">><br>
<br>
You sigh.<br>
<br>
[<<moveTo "room_foyer" "Continue your morning prep." 60>>]
<</if>>
</div>/*#
#desc: meet admin for drinks
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $npc_admin.flags.ageofconfusion>>
<<initRoom>>
<<moveTo 'event_admin_ageofconfusion_stood_up'>>
<<elseif $roomchange==true>>
<<set $npc_date = {}>>
<<set $npc_date.firstscene = "normal">>
<<set $npc_date.themes = 0>>
<<set $npc_date.clothingstyle = setup.analyzeWornTags(['female','male','unisex'])>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<set $scene.bespokeComment = setup.getBespokeComment('npc_admin')>>
<<if $scene.bespokeComment == "">>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_admin',$npc_admin)>>
<<else>>
<<set $scene.compareVisuals = "">>
<</if>>
<<storeVisual $player $npc_admin>>
<<if $npc_admin.stage > 1>>
<<set $npc_date.firstscene = 'dating'>>
<<elseif $npc_admin.stage == 1 && $workEvents.hasOwnProperty('manager_matchmaker')>>
<<set $npc_date.firstscene = 'noshow'>>
<<else>>
<<if !$npc_admin.flags.sawyouinfemaleclothes && (setup.analyzeWornTags(['female','male','unisex'])=='female')>>
<<set $npc_admin.flags.sawyouinfemaleclothes = true>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<set $npc_admin.flags.firstsawfemale = "bar">>
<<set $npc_date.firstscene = "female">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_12'
12
'event_admin_theme_female_clothes'
false
'theme_admin_transition_header'
>>
<<gainWillpower $player 1>>
<<elseif !$npc_admin.flags.sawyouinfemaleclothes && !$npc_admin.flags.sawyouinunisexclothes && (setup.analyzeWornTags(['female','male','unisex'])=='unisex')>>
<<set $npc_admin.flags.sawyouinunisexclothes = true>>
<<set $npc_date.firstscene = "unisex">>
<<gainWillpower $player 1>>
<</if>>
<<if ($player.flags.fem_style.name != "" && !$npc_admin.flags.reactnamechange)>>
<<set $npc_admin.flags.reactnamechange = true>>
<<if $npc_date.firstscene == "normal">>
<<set $npc_date.firstscene = "namechanged">>
<<else>>
<<set $npc_date.namechange_addon = true>>
<</if>>
<</if>>
<</if>>
<<set $npc_admin.dates+=1>>
<</if>>
<<if $npc_date.firstscene == "noshow">>
<<set $player.location to "Phonecall">>
<<else>>
<<set $player.location to "The Usual Place">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $npc_date.firstscene == "noshow">>
<<createBGR "./images/locations/phonecall.png">>
<<else>>
<<createBGR "./images/locations/the_usual_place_night.png" "./images/characters/npc_admin_casual.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $npc_date.firstscene>>
<<case "noshow">>
You wait a bit only to get a text from your friend.<br>
<br>
"@@.npc_admin;Hey, sorry to bail on you last minute like this but I'm having car problems and I need to get it into the shop before the weekend. Again, really sorry for standing you up like this but I'll make it up to you somehow aight? I'll see you on Monday.@@"<br>
<br>
You put your phone away and think about what to do now that your schedule has just cleared up.
<<case "unisex">>
You wait for a little bit, a bit nervous.<br>
<br>
<<printThought $player "Damn it. I should have changed clothes. Why did I choose to appear in this outfit?">><br>
<br>
After a short while <<=setup.getNpcName('npc_admin', 'first')>> shows up, his bright white smile cutting through the dim light surrounding the "Usual Place." Walking up to the front of the building he stops and takes a look around, as if looking for someone. It takes a minute to realise that he might be looking for you. His lack of recognition stings, but you have changed quite a bit since you last saw each other.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>... maybe I should send him a message that I can't make it tonight and just run for the hills...">><br>
<br>
Your phone is in your hand when you remember that that kind of cowardice is what got you in your current predicament in the first place. For his part <<=setup.getNpcName('npc_admin', 'first')>> never panics even in the face of certain defeat. As far as you can tell. Though he isn't totally perfect, you recall having to help quite a lot to get him through his programming exams back in the university. You scrape up the little bit of willpower you have remaining, take a deep breath, and approach him. Standing behind him you're reminded how much bigger he is than yourself, you cough to get his attention.<br>
<br>
<<if $player.flags.fem_style.name == "">>
"@@.npc_admin;Hey there, how can I help you... wait a second... <<=$player.first_name>>? Is that you <<=$player.first_name>>?@@"
<<else>>
<<if $npc_date.namechange_addon>>
"@@.npc_admin;Hey there, how can I help you... wait a second... <<=$player.original_first_name>>? Is that you <<=$player.original_first_name>>?@@"<br>
<br>
"@@.npc_admin;<<=$player.original_first_name>>? What happened to you, man? Is this like... some sort of hidden camera thing?@@" He looks around, clearly grasping at straws for an explanation.<br>
<br>
You wince, surprised at how quickly it is that hearing your "old" name sounds weird and unnatural. Bashfully, you look towards the ground, explaining... no rather stumbling, that you go by <<=$player.first_name>> now. You turn away, blushing even harder.<br>
<br>
"@@.npc_admin;<<=$player.first_name>> huh, so, um... wow... I REALLY could use a drink right about now... you wanna join me and we can maybe talk about all the things that have obviously been going on with you?@@"
<<else>>
"@@.npc_admin;Hey there, how can I help you... wait a second... <<=$player.first_name>>? Is that you <<=$player.first_name>>?@@"<br>
<br>
You turn and smile a bit sheepishly. "@@.npc_admin;Wow, I guess the name should have been a tip-off you look a lot more... feminine...@@" He pauses a bit awkwardly, as if uncertain how to proceed. "@@.npc_admin;You look good, come on let's head inside and get some drinks and you can tell me all about what's been goin' on with you.@@"
<</if>>
<</if>>
<br><br>
You nod sheepishly.<br>
<br>
"@@.npc_admin;Well, don't get this wrong, but I almost... no... If you hadn't approached me, I would have never guessed it was you. Let me take a closer look at you.@@"<br>
<br>
He moves in way too close for your taste. It normally wouldn't be a problem, since you've known each other for years, but right now you feel vulnerable. You suddenly regret staying, uncertain if you want him to see you like this, since you are unsure if this was forced upon you... or even worse, it was your own free will that allowed this... Or would that make it better? You don't have time to answer such questions before he makes his assessment.<br>
<br>
<<if $scene.compareVisuals == "">>
<<if $scene.bespokeComment != "">>
<<=$scene.bespokeComment>>
<<else>>
"@@.npc_admin;Wow, that is quite a difference clothes can make. You changed your wardrobe to something more ...form fitting. Quite unexpected I have to admit. What's the occasion?@@"
<</if>>
<<else>>
"@@.npc_admin;Wow, that is quite a difference clothes can make. Not only did you change your wardrobe to something more... form fitting. <<=$scene.compareVisuals>>. Quite unexpected I have to admit. What's the occasion?@@"
<</if>>
<br><br>
You stumble over your own tongue while trying to give a coherent answer, and failing miserably at it. <<=setup.getNpcName('npc_admin', 'first')>> cuts you off in the middle of your... well... "sentence" with "@@.npc_admin;Ah yes, I see. Someone needs a little booze to loosen their tongue. Let's go inside and talk about whatever is going on in your life, if you want to, okay?@@"<br>
<br>
You simply nod, relieved at not having to talk about it anymore here, out in the open.
<br><br>
"@@.npc_admin;So, what are we waiting for. Let's get inside and wasted. Hopefully in that order.@@"
<<case "female">>
Standing outside The Usual Place you are feeling very nervous, rocking back and forth from one foot to the other, feeling like a deer exposed in an open field.<br>
<br>
<<printThought $player "Damn it. I should have changed clothes. Why did I decide to wear this outfit?">><br>
<br>
<<if setup.getTotalValue("feminization") > 5>>
In the back of your mind a quiet yet... seductive voice whispers that you had better get used to it, sissy, because you have a bright, pink future ahead of you...<br>
<br>
<</if>>
You wait for a little bit when you hear a voice behind you, almost jumping in surprised.<br>
<br>
"@@.npc_admin;Hey, beautiful, why you waiting out here all alone? The party's inside!@@"<br>
<br>
You turn around not even feeling in control of your body, looking up as if compelled as <<=ps(setup.getNpcName('npc_admin', 'first'))>> expression goes from friendly flirting to shocked recognition to confusion and a dozen other emotions in between.<br>
<br>
For your part you only feel one emotion: Utter, soul-destroying embarrassment, a feeling of total, abject humiliation from the tippy-top of your head all the way down to the <<if setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>balls of your dainty, heel-pointed feet<<else>>soles of your feet<</if>>.<br>
<br>
After muttering a few words, trying to say at least hello, you finally manage to say hi. Your embarrassed voice pitched at least an octave up from your normal speech making you blush even harder.<br>
<br>
<<if $player.flags.fem_style.name == "">>
"@@.npc_admin;<<=$player.first_name>>? What happened to you, man? Is this like... some sort of hidden camera thing?@@" He looks around, clearly grasping at straws for an explanation.<br>
<br>
"N-no" you reply, struggling not to violate your NDA and launch into a FULL explanation of what has happened to you. "I, uh, just decided to make some changes..." <br>
<br>
"@@.npc_admin;Changes... wow, yea, no kidding! Well far be it from me to disparage anyone's chosen attire. Just... wow, I mean it looks kind of good on you? Shit, what am I saying... look, gotta level with you, I think I could use a drink, whatcha say? I'm buying?@@"<br>
<br>
He starts past you and looks back, "@@.npc_admin;come on, <<=$player.first_name>>... that is your name right? I mean you look so different, it's like you're a new man, er, girl? Either way, calling you <<=$player.first_name>> just seems off, y'know? And, well, I hear you can change that pretty easy these days, all online, at least according to some billboard I saw...@@" he shakes his head, "@@.npc_admin;Sorry, bit side-tracked, I really need a drink.@@"
<<else>>
<<if $npc_date.namechange_addon>>
"@@.npc_admin;<<=$player.original_first_name>>? What happened to you, man? Is this like... some sort of hidden camera thing?@@" He looks around, clearly grasping at straws for an explanation.<br>
<br>
You wince, surprised at how quickly it is that hearing your "old" name sounds weird and unnatural. Bashfully, you look towards the ground, explaining... no rather stumbling, that its <<=$player.first_name>> now. You turn away, blushing even harder.<br>
<br>
"@@.npc_admin;<<=$player.first_name>> huh, so, um... wow... I REALLY could use a drink right about now... you wanna join me and we can maybe talk about all the things that have obviously been going on with you?@@"
<<else>>
"@@.npc_admin;Wow, I know you changed names, guess I should have expected something like this. Grats dude, dudette? Well either way, if this is what you want, more power to ya!@@"<br>
<br>
You smile, happy that, as always, you can count on <<=setup.getNpcName('npc_admin', 'first')>> to have your back.<br>
<br>
"@@.npc_admin;Alright then, <<=$player.first_name>> let's stop jibber-jabbing out here in the cold and get some drinks! Maybe talk about all the things that have obviously been going on with you?@@"
<</if>>
<</if>>
<br><br>
Alcohol, even if just to be something to do other than TALK sounds like a great idea and you hurriedly nod.<br>
<br>
His shoulders relax just a hair as he turns and heads into The Usual Place with you following behind. Still, you feel somehow more confident now, since you've directly approached him, the way you look now. Which is a good thing... you hope.
<<case "namechanged">>
You wait for a bit outside The Usual Place until you see your friend <<=setup.getNpcName('npc_admin', 'first')>> walking up with his patented grin.<br>
<br>
"@@.npc_admin;Hey, my bro, <<=$player.original_first_name>>! How's it hangin'?@@"<br>
<br>
<<if setup.getItemFromType("cage")>>
Thanks to your present locked and caged condition "it" isn't exactly hanging at all... but that's not exactly a topic you want to bring up with your friend.<br>
<br>
<</if>>
You greet him with a firm handshake and a chest-bump that almost knocks you over before taking a deep breath.<br>
<br>
He can sense instantly that there's something off and he listens patiently as you explain that, actually, you've changed your name and go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_admin;Woah, <<=$player.first_name>>? Really, you aren't just pulling my leg here, are you?@@"<br>
<br>
You shake your head.<br>
<br>
"@@.npc_admin;Damn that is... that is quite the change, you wanna tell me why?@@"<br>
<br>
The real reason for your shift seems a bit... complicated to get into standing on the sidewalk in front of a bar (to say nothing of your work NDA) so you punt, nebulously stating that you just felt like a change to kind of mark your "new" life, adding that there might be further changes to come. Feeling suddenly bashful you quickly suggest the two of you head inside and you can talk about more of what's been going on in your life over drinks.<br>
<br>
"@@.npc_admin;Now THAT is speaking my language! Well just know that whatever you want to call yourself, you're still my friend, now come on let's get in and get wasted, in that order!@@"
<<case "dating">>
You wait for a bit outside The Usual Place until you see your friend <<=setup.getNpcName('npc_admin', 'first')>> walking up with his patented grin.<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
He greets you with a slap on the ass and a "@@.npc_admin;how ya doin, slut?@@"<br>
<br>
You smirk and reply that you'd be better with something "hard" inside of you...<br>
<br>
Smiling at you he plays dumb, "@@.npc_admin;well they got a pretty good liquor selection, come on, I'll get you something nice and girly with an umbrella spiked with Everclear.@@"
<<if $scene.compareVisuals == "">>
<<if $scene.bespokeComment != "">>
<br><br>
As you turn to head inside his gaze glides up and down your body.
<<=$scene.bespokeComment>>
<</if>>
<<else>>
As you turn to head inside his gaze glides up and down your body. "@@.npc_admin;Wow, look at you! That is quite a difference clothes can make. <<=$scene.compareVisuals>>.@@"
<</if>>
<<case 'boyfriend'>>
Greeting you with a hug he lifts you into the air as you kiss, you savor the wonderful feel his gentle lips before he finally sets you down.<br>
<br>
<<if $scene.compareVisuals == "">>
<<if $scene.bespokeComment != "">>
As you turn to head inside his gaze glides up and down your body.
<<=$scene.bespokeComment>>
<br><br>
<</if>>
<<else>>
As you turn to head inside his gaze glides up and down your body. "@@.npc_admin;Wow, look at you! That is quite a difference clothes can make. <<=$scene.compareVisuals>>.@@"<br>
<br>
<</if>>
"@@.npc_admin;Come on, let's head inside.@@"<br>
<br>
His arm possessively wrapped around your waist you head into the bar.
<<default>>
ERROR: unknown npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<<default>>
<<if $npc_admin.dates == 1>>
You wait for a little bit. After a short while <<=setup.getNpcName('npc_admin', 'first')>> shows up, grinning from one ear to the other.<br>
<br>
"@@.npc_admin;Hey <<=$player.first_name>>. How long has it been since we met like this? <<=setup.getNpcName('npc_exgirlfriend', 'first')>> sure kept you busy before your nuclear fallout, didn't she?@@"<br>
<br>
<<if setup.getTotalValue('humiliation')<5>>
You simply find it to awkward to tell <<=setup.getNpcName('npc_admin', 'first')>> the truth. He is a good friend, but you didn't hang out with him as much as you used to during your time together with <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. You mumble something into your non existent beard that you simply had a lot going on.
<<else>>
You find it awkward to talk with <<=setup.getNpcName('npc_admin', 'first')>> about your plan to remain virgin. But he is a good friend ~ one you didn't hang out nearly as much as you used to be, so he deserves the truth.<br>
<br>
"@@.npc_admin;Woah, man. I had no idea. That takes dedication in this time and age.@@"<br>
<br>
You inform him that you plan to change the whole "virgin" issue as soon as possible.<br>
<br>
"@@.npc_admin;Look at <<=$player.first_name>> freshly back on the market and already making plans! You go dawg!@@"<br>
<br>
<</if>>
<<if $scene.compareVisuals == "">>
"@@.npc_admin;I'm pretty sure we can find someone to distract you from all those worries. Don't worry pal. With your cute-faced persona, I'm sure the ladies will be stormin' your fortress in no time flat!@@"<br>
<br>
<<printThought $player "Oh boy, you have no idea.">>
<<else>>
"@@.npc_admin;I'm pretty sure we can find someone who's able to distract you from all those worries. Don't worry pal. With your cute face persona, I'm sure the ladies will be stormin' your fortress in no time flat!@@"<br>
<br>
<<printThought $player "Oh boy, you have no idea.">><br>
<br>
"@@.npc_admin;I see you've even upped your game for the evening. Trying to get lucky? Here, let me take a look. <<=$scene.compareVisuals>>@@"
<</if>>
<br><br>
You blush a little bit. He called you cute. Not exactly the archetype you were aiming for, but then again, you've been kinda outside the game for a while. You can't even remember archetype you were aiming for in the first place before <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. <br>
<br>
"@@.npc_admin;So, what are we waiting for? Let's get inside and get wasted! Hopefully in that order.@@"
<<else>>
You wait for a little bit. After a short while <<=setup.getNpcName('npc_admin', 'first')>> shows up, grinning from one ear to the other.<br>
<br>
"@@.npc_admin;Hey <<=$player.first_name>>! How's it hanging? What are we waiting for? Let's get inside and get wasted! Hopefully in that order.@@"
<</if>>
<</switch>>
<br><br>
<<if $npc_date.firstscene == "noshow">>
[<<moveTo "room_usual_place_inside" "Go inside" 30>>]<br>
[<<moveTo "room_citymap" "City Centre" 300>>]
<<else>>
[<<moveTo "event_admin_drink_1_1" 'Go inside "the Usual Place."' 180>>]
<</if>>
</div>/*#
#desc: admin calls you because you failed to meet for drinks on time
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<incrementEmotion 'anger' 'npc_admin' 3>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_admin', 'first')>>! Oh shit. You forgot that you were supposed to go for a drink together today.<br>
<br>
"@@.npc_admin;Hey <<=$player.first_name>>, if you didn't feel like going for a drink, you should have told me so before I came all the way out here. Well, maybe another time.@@"<br>
<br>
You apologise to <<=setup.getNpcName('npc_admin', 'first')>> and promise you'll make it up to him next time.<br>
<br>
[<<moveTo $beforetasklocation "Hang up.">>]
</div>/*#
#desc: admin calls you because you failed to meet for drinks on time
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_admin', 'first')>>!<br>
<br>
<<printThought $player "Oh crap, how could I forget about the code red?">><br>
<br>
"@@.npc_admin;Hey, bro, I'm here at The Usual Place like you asked, did you get stuck in traffic or something?@@"<br>
<br>
[<<moveTo "event_admin_code_red_1_failed_2" "Say you're running late but you're on your way." 0 "<<set $scene.noshow = false>>">>]<br>
[<<moveTo "event_admin_code_red_1_failed_2" "Apologise say something came up." 0 "<<set $scene.noshow = true>>">>]
</div>/*#
#desc: admin calls you because you failed to meet for drinks on time
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<if $scene.noshow>>
<<incrementEmotion 'anger' 'npc_admin' 10>>
<<else>>
<<incrementEmotion 'anger' 'npc_admin' 5>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.noshow>>
"@@.npc_admin;What... you called a code red man, what's going on, are you ok?@@"<br>
<br>
Suddenly worried what your large, ex-military friend might be willing to do you quickly re-assure him that, while you're really, really sorry you aren't going to make it to the bar tonight.<br>
<br>
You can tell he's quite annoyed but he's holding it in.<br>
<br>
"@@.npc_admin;Not cool man, not cool. I hope you manage to sort whatever was bothering you out because I ain't happy being jerked around like this.@@"<br>
<br>
He hangs up first.<br>
<br>
[<<moveTo $beforetasklocation "Put your phone away.">>]
<<else>>
You profusely apologise and promise you'll be there soon he says he'll meet you outside. Hanging you rush to the Usual Place.<br>
<br>
Arriving breathless you stand outside looking around, cursing yourself for your tardiness.<br>
<br>
[<<moveTo "event_admin_drink_1" 'Wait for <<=setup.getNpcName("npc_admin", "first")>>.' 600>>]
<</if>>
</div>/*#
#desc: enter bar with admin
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<if $npc_admin.dates == 1>>
<<set $npc_barkeeper.profile = true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
<<if $npc_admin.dates == 1>>
Ah yes, "the Usual Place." You haven't been here for awhile. You try to remember why exactly that was the case, but all you can recall is that <<=setup.getNpcName('npc_exgirlfriend', 'first')>> did not like the place and refused to go with you. Walking inside is odd, you remember this place differently. They've changed the lighting, so the whole place feels full of atmosphere, and reworked the interior to make it look more old school. Nice.<br>
<br>
Looking around the clientele hasn't changed that much. A mixture of all genders, between the ages of 20 and 40. Only a few seem younger, some might be older. Hard to tell in this light. You've been coming here together with <<=setup.getNpcName('npc_admin', 'first')>> since you met him back in college. Looking at the bar you fail to recognise the Barkeeper. Hmmm... looks like Logan doesn't work here anymore.<br>
<br>
Seeing your confusion, <<=setup.getNpcName('npc_admin', 'first')>> explains things to you: "@@.npc_admin;You see <<=$player.first_name>>, Logan stopped working two years ago, shortly after you were here the last time. We had a big goodbye party, when he retired for good. The Lady working the Bar is his daughter <<=setup.getNpcName('npc_barkeeper', 'first')>>. Come on, I'll introduce you.@@"<br>
<br>
[<<moveTo "event_admin_drink_1_1_barkeeper" "Go to the bar." 180>>]
<<elseif $npc_admin.dates == 2>>
"The Usual Place." You really like what they've done with the lighting. The whole place feels so much more alive than the last time you visited, before you got together with <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. They reworked the interior to make it look really old school. Nice. The clientele is business as usual: A mixture of all genders, between the age of 20 and 40. Only a few seem younger, some might be older. Hard to tell in this light. This is the place to be, and you've been here together with <<=setup.getNpcName('npc_admin', 'first')>> since you met him while you were in college. Standing behind the bar is <<=setup.getNpcName('npc_barkeeper', 'first')>>.<br>
<br>
<<set _text = 'Have some drinks together with '+setup.getNpcName('npc_admin', 'first')+'.'>>
[<<moveTo "event_admin_drink_1_2a" _text 180>>]
<<else>>
You enter "The Usual Place." The clientele is business as usual: A mixture of all genders, between the age of 20 and 40. Only a few seem younger, some might be older. Hard to tell in this light. Standing behind the bar is <<=setup.getNpcName('npc_barkeeper', 'first')>>, nodding in your general direction as <<=setup.getNpcName('npc_admin', 'first')>> and you enter the bar.<br>
<br>
<<set _text = 'Have some drinks together with '+setup.getNpcName('npc_admin', 'first')+'.'>>
[<<moveTo "event_admin_drink_1_2a" _text 180>>]
<</if>>
</div>/*#
#desc: introduced to barkeeper, mistaken for a girl
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 3 'little' $SEEN_FRIEND>>
<<storeVisual $player $npc_barkeeper>>
<</if>>
<<set $player.location to "The Usual Place">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_barkeeper.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> moves towards the bar. Built like a tank and nearly as powerful the crowd parts before him making it easy for you to follow.<br>
<br>
"@@.npc_admin;Hey there <<=setup.getNpcName('npc_barkeeper', 'first')>> how's it going? Tough night?@@"<br>
<br>
"@@.npc_barkeeper;<<=setup.getNpcName('npc_admin', 'other')>>, how are you?@@"<br>
<br>
"@@.npc_admin;<<=setup.getNpcName('npc_barkeeper', 'first')>>, how many times must I ask you to call me <<=setup.getNpcName('npc_admin', 'first')>>?@@"<br>
<br>
"@@.npc_barkeeper;At least once more, <<=setup.getNpcName('npc_admin', 'other')>>, as always. Anyway, who is that cute girl in your shadow? A new conquest, I assume?@@"<br>
<br>
<<if $npc_date.firstscene == "unisex">>
Unable to stifle it, <<=ps(setup.getNpcName('npc_admin', 'first'))>> laughter can be heard in the whole bar.<br>
<br>
"@@.npc_admin;Hahahahahaha! Oh boy, you kind of did provoke that one with your outfit, didn't you <<=$player.first_name>>?@@"<br>
<br>
Grinning from one ear to the other he continues, "@@.npc_admin;No, that is <<=$player.first_name>> <<=$player.last_name>>," a good friend of mine who I owe quite a lot. And he is as a matter of fact... errr...@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> looks at you, slightly confused, tilting his head and starting slowly "@@.npc_admin;Male...ish?@@"<br>
<br>
You nod vigorously.<br>
<br>
"@@.npc_admin;Yup, 100% male. A paragon of masculinity, in fact!@@"<br>
<br>
Your face checks a few different shades of red while you try to sink into the floor.<br>
<br>
"@@.npc_barkeeper;Oh God, I am terribly sorry Mr. <<=$player.last_name>>. I would never take the liberty to assume your gender.@@", <<=setup.getNpcName('npc_barkeeper', 'first')>> blurts out, continuing with a fainter voice, "@@.npc_barkeeper;Please don't sue me! I could never afford that!@@"<br>
<br>
You assure her that you would never sue someone over assuming your or anyone else's gender, honest mistakes like these happen.<br>
<br>
"@@.npc_barkeeper;Here, let me make it up to you. Your drinks for this evening are on the house!@@"<br>
<br>
You think about declining, but free drinks are free drinks, so you thank her and accept.
<<elseif $npc_date.firstscene == "female">>
Walking behind <<=setup.getNpcName('npc_admin', 'first')>> only serves to drive home how much bigger and stronger he is <<if setup.getItemObjFromType("shoes").heels>>even with the aid of your heels <</if>>he towers over you and it's no wonder <<=setup.getNpcName('npc_barkeeper', 'first')>> had to peer around him to even notice you.<br>
<br>
<<if $player.flags.fem_style.name == "">>
"@@.npc_admin;Um, actually, that's <<=$player.first_name>>... You remember him, right?@@"<br>
<br>
"@@.npc_barkeeper;"Him" seems a bit of a reach but I would never seek to dictate anyone's gender... wow, that cutie of a wingman you used to drag around? I can see it now but I never would have recognised him, wow! I gotta say that new look SO much better suits your figure, you were cute before but now you're just adorable!@@"
<<else>>
"@@.npc_admin;Um, actually, that's <<=$player.original_first_name>>... shit! I mean, that was her old now, now she goes by <<=$player.first_name>>.@@"<br>
<br>
"@@.npc_barkeeper;<<=$player.original_first_name>>... Oh your cute wingman! I gotta say that new look SO much better suits your figure, you were cute before but now you're just adorable!@@"
<</if>>
<br><br>
<<printThought $player "Could we get, like... a meteor impact like... now? I didn't think it was possible to be this embarrassed!">><br>
<br>
You somehow mumble a response and then <<=setup.getNpcName('npc_admin', 'first')>> comes to your rescue like your own personal knight in shining, er, knight in a fitted silk shirt?<br>
<br>
"@@.npc_admin;Yea, so <<if $player.flags.fem_style.name == "">>she's<<else>>he's<</if>> been having a bit of an eventful time since the last time we were in but we thought we'd take a nice night to relax at the old haunt.@@"<br>
<br>
"@@.npc_barkeeper;Well let me thank you for thinking of The Usual Place for such an occasion and express my appreciation of your new look by saying that tonight you drink free. IN fact, let me whip you something up to get started!@@"<br>
<br>
Her hands a blur behind the bar it is but a few moments before you have a pink cocktail sitting in front of you in a slender martini glass.<br>
<br>
"@@.npc_barkeeper;I'll leave you two to your date then.@@"<br>
<br>
<<printThought $player "The way she said that... she sounded kind of sad? And did she briefly glare at me?">><br>
<br>
"@@.npc_admin;Uh, it's not actually a date, date, we're just friends getting together for a drink...@@"<br>
<br>
The feeling of relief coming off <<=setup.getNpcName('npc_barkeeper', 'first')>> is almost palpable, though <<=setup.getNpcName('npc_admin', 'first')>> seems somehow oblivious.<br>
<br>
"@@.npc_barkeeper;Oh, of course, well, let me know if there's ANYTHING I can do for you.@@"<br>
<br>
She winks at <<=setup.getNpcName('npc_admin', 'first')>> and he flashes back with his signature smile.
<<else>>
<<if $npc_date.clothingstyle!="female">>
<<printThought $player "Wait. Does she mean me?">>
<<else>>
<<printThought $player "Wait. Does she mean me? Oh wait... Of course she means me.">>
<</if>>
<br>
Unable to stifle it, <<=ps(setup.getNpcName('npc_admin', 'first'))>> laughter can be heard through the whole bar.<br>
<br>
"@@.npc_admin;Hahahahahaha! Ouch.@@" <<=setup.getNpcName('npc_admin', 'first')>> says looking towards you, grinning like an idiot,
<<if $npc_date.clothingstyle!="female">>
"@@.npc_admin;You should really hit the gym more often man! No, that is <<=$player.first_name>> <<=$player.last_name>>, a good friend of mine.@@" he tells the barkeeper, adding slightly quieter "@@.npc_admin;Who happens to be male.@@"<br>
<br>
<<printThought $player "Dammit, hasn't my masculinity suffered enough lately?">><br>
<br>
"@@.npc_barkeeper;Oh God, I am terribly sorry Mr. <<=$player.last_name>>. Here, let me make it up to you. Your drinks tonight are on the house.@@"<br>
<<else>>
"@@.npc_admin;You kinda ran into that one head on. No, that is <<=$player.first_name>> <<=$player.last_name>>, a good friend of mine.@@" he tells the barkeeper, adding slightly quieter "@@.npc_admin;Who happens to be male. Really.@@"<br>
<br>
<<printThought $player "Normally I call that a huge dent to my masculinity. But let's be real for a second, it's more like a huge boost for my femininity...">><br>
<br>
"@@.npc_barkeeper;Oh God, I am terribly sorry <<=$player.first_name>>. Here, let me make it up to you. Your drinks tonight are on the house.@@"<br>
<</if>>
<br>
You tell her she should not worry too much, mistakes like this do happen and you blame it on the lightning. Privately, however, there's no question your masculinity just took an enormous dent. Fortunately a few drinks and cocktails from <<=ps(setup.getNpcName('npc_barkeeper', 'first'))>> repertoire makes you forget the whole incident pretty quickly.
<</if>>
<br><br>
<<set _text = 'Have some drinks together with '+setup.getNpcName('npc_admin', 'first')+'.'>>
[<<moveTo "event_admin_drink_1_2" _text 2500>>]
</div>/*#
#desc: first time drinking with admin, tries to cheer you up
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<set _stress = setup.removeStress($player,10)>>
<<if $npc_technician.flags.dataservice_encounter.handjob_finish == "">>
<<addItem "card_technician">>
<</if>>
<<set _stress = setup.removeStress($player,10)>>
<<applyFatigue $player 10>>
<</if>>
<<set $player.location to "The Usual Place">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
You enjoy a good night together with your friend <<=setup.getNpcName('npc_admin', 'first')>>. Since you're getting your fill this evening for free you don't even have to worry about money for the evening. You can finally relax and forget about all these troubles you had lately with your work and ... other things.<br>
<br>
You talk to <<=setup.getNpcName('npc_admin', 'first')>>, he asks you about your new position but you kind of evade a direct answer. Ignoring your embarrassed feelings about what has happened you're not actually sure how much you could tell him without getting into trouble so you politely steer things away. You tell him a few details of the rather boring stuff then ask him how things are back down at Cloud Data Service.<br>
<br>
"@@.npc_admin;Well, it is just not really the same without you. Performance has gone up 80%, it looks like the Bosses hair is finally growing back and everyone got a raise.@@"<br>
<br>
You try to object but <<=setup.getNpcName('npc_admin', 'first')>> interrupts you before you can finish that sentence.<br>
<br>
"@@.npc_admin;Relax, I'm joking. Things got boring without you, but the rest is business as usual. Analyzing the shit out of data, looking for patterns, you know the drill. You may be bored up on fifty-two but at least it sounds like you get some human interaction, and let's be real for a moment. Your new Boss, <<=setup.getNpcName('npc_manager', 'other')>> is pretty smoking. I'd love to get to know her better. She seems very confident and that is something I can respect. Plus, have you seen these legs? Man... they reach to the floor and then some! But I'm not allowed into the upper floors and every time I see her down at Cloud Data Service I swear, I stutter like a freshman! Hmmm... you think you can do something?@@"<br>
<br>
<<printThought $player "Oh, oh.">><br>
<br>
You tell <<=setup.getNpcName('npc_admin', 'first')>> that you don't really have that sort of relationship. Besides, you hastily add, she is a very busy woman, and has hardly time for anything as far as you know... which isn't even a lie. You simply left out a few peculiar details.<br>
<br>
<<switch $npc_technician.flags.dataservice_encounter.handjob_finish>>
<<case ''>>
"@@.npc_admin;Yeah, it was a stupid idea to begin with. Things would become awkward, if I really managed to date your manager. Talking about bossy! Oh, that reminds me; that cute gal from the Tech Department has been bugging me for days now asking about you. What was her name again? <<=setup.getNpcName('npc_technician', 'first')>>...<<=setup.getNpcName('npc_technician', 'full')>>. Anyway, when I told her I was going to see you tonight she <<if $npc_technician.flags.dataservice_encounter.asked_for_help>>practically begged<<else>>asked<</if>> me to give you this.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> hands you a card with <<=ps(setup.getNpcName('npc_technician', 'first'))>> private contact information.
<<case 'mouth' 'hand'>>
"@@.npc_admin;Yeah, it was a stupid idea to begin with. Things would become awkward, if I really managed to date your manager. Talking about bossy! Not really much at the office, tho <<=setup.getNpcName('npc_technician', 'first')>>, that cute gal from the Tech Department keeps asking how you're doing. You should give her a ring, she totally has the hots for you!@@"<br>
<br>
<<printThought $player "Not a challenge to guess why...">>
<<case 'fail'>>
"@@.npc_admin;Yeah, it was a stupid idea to begin with. Things would become awkward, if I really managed to date your manager. Talking about bossy! Not really much at the office, tho <<=setup.getNpcName('npc_technician', 'first')>>, that cute gal from the Tech Department keeps asking how you're doing.@@"
<<default>>
ERROR unknown technician dataservice encounter handjob finish: <<=$npc_technician.flags.dataservice_encounter.handjob_finish>>
<</switch>>
<br><br>
"@@.npc_admin;I didn't realise the two of you were close, but looks to me like your game is still pretty much on spot. She told me you should contact her, that she has a few thing she'd like to talk to you about.@@"<br>
<br>
[<<moveTo "event_admin_drink_1_2a" "Chat for a bit" 180>>]
</div>/*#
#desc: theme chatting with admin
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
/%
<<if $npc_admin.date !=1>>
<<set $player.money.total-=20>>
<<set _stress = setup.removeStress($player,10)>>
<</if>>
%/
<<set _nextTheme = setup.getNextForcedTheme('npc_admin')>>
<<if _nextTheme != "">>
<<initRoom>>
<<set $returnPassageTheme = "event_admin_drink_1_2a">>
<<set $returnPassageList = "event_admin_drink_1_2a_details">>
<<set $currentNpcTheme = "_forced">>
<<moveTo _nextTheme>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
<<if setup.getNpcThemes('npc_admin')>0>>
You continue to have a few drinks with <<=setup.getNpcName('npc_admin', 'first')>>, and ponder what to talk about.<br>
<br>
<<if $npc_date.themes < 3>>
<<switch $npc_date.themes>>
<<case 0>>
"@@.npc_admin;You look like you have something to talk about. Come on, hit me. Not physically of course, though it's not like you could hurt me in a thousand years.@@"
<<case 1 >>
"@@.npc_admin;Give me a second, I'll get us more to drink okay? You think of the next topic while you wait for me to return!@@"
<<case 2>>
"@@.npc_admin;Is there even alcohol in this? I don't feel tipsy at all. Don't the two of you agree? Anyway, you were saying? But this time one after another, okay?@@"
<</switch>>
<br><br>
<<printNpcThemeCategory
'npc_admin'
'event_admin_drink_1_2a'
'event_admin_drink_1_2a_details'
>>
<<if $npc_admin.dates == 1>>
[<<moveTo "event_admin_drink_1_2_leave" "Go to the Toilets" 180>>]
<<elseif $npc_admin.dates >= 2 && (!$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition == "Failed"))>>
[<<moveTo "event_admin_talk_gym" "Make yourself ready to leave." 180>>]
<<else>>
[<<moveTo "room_usual_place_inside" "You think you've about had enough to drink for tonight. Maybe it's time to home.">>]
<</if>>
<<else>>
<<if $npc_admin.dates == 1>>
"@@.npc_admin;Well, I don't know about you, but I feel pretty done. I think we better hit the road to get some sleep. Gotta work out tomorrow morning..@@"<br>
<br>
[<<moveTo "event_admin_drink_1_2_leave" "Make yourself ready to leave." 180>>]
<<elseif $npc_admin.dates >= 2 && (!$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition == "Failed"))>>
[<<moveTo "event_admin_talk_gym" "Make yourself ready to leave." 180>>]
<<else>>
[<<moveTo "room_usual_place_inside" "Make yourself ready to leave." 180>>]
<</if>>
<</if>>
<<else>>
You enjoy the rest of the night together with <<=setup.getNpcName('npc_admin', 'first')>> talking about the past and possible futures, what went wrong with all the dreams you had after College, discuss the state of the world and how the war changed everything for everyone. You try not to get into politics, but as the night progresses you fail miserably. After some hours you both decide it's time you head home.<br><br>
<<if $npc_admin.dates == 1>>
[<<moveTo "event_admin_drink_1_2_leave" "Make yourself ready to leave." 180>>]
<<elseif $npc_admin.dates >= 2 && (!$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition == "Failed"))>>
[<<moveTo "event_admin_talk_gym" "Make yourself ready to leave." 2400>>]
<<elseif $npc_admin.stage > 1>>
[<<moveTo "event_admin_drink_1_2_sex_1" "Seductively bite your lip and make eyes at him." 300>>]<br>
[<<moveTo "room_usual_place_inside" "Make yourself ready to leave." 2400 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "room_usual_place_inside" "Make yourself ready to leave." 180 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: admin theme details
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $npc_date.themes >= 3>>
<<initRoom>>
<<moveTo 'event_admin_drink_1_2a'>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
"@@.npc_admin;Whatcha wanna discuss <<=$player.first_name>>?@@"<br>
<br>
<<printNpcThemeDetails
'npc_admin'
$returnPassage
$currentNpcTheme
>>
</div>/*#
#desc: finish drinking with admin
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You decide it'd be a good idea to hit the toilets before going home since it is a 20 minute walk and you don't want any accidents to happen. <<getWordGod $player>> knows the last thing you need right now is getting a ticket for "public indecency" or "indecent exposure".<br>
<br>
[<<moveTo "event_gloryhole_1_1" "Go to the Toilets" 180>>]
</div>/*#
#desc: try to fuck admin after date
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<if $npc_admin.flags.relationship == 'friendswbenefits'>>
<<set $player.location to "The Usual Place, Toilets">>
<<else>>
<<set $player.location to "The Usual Place">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $npc_admin.flags.relationship == 'friendswbenefits'>>
<<createBGR "./images/locations/the_usual_place_toilet.png" >>
<<else>>
<<createBGR "./images/locations/the_usual_place_inside.png">>
<</if>>
<div id="invframe" class="scrolltext">
/%TODOfuture%/
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
You smile and make eyes towards the bathroom and the two of you are soon stumbling into a private stall, fumbling with one another's clothing.<br>
<br>
Unfortunately that's all that's written here for now.
<<case 'boyfriend'>>
As is usually the case when you're in his presence you're feeling VERY horny and you consider whether to try and jump his bones here and now or ask if he'd like to come back to your place.<br>
<br>
Unfortunately neither option has yet been written.
<<default>>
ERROR: unknown npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<br><br>
[<<moveTo "room_usual_place_inside" "Leave.">>]
</div>/*#
#desc: admin picks you up for your date
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $scene.date = {}>>
<<set $scene.date.start = $now>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
Your day at an end <<=setup.getNpcName('npc_admin', 'first')>> enters the office. He's looking a bit nervous... though not as nervous as you are but he quickly adopts a confident facade as he approaches your desk with a smile.<br>
<br>
"@@.npc_admin;Hey, so I managed to get a reservation for tonight... you still want to go on that date?@@"<br>
<br>
The word date hits you like a hammer, a date, with <<=setup.getNpcName('npc_admin', 'first')>>; your oldest friend and after today... something more? You shiver slightly and he raises an eyebrow. "@@.npc_admin;You alright?@@"<br>
<br>
You quickly nod, explaining that the office has just been a little chilly today as you stand up and smile at him.<br>
<br>
He smiles "@@.npc_admin;I ever mention that it's a bit weird you being that tall? I mean, I love a lady in heels, don't get me wrong, but when you know someone for so long it's just strange when they suddenly change height!@@" He pauses for a moment awkwardly "@@.npc_admin;sorry, distracted for a moment there, shall we be off?@@"<br>
<br>
He offers his arm and your heart almost flutters out of your chest. This is really happening!<br>
<br>
<<hint $options "The stakes tonight feel quite high, you'll need to consider your ever choice if you want to thread the needle to spark his interest without scaring him off.">><br>
[<<moveTo "event_admin_first_date_2" "Place you hand on his elbow." 600 "<<set $scene.date.elbow = true>>">>]<br>
[<<moveTo "event_admin_first_date_2" "Just walk next to him." 600 "<<set $scene.date.elbow = false>>">>]
</div>/*#
#desc: manager wishes you and admin well on date
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
/%TODOfuture: two images%/
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
<<if $scene.date.elbow>>
You gently place your hand on his arm, his thick, muscly, manly arm... The two of you start towards the door.
<<else>>
Keeping your hands to yourself you move towards the door, he drops his arm to fall in next to you.
<</if>>
<br><br>
Just as you reach the door you hear a noise behind you, turning to see <<=setup.getNpcName('npc_manager', 'formal')>> standing in the doorway.<br>
<br>
"@@.npc_manager;Best of luck you two, have a lovely evening!@@"<br>
<br>
"@@.npc_admin;That's the plan!@@" he calls back "@@.npc_admin;though that's only if we make our reservation, gotta go!@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and waves as the two of you exit the office and head for the elevator <<if $scene.date.elbow>>arm in arm<<else>>side by side<</if>>.<br>
<br>
Your heart beats faster as you silently travel down the elevator to the parking garage where you get into <<=ps(setup.getNpcName('npc_admin', 'first'))>> car - him driving, of course, and head for the restaurant.<br>
<br>
The rumble of the road can't help but remind you of the fact that you have a <<=setup.getItemName(setup.getItemFromType("plug"))>> in your ass - not exactly the optimal plan to keep you "calm" but with it being "required" for your job and you having no time to change between wrapping up work and <<=setup.getNpcName('npc_admin', 'first')>> picking you up you really had no other options.<br>
<br>
The drive passes fairly quickly and you gawk in surprise when you roll up in front of the building and <<=setup.getNpcName('npc_admin', 'first')>> hands the keys to a valet - it's one of the nicest restaurants in the city and you stare at him in shock as he holds the door for you to head inside.<br>
<br>
"@@.npc_admin;I was planning on something a bit more low-key but <<=setup.getNpcName('npc_manager', 'first')>> messaged me and said that I could use one of reservations - apparently it's an executive perk arrangement or something that they use for wowing clients. Last minute so I'm sure we'll get a pretty crap table but hey, the food is supposed to be amazing!@@"<br>
<br>
You nod,
<<if $scene.date.elbow>>
reflexively placing your hand in the crook of his arm once again as you walk up to the maitre 'd.
<<else>>
walking at his side.
<</if>>
"@@.npc_admin;Party of two, should be under the name <<=setup.getNpcName('npc_manager', 'last')>>?@@"<br>
<br>
You see the man's eye shimmer with the tell-tale sign of a contact-lens projection system. "Ah, very good sir, ma'am, if you would follow me please I will take you to your table." <br>
<br>
[<<moveTo "event_admin_first_date_3" "Arrive at your table." 600>>]
</div>/*#
#desc: admin first date, sit down at your table, vibe goes off
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.plugSize = setup.getItemObjFromType("plug").effect.anal.level>>
<<applyExperience 'humiliation' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'anal' $scene.plugSize 'little' $SEEN_FRIEND>>
<<set $player.timebased.horny = 80>>
<<set $player.timebased.stress += 10>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
The restaurant is even fancier than you had heard and you feel a touch under-dressed in just your work attire.<br>
<br>
Led through the large main room you keep waiting for the maitre 'd to stop at each table only for him to continue past and then turn a corner and open a door to a private room... a private room that is presently setup VERY romantically - a small round table just large enough for two lit by authentic candlelight.<br>
<br>
Sliding into the room the man holds a seat for you.<br>
<br>
Stunned you glance at <<=setup.getNpcName('npc_admin', 'first')>> but he appears just as surprised as you do.<br>
<br>
Handing you each a menu you are momentarily confused by the weird formatting, and lack of price, until he explains. "It is the chef's pleasure to serve you her award-winning tasting menu - eighteen courses of the best food in the city. Feel free to peruse the listing of what is to come, that it may heighten the anticipation." <br>
<br>
Waiting a moment in case you have anything else the Maitre 'd bows and departs, promising that the waiter will be by with your first dish shortly. Looking over the menu you notice that, while the individual items merely have their name and a short description, there IS a price down at the bottom... and it's more than you earn in a month.<br>
<br>
Noting your expression of shock <<=setup.getNpcName('npc_admin', 'first')>> quickly clarifies. "@@.npc_admin;Look I had no idea I mean, yea, I knew this place was a bit fancy but this?@@" he shakes his head. "@@.npc_admin;Our boss is quite the lady, isn't she?@@"<br>
<br>
You nod, then raise your menu for a bit of cover as you try to compose yourself, the combination of the private room and the romantic candlelit atmosphere only amplifying your nervousness.<br>
<br>
Silence fills the room as the two of you read, only to be interrupted by the <<=setup.getItemName($scene.plug)>>
<<if $scene.plugSize > setup.getTotalValue("anal")>>
constantly stretching
<<elseif $scene.plugSize == setup.getTotalValue("anal")>>
perfectly filling
<<else>>
presently occupying
<</if>>
your rear to burst into vibrating life. You gasp, both in surprise and as the intense thrumming against your prostate causes you to leap to a fresh height of humiliated arousal.<br>
<br>
"@@.npc_admin;You ok?@@" He asks as you desperately try not to cry out, hoping that your body is enough insulation to keep him from hearing the buzzing that is still intensely stimulating you.<br>
<br>
"Y-yes" you half-gasp, half whisper. The vibrations instantly cease.<br>
<br>
<<printThought $player "Wait, did <<=setup.getNpcName('npc_manager', 'formal')>> do that on purpose to get me to talk? Are they going to start up again if I'm silent too long?">><br>
<br>
Deciding you don't want to risk finding out you force a smile as you look back up at <<=setup.getNpcName('npc_admin', 'first')>> concerned face.<br>
<br>
"@@.npc_admin;You ok, is something the matter?@@"<br>
<br>
<<printThought $player "This might not be the right time to tell him the truth, that part of my job is being a horny slave with a vibrating butt-plug shoved up her ass...">><br>
<br>
[<<moveTo "event_admin_first_date_4" "Tell him about your butt plug." 600 "<<set $scene.date.vibe = true>>">>]<br>
[<<moveTo "event_admin_first_date_4" "Say you were just excited by one of the items on the menu." 600>>]
</div>/*#
#desc: admin first date, talk about vibe
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<if $scene.date.vibe>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'humiliation' 8 'normal' $INCOGNITO>>
<</if>>
<<set $player.timebased.stress += 10>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
<<if $scene.date.vibe>>
Casually picking your menu back up you reply that you were just surprised by the vibrator in your ass going off.<br>
<br>
You peek around the menu to catch a glimpse of his shocked expression as it takes him several moments to manage to form a reply.<br>
<br>
"@@.npc_admin;No- what? You're fuckin' with me!@@"<br>
<br>
You clarify that you are quite serious, that you are plugged most of the time, in fact; being that it is part of your uniform requirements and work "training." <br>
<br>
"@@.npc_admin;Training? What? I mean, sure, ok I know <<=setup.getNpcName('npc_manager', 'first')>> runs a bit of a... different sort of office but... is this all her responsibility? Did she make you like this?@@"<br>
<br>
<<printThought $player "Uh-oh, I need to get this back on track or my romantic plans are doomed and we're probably both going to be in trouble...">><br>
<br>
[<<moveTo "event_admin_first_date_4_truth" "Tell him the truth... ALL of the truth." 600>>]<br>
[<<moveTo "event_admin_first_date_4_slut" "Pull back, YOU wanted to become a sexy slut." 600>>]
<<else>>
Desperate for cover you glance at the menu at random and explain that you were just surprised to see a mkombelo root dish, you'd heard about it on a cooking show once and it's supposed to be really good.<br>
<br>
You aren't sure if he totally bought your excuse but he nods, then smirks. "@@.npc_admin;So, funny thing about that - it's actually considered an aphrodisiac; one of my cousin's swears by it...@@" His voice trails off "@@.npc_admin;wait, you don't think <<=setup.getNpcName('npc_manager', 'first')>>?@@"<br>
<br>
The two of you quickly agree that it must be a coincidence just as the first of your eighteen courses arrive.<br>
<br>
Though tension remains in the air the both of you are soon distracted by the truely amazing food, each dish beautiful, unique and ranking among the best flavors you've ever tasted<<if setup.getTotalValue("cum") > 15>>well, discounting cum, nothing can ever compare to ambrosia that is creamy nut butter.<<elseif setup.getTotalValue("cum") > 10>>right up there with cum!<<else>>.<</if>><br>
<br>
Keeping you even more on guard is the fact that if you ever fall silent for too long your vibrator will kick back on for a second or two. Nowhere near the brain-melting full power of the first time it is enough to keep you alert... and the conversation rolling.<br>
<br>
Several dishes in and the discussion roams back towards more serious subjects as he asks what your relationship goals are, what spurs your interest in him after being "just friends" for so many years.<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for his big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<<else>>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for more of his big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<</if>>
[<<moveTo "event_admin_first_date_5" "Say you want a big, strong man to protect you." 600 "<<set $scene.date.goal = 'protect'>>">>]<br>
[<<moveTo "event_admin_first_date_5" "Say he's been such a good friend but recently you find yourself wanting something more... something romantic..." 600 "<<set $scene.date.goal = 'romance'>>">>]
<</if>>
</div>/*#
#desc: admin first date, tell the truth
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<set $npc_admin.flags.knowManagerTruth = 2>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
Once you start telling him the truth you can't seem to stop, he sits wide-eyed as you explain everything that has happened to you, from the "accident" to your re-employment to every transformation that you've gone through since and, especially <<=ps(setup.getNpcName('npc_manager', 'formal'))>> central role in all of it.<br>
<br>
He sits in shock as you are finally interrupted by a waiter arriving with the first course of your meal, the two of you eating in relative silence as he tries to process, only occasionally breaking to ask a clarification or confirm that he didn't misremembered and that your fantastical, perverted tale really happened.<br>
<br>
"@@.npc_admin;So <<=setup.getNpcName('npc_manager', 'first')>>, sorry "<<=setup.getNpcName('npc_manager', 'formal')>>" is part of some sort of company-wide conspiracy to... what? Turn people into bimbofied, sissy sex slaves?@@"<br>
<br>
You shrug, not having any idea what the end "goal" is, or even how vast the conspiracy really is.<br>
<br>
"@@.npc_admin;Wow, sorry, I... well this puts everything into a new light but...@@" He takes a deep breath. "@@.npc_admin;You're my friend, my bro and well... I gotta stand up against this; next time I'm in the office I'm going to march up to <<=setup.getNpcName('npc_manager', 'first')>> and - well, to be honest I'm not quite sure what happens next but I'm going to put a stop to this!@@"<br>
<br>
<<printThought $player "Oh shit, even after everything I said he doesn't get what he's getting into. If I don't stop him...">><br>
<br>
[<<moveTo "event_admin_first_date_failed" "Remain silent." 3600>>]<<hint $options "This could have dire effects for your friend, and your relationship.">><br>
[<<moveTo "event_admin_first_date_4_slut" "Try to convince him that a head-on confrontation is a bad idea." 60>>]
</div>/*#
#desc: admin first date, tell the truth
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
You hurriedly clarify that sure, <<=setup.getNpcName('npc_manager', 'formal')>>, or <<=setup.getNpcName('npc_manager', 'Director')>> as you state to him (a title that feels somehow wrong on your lips), may have a bit of a unique management style all she's doing is opening the door for you to embrace becoming the horny slut your prior fears and delusions about purity had been keeping you from.<br>
<br>
He still seems a bit suspicious but you finally manage to put him at ease as you point out how long he's known you and the contrast between your dumpy dead-end, non-sexual "monogamous" relationship with your ex and your new, vibrant self. Also the fact that he's fucking your boss and didn't see anything wrong with that, sexist double standard!<br>
<br>
"@@.npc_admin;Heh, I guess when you put it that way... Alright, my best friend is a horny slut who likes dressing like a bimbo and walking around with plug stuffed up her ass... Not my thing but sure, I guess I can get that.@@"<br>
<br>
You smile and point out that the plug is just for training and there are other... things that you much prefer feeling deep inside your holes... either of your holes.<br>
<br>
He shifts a bit awkwardly in his seat as you grin, a waiter arriving with another course providing him with a welcome distraction.<br>
<br>
"@@.npc_admin;Food! Yes, wonderful..@@"<br>
<br>
The two of you eat in silence as you ease back a bit on the sex-pot gas pedal, quietly enduring the plug in your ass turning back on as you wait for him to restart the conversation.<br>
<br>
"@@.npc_admin;So, leaving aside our individually... unique relationships with our mutual boss... What are you looking for from me? I mean she seems to be going turbo-speed matchmaker, and you've certainly been coming on to me hard but... what is it that you actually want?@@"<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for his big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<<else>>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for more of his big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<</if>>
[<<moveTo "event_admin_first_date_5" "Say you want a big, strong man to protect you." 600 "<<set $scene.date.goal = 'protect'>>">>]<br>
[<<moveTo "event_admin_first_date_5" "Say he's been such a good friend but recently you find yourself wanting something more... something romantic..." 600 "<<set $scene.date.goal = 'romance'>>">>]
</div>/*#
#desc: admin first date, tell the truth
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
/%TODOfuture: add evil bob confrontation scene%/
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
You remain silent as you watch the wheels in his head spin as he considers how to "save" you.<br>
<br>
Strangely, though the rest of the meal passes with hardly any additional discussion, your plug remains strangely silent, an initial relief that eventually becomes something more ominous.<br>
<br>
Distracted from properly enjoying the meal you eventually reach the end of the nigh-endless courses and he drives you home, promising as he drops you off that he'll "@@.npc_admin;take care of things.@@"<br>
<br>
You nod and wave good-bye before heading up to your flat.<br>
<br>
[<<moveTo "room_foyer" 'Home' 1800>>]<br>
[<<moveTo "event_admin_first_date_1" "No, this is a mistake, this isn't how I wanted things to go at all..." 300 "<<set $now = $scene.date.start>><<set $scene.date = {}>>">>]
</div>/*#
#desc: admin first date, talk about goals for relationship
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
/%TODOfuture: booze%/
<<if $scene.date.goal == 'cock'>>
<<applyExperience 'penis' 15 'terrible' $ALONE>>
<<applyExperience 'bimbofication' 13 'terrible' $ALONE>>
<</if>>
<<set $player.timebased.stress += 10>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.date.goal>>
<<case 'cock'>>
Maybe it's the wine that loosens your tongue - you each get a new glass with each dish and, though only partially full, you can feel it adding up. Then again, maybe you are just a gigantic slut as you find yourself
<<if $npc_admin.flags.sucked_for_manager != "">>
blurting that you want more of his big cock, that your earlier taste only made you more hungry to feel him inside of you.<br>
<br>
He blinks in surprise then smirks, a roguish grin you've seen often in bars and the like… though never with yourself as the target. "@@.npc_admin;Damn, you nasty! Though... I can't say I didn't quite enjoy the one hole I've tried...@@"
<<else>>
blurting out that you're desperate for his big cock - that you barely resisted back in the office but you can't wait to get him alone and inside of you. <br>
<br>
He blinks in surprise then smirks, a roguish grin you've seen often in bars and the like… though never with yourself as the target. "@@.npc_admin;Damn, you nasty! Though... I can't say I'm normally one to turn down a girl throwing herself at me…. Though I suppose you know that.@@"
<</if>>
<br><br>
Interrupted by the waiter arriving with another round you each polish off your elegantly plated, delectable portions before resuming the conversation.<br>
<br>
"@@.npc_admin;Speaking of your attraction... what brought this all on? Like, when did it start? Maybe it was just you being a bit of a sop for your ex and such but back before I never really got the impression that you were into me?@@"<br>
<br>
[<<moveTo "event_admin_first_date_6" "Confess you've always lusted after him." 600 "<<set $scene.date.gay = true>>">>]<br>
[<<moveTo "event_admin_first_date_6" "Say you previously saw him as a friend but now that you're a woman you'd like to think of him as something more." 600 "<<set $scene.date.gay = false>>">>]
<<case 'protect'>>
You flutter your eyelashes and state that you're looking for a big... strong man to be your night and shining armour...<br>
<br>
<<if $npc_admin.flags.martial_arts_level > 0>>
"@@.npc_admin;Oh? Is that why you've shown the sudden interest in finally learning some martial arts?@@"
<</if>>
His tone turns serious"@@.npc_admin;Is there something you need protection from? I've been trying to roll with all these changes you've been making, even if some of them are a bit shocking but, if any of this is being forced, if you're acting out of fear... You can tell me.@@"<br>
<br>
<<printThought $player "Hmm, this is dangerous territory. Sure he works for Social Interaction Services now but... is he allowed to know this sort of thing... and how is he going to react if I tell him?">><br>
<br>
[<<moveTo "event_admin_first_date_5_1" 'Explain that you are doing all of this because you want to...though you do enjoy a bit of "forced" play from time to time....' 600>>]<br>
[<<moveTo "event_admin_first_date_4_truth" "Break down and tell him the truth about everything." 600>>]<br>
<<case 'romance'>>
Your heart racing you nervously explain that well, while you know he tends more towards casual relationships you have real feelings for him and would like to pursue something more... serious, as well as physical.<br>
<br>
He takes almost an entire course in thought before answering, a bit of nervousness once again tinging natural bravado. "@@.npc_admin;I- I think I might like that. I mean, shit, you're one of my oldest friends, one of the only people I can relax and be myself around and, well, I guess that feeling's mutual, huh?@@" He grins and you blush.<br>
<br>
"@@.npc_admin;It's kind of hard, now, thinking back, trying to untangle memories, if I should have noticed something before, or am I just reading into normal stuff? Anyway I guess that raises the next question - when where did these feelings come from? I mean back before I thought you were attracted to girls, same as me. Then again you never did have sex with that hot ex of yours so... yea, were you always feeling this way and just never made a move until now?@@"<br>
<br>
[<<moveTo "event_admin_first_date_6" "Confess you've always loved him." 600 "<<set $scene.date.gay = true>>">>]<br>
[<<moveTo "event_admin_first_date_6" "Say you thought of him as a friend before but now that you're a woman you'd like to see him as more." 600 "<<set $scene.date.gay = false>>">>]
<<default>>
ERROR: unexpected scene.date.goal: <<=$scene.date.goal>>
<</switch>>
</div>/*#
#desc: tell admin the truth
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<set $player.timebased.stress += 10>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
Realizing that you're near a precipice you quickly pull back... by explaining things away that no, you really have discovered that you are a sexy, feminine slut. Sure <<=setup.getNpcName('npc_manager', 'formal')>>, though you refer to her as "@@.npc_manager;<<=setup.getNpcName('npc_manager', 'Director')>>@@" despite how weird such feels, may encourage things but, hell, he's fucking her at work so he is hardly one to talk!<br>
<br>
"@@.npc_admin;Point taken, I suppose.@@" Futher conversation gets put on hold as the next course comes along and the two of you dig in to another delicious culinary creation.<br>
<br>
After cleaning his plate he finally leans back and nods to signal that he's ready to continue the discussion.<br>
<br>
"@@.npc_admin;So, you've said what you're looking for but... why?, Or I guess I should say, when? How long have you been nurturing these feelings about me?@@"<br>
<br>
[<<moveTo "event_admin_first_date_6" "Confess you've always had a crush him." 600 "<<set $scene.date.gay = true>>">>]<br>
[<<moveTo "event_admin_first_date_6" "Say you thought of him as a friend before but now that you're a woman you'd like to see him as more." 600 "<<set $scene.date.gay = false>>">>]
</div>/*#
#desc: admin first date, talk about your past feelings
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<set $player.timebased.stress += 10>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
<<if $scene.date.gay>>
You explain that you've had feelings for him for a long time that before, when he thought you were a guy, you kept them hidden since you knew he was straight but now... You blush and look away, thankful for the waiter's seemingly perfect timing in bringing another course and buying time for the both of you to think as you eat.<br>
<br>
"@@.npc_admin;Damn, that's...@@" He trails off as you finish eating and the silence lingers. You silently grit your teeth as the vibrations in your ass resume, dammit, you need to let him talk first!<br>
<br>
Without knowing your private torment of pleasure he slowly examines his plate as if hoping to find some bit of food he missed but it is already picked clean of its exotic morsels. "@@.npc_admin;Sorry, I mean, now, with you coming out as your true self I'm seeing you different but before... Don't get me wrong, I got nothing wrong with dudes but, well, I'm straight so even if I didn't know at the time, the idea that you were romantically attracted me when we were both behaving like you were a guy is well... kind of weird feeling.@@"<br>
<br>
"@@.npc_admin;Sorry, guess that's probably not what you want to hear but relationships are built on honesty, y'know? And the idea that you were harboring this secret crush for so long is just... yea.@@"
<<else>>
You explain that these intense feelings are a recent thing. Maybe it's due to him being a real rock of stability and comfort in the turmoil of breakup and job-change, or just that he's such an awesome dude but whatever it is you've fallen for him, hard.<br>
<br>
"@@.npc_admin;Well, I am pretty awesome.@@" He jokes with a smile and a stereotypical flex.<br>
<br>
You both laugh as another course arrives, polishing off the artfully arranged morsels before continuing.<br>
<br>
"@@.npc_admin;On a serious note though... I get it, I mean it makes sense, y'know? And, well... I'd be lying if I haven't found myself seeing you a bit different of late too...@@" As he trails off and silence descends on the room the vibrations in your rear softly resume.
<</if>>
<br><br>
You take advantage to greet the waiter, letting out a small sigh of relief when the vibrations stop.<br>
<br>
Enquiring as to the location of the bathroom you tell <<=setup.getNpcName('npc_admin', 'first')>> that you'll be right back.<br>
<br>
"@@.npc_admin;You better! According to this we're coming up on dessert - soon you'll have competition for the sweetest thing in the room!@@"<br>
<br>
You roll your eyes at the corny line even as it sets your heart aflutter.<br>
<br>
[<<moveTo "event_admin_first_date_7" "Head for the lady's room." 600>>]
</div>/*#
#desc: admin first date intermission - bathroom
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<applyExperience 'bdsm' 13 'normal' $ALONE>>
<<if $scene.date.vibe || $scene.date.goal == 'cock'>>
<<set $scene.date.verdict = 'slut'>>
<<elseif $scene.date.goal == 'romance' && !$scene.date.gay>>
<<set $scene.date.verdict = 'perfect'>>
<<else>>
<<set $scene.date.verdict = 'other'>>
<</if>>
<</if>>
<<set $player.location = "Bathroom at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner_bathroom.png">>
<div id="invframe" class="scrolltext">
Plug wiggling with each step the vibrations kick back on halfway to the bathroom and you almost stumble, practically diving past the attendant faster than they can hold the door before plopping down in one of the wood-panelled stalls and latching the door.<br>
<br>
"Please stop, please stop" you whisper, raising the volume until the tormenting chaperone in your ass finally falls still.<br>
<br>
Taking a deep breath you try to compose yourself. As wonderful as the food has been this evening has been a trial and you have a feeling that once you return to the table <<=setup.getNpcName('npc_admin', 'first')>> will be delivering the verdict.<br>
<br>
<<switch $scene.date.verdict>>
<<case 'slut'>>
Thinking about it you can come to no other conclusion that you've come off like a slut. On the one hand, despite his occasional surprise, he hasn't seemed particularly off-put... then again you doubt you've convinced him to see you as a romantic partner, just a sexual one.
<<case 'perfect'>>
Thinking back you can't think of a way you could have done better. You've tried to be honest about your feelings for him while avoiding some of the more... extreme facts about your life to date and you find yourself feeling hope, like this could actually work out between the two of you.
<<case 'other'>>
On balance you can, at best, call things mixed. You haven't said anything too brain-dead but you also note a time or two where he seemed momentarily put off. Definitely not what you might have hoped, or what <<=setup.getNpcName('npc_manager', 'formal')>> instructed you to do as you feel like your relationship will end up continuing as it is... only perhaps a bit more awkward for your having tried and failed.
<<default>>
ERROR: unknown scene.date.verdict: <<=$scene.date.verdict>>
<</switch>>
<br><br>
As you sit, lost in thought you are suddenly interrupted as your rear explodes in pain, the intermittent vibrations that you had started to become a bit accustomed to instead a potent joke of electrified pain.<br>
<br>
You squeak in stifled pain, looks like you've sat long enough, time to go back to <<=setup.getNpcName('npc_admin', 'first')>>...<br>
<br>
[<<moveTo "event_admin_first_date_8" "You're satisfied with your choices, now to see what his decision is." 600>>]<br>
[<<moveTo "event_admin_first_date_7_reset_1" "No, this can't be real, maybe if you just sit here and wait it will turn out to have all been a dream?" 600>>]
</div>/*#
#desc: admin first date reset/retry
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<applyExperience 'bdsm' 18 'terrible' $ALONE>>
<</if>>
<<set $player.location = "Bathroom at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner_bathroom.png">>
<div id="invframe" class="scrolltext">
Your body shakes as the painful electricity amplifies. When you still fail to rise the vibrations kick in as well, what had once been teasing pleasure now only cranking your torment up to another level, overwhelming sensations coursing through your body as you start to shake and spasm.<br>
<br>
Losing your balance you fall off the toilet onto the elegant marble floor below, still bucking and twitching as everything goes dark...<br>
<br>
[<<moveTo "event_admin_first_date_7_reset_2" "Let's try that again..." 600>>]
</div>/*#
#desc: admin first date alt intro for retryreset/retry
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You wake with a start to find yourself back in your office, a sound in front of you alerting you to <<=setup.getNpcName('npc_admin', 'first')>> making his entrance.<br>
<br>
<<printThought $player "What? Was it just a dream? Hmm, let's try to do it RIGHT this time...">><br>
<br>
[<<moveTo "event_admin_first_date_1" "Start over..." 0 "<<set $now = $scene.date.start>><<set $scene.date = {}>>">>]
</div>/*#
#desc: admin first date finale
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<set $npc_admin.stage = 2>>
<<switch $scene.date.verdict>>
<<case 'slut'>>
<<set $player.timebased.stress -= 50>>
<<set $npc_admin.flags.relationship = 'friendswbenefits'>>
<<case 'perfect'>>
<<set $player.timebased.stress -= 70>>
<<set $npc_admin.flags.relationship = 'boyfriend'>>
<<case 'other'>>
<<set $player.timebased.stress -= 40>>
<<set $npc_admin.flags.relationship = 'friend'>>
<</switch>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fancy_dinner.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
As soon as you pull yourself to your feet the electricity torturing your prostate ceases, leaving you sensitive and out of breath, but better able to focus. Fixing yourself up in the mirror your head back, walking quickly through the hallway and mumbling to yourself in homes of forestalling any further vibrations.<br>
<br>
You step through the door into the private room and <<=setup.getNpcName('npc_admin', 'first')>> turns to you with a grin. "@@.npc_admin;Insert cliche about women and bathrooms,@@" he jokes "@@.npc_admin;come on, they just brought dessert and well...@@"<br>
<br>
You walk around him to take your seat and see what he means - an exquisite chocolate cake in the shape of a heart accented with berries and syrup sits at the centre of the table, a single dish to be shared looking delicious, decadent and oh-so-appetizing.<br>
<br>
<<switch $scene.date.verdict>>
<<case 'slut'>>
You sit down and grab a fork, eagerly taking the first bite, the explosion of sweet flavors making your eyes practically roll back as the moist cake practically bursts inside your mouth.<br>
<br>
"@@.npc_admin;Eager slut, aren't you?@@" He states with a grin.<br>
<br>
Hearing that word in his voice makes you shudder, but it's true, there's no way you can deny it.<br>
<br>
"@@.npc_admin;I gotta say, if you told me my bashful friend would turn into this well...@@" he takes his first bite, momentarily surprised at the same wonderful flavor you are ravenously enjoying. "@@.npc_admin;Yowza, that is good! Anyway, yea, you're a slut, a hot sex-hound of a woman and while I don't quite consider that romance material... well, I wouldn't mind fucking your brains out from time to time.@@"<br>
<br>
In any other moment you'd be eager to take him up on that offer right then and there but the dessert... each bite tastes better than the last, the two of you somehow finding space for every crumb until you're both well and truely stuffed.<br>
<br>
Leaning back with a smile you both sigh. For the first time silence lingers without being interrupted by your plug coming to life and, after letting the heavy meal settle for a few minutes you rise to leave.
<<case 'perfect'>>
You stare in awe at the beautiful dessert, almost hesitant to cut into it when <<=setup.getNpcName('npc_admin', 'first')>> beats you to it, grabbing a forkful and leaning across the table to offer it to you with a smile.<br>
<br>
Your lips part, time slowing down for the romantic gesture as you close your mouth around the bite. An explosion of thoughts and feelings go through you and yet somehow the otherworldly flavour wins out.<br>
<br>
"You have to try this!" you exclaim waiting with bated breath as he takes a bite for his own, the same euphoric realization blossoming across his face.<br>
<br>
"@@.npc_admin;Oh my god- this is@@" any further words are cut off you grab a fork of your own and you both dive in, each bite somehow better than the last as you consume the entire thing, somehow finding space on top of the large meal you have already enjoyed.<br>
<br>
Several minutes pass in silence as you recover - with your plug staying thankfully still when he finally speaks "@@.npc_admin;Wow, that... wow.@@" Smiling gently he reaches across the table, taking your hand in his own, your slender fingers almost disappearing inside his large fist.<br>
<br>
"@@.npc_admin;So tonight... tonight has been amazing, in a number of ways! I dunno how we could possibly top a date like this but...@@" You hold your breath, eagerly waiting for what is about to come next "@@.npc_admin;you said before that you found yourself falling for me and well... the feeling is mutual. I didn't understand it at first, especially before you came out that was... well, those were some weird feelings but now...@@" He reaches out to cup your face and you nuzzle into his hand.<br>
<br>
"@@.npc_admin;Well, I'd like to see where this thing takes us. It's been quite the last few months, for both of us but well... I can't think of anyone I'd rather have with me going forward.@@"<br>
<br>
You almost wish you could freeze this perfect moment forever but time lingers forward eventually, the stillness broken when you both release held breaths.<br>
<br>
"@@.npc_admin;So, I, uh... guess we should be heading out? I'll drop you off at your flat, alright? I'd offer to take you home but after that meal... well, I'm going to have the meat sweats something fierce I feel and I'd hate to drive you off so soon!@@"<br>
<br>
You laugh, happy to see that the same friendly sense of humor that brought you together way back when is still there as you rise to your feet and, arm in arm, leave the room.
<<case 'other'>>
Sitting down for dessert you both dig in at the same time, eyes going wide in amazement at the plethora of heavenly flavors that explode from the first bite.<br>
<br>
Wordlessly you both find a second wind, the large meal just consumed forgotten as you rush to eat the entire dessert, every bite somehow tastier than the last neither of your forks stopping until every last crumb and smear of syrup has been eaten.<br>
<br>
"@@.npc_admin;Wow that... that was something else...@@"<br>
<br>
You nod slowly, feeling stuffed - and not just by the plug sitting thankfully still inside your rear.<br>
<br>
"@@.npc_admin;Anyway, to the reason we were given this wonderful meal...@@" he sighs and you brace yourself for what you already knew he was going to say. "@@.npc_admin;Now that you've explained how you feel well... I think you're a wonderful girl, and one of the best friends I've ever had but... well, that's as far as it goes. I just don't feel the spark or whatever that would pave the way for a deeper relationship but still friends... right?@@"<br>
<br>
You hide your disappointment and nod, reaching across the table to shake hands firmly and repeat - "friends." <br>
<br>
"@@.npc_admin;Great, well, hopefully that can any of the weird stuff going on between us... anyway I think it's about time to go, come on, I'll drive you home.@@"
<<default>>
ERROR: unexpected scene.date.verdict <<=$scene.date.verdict>>
<</switch>>
<br><br>
The walk back through the restaurant feels quite different than your entrance as you feel emotionally lighter but physically much more full, though satisfied on both counts.<br>
<br>
The valet already there with his car by the time you step outside he drives you home, pulling into the parking garage you almost forgot existed before walking you up to your flat.<br>
<br>
[<<moveTo "event_admin_first_date_9" "Finish date, he takes you home." 1800>>]
</div>/*#
#desc: admin first date, he takes you home
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<if $scene.date.verdict == 'slut'>>
<<applyExperience 'bimbofication' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_FRIEND>>
<<elseif $scene.date.verdict == 'perfect'>>
<<applyExperience 'feminization' 18 'very' $SEEN_FRIEND>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_25'
0
'event_psychiatrist_session_admin_first_date'
false
'theme_psychiatrist_admin_header'
>>
<</if>>
<<set $player.location = "Apartment hallway">>
<<include enterroom>>
<<initRoom>>
<<if $scene.date.verdict == "other">>
<<createBGR "./images/locations/flat_hallway_01.png">>
<<else>>
<<createBGR "./images/locations/flat_hallway_01.png" "./images/characters/npc_admin.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.date.verdict>>
<<case 'slut'>>
Parking in the visitor area he walks you up to your flat, stopping just outside your door to turn to face each other. A heartbeat passes as you wonder if he's going to kiss you, only for him to do one better. Scooping you into the air with ease he squeezes your ass with one hand as his lips hungrily meet your own.<br>
<br>
Your back against the door you melt into him, moaning as he kisses down towards your neck, one finger teasing your plug as you wrap one leg around him.<br>
<br>
The intense make-out session lasts for less than a minute before he lowers you to the ground. "@@.npc_admin;Until next time, slut. I can't wait to feel the inside of that ass but right now I'm way too full to possibly do it justice.@@"<br>
<br>
Heart pounding and out of breath you just nod, wobbling slightly as you steady yourself against the doorframe and watch him walk up the hallway to the elevator.<br>
<br>
He flashes a final wave before the elevator doors close and he disappears leaving you to stagger into your flat.
<<case 'perfect'>>
Pulling into a parking space he zips around the car to hold the door for you with a smile as you gracefully emerge.<br>
<br>
"@@.npc_admin;So, I half want to scoop you up and carry you home but... well, this IS only a first date...@@"<br>
<br>
You blush and he grins, walking arm in arm to the elevator where he pulls you closer, arm around your shoulder making you feel safe while almost putting a lie to the whole "not carrying you" thing.<br>
<br>
Arriving at your apartment door you turn to face one another, just smiling at each other for several long seconds before he pulls you in for a kiss. Passionate, but gently you feel like the perfect, delicate girl compared to his strong, yet tender, masculinity, melting in his grasp as the kiss lingers and then softly parts.<br>
<br>
"@@.npc_admin;Goodnight, my dear. I'd ask to stay over but... well, at this point I am too full to do anything but crash besides... that leaves something special for our next date, right?@@"<br>
<br>
You blush, smile and nod all at once, throwing your arms around him again in a hug as if to confirm that yes, this is actual reality before sighing in contentment and waving him goodbye.<br>
<br>
You stand in the doorway until the elevator doors close and his waving figure disappears and then, with a smile on your pretty face, head into your flat.
<<case 'other'>>
He drops you off with a wave before speeding off. You sigh, one hand on your swelled stomach <<if setup.getItemFromType("corset") != "">>even your corset not quite up to the task of holding back your large meal<<else>>feeling well and truely stuffed<</if>>.<br>
<br>
Finding the elevator you head up to your flat.
<<default>>
ERROR: unexpected scene.date.verdict <<=$scene.date.verdict>>
<</switch>>
<br><br>
[<<moveTo "event_admin_first_date_10" "Home." 600>>]
</div>/*#
#desc: admin first date, he takes you home
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange==true>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' $scene.plugSize 'little' $SEEN_FRIEND>>
<<set $player.timebased.horny = 10>>
<<set _panties = setup.getItemFromType("panties")>>
<<changeItemStatus _panties 'cum' '["set",100]'>>
<</if>>
<<set $player.location = "Foyer">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
In the privacy of your flat you try to catch your breath, replaying the date in your head, half wondering if it was actually some sort of <<switch $scene.date.verdict>><<case 'slut'>>sexy <<case 'perfect'>>perfect <</switch>>dream...<br>
<br>
You are interrupted from your reminiscing by your phone rining, it's <<=setup.getNpcName('npc_manager', 'formal')>>!<br>
<br>
<<switch $scene.date.verdict>>
<<case 'slut'>>
"@@.npc_manager;Hello, <<=$player.first_name>>, I just wanted to congratulate you on sorting out all that tension with <<=setup.getNpcName('npc_admin', 'other')>>; it is quite the feat to convince such an old friend to accept one's transformation from boring prude to eager slut but you pulled it off, good girl and good luck with his cock, I can tell you from experience that it is just a wonderful size, and him an expert with it!@@"
<<case 'perfect'>>
"@@.npc_manager;Hello, <<=$player.first_name>>... or should I say Mrs. <<=setup.getNpcName('npc_admin', 'last')>>?@@" she laughs, "@@.npc_manager;hmm, probably still a bit soon for that but still! Congratulations on taking your relationship to a new level! It makes me so pleased that two of my most valued employees have found their way to happiness... though you should remember to not let your new relationship get in the way of your duties as my secretary.@@"
<<case 'other'>>
"@@.npc_manager;Hello, <<=$player.first_name>>, I just wanted to check in after your date. I suppose one might say it could have gone better but at least you know where you stand and can move forward. In some ways it is almost a positive as you will not have to worry about a relationship interfering with the pursuit of your career and advancement as my perfect SISSY secretary.@@"
<<default>>
ERROR: unexpected scene.date.verdict <<=$scene.date.verdict>>
<</switch>>
<br><br>
It takes you a moment but you realize that what she said... there's no way she could have known that much detail about your date and you ask if <<=setup.getNpcName('npc_admin', 'first')>> called her?<br>
<br>
"@@.npc_manager;What? No.@@" There is a moment of silence followed by laughter "@@.npc_manager;oh!, You silly girl! The room you two were in? It's bugged harder than a foreign embassy, how do you think I was able to time all that "encouragement" for you? After all, it is a manager's job to keep track of her property and you, my sweet, sissy slave, are becoming quite the valuable trophy...@@"<br>
<br>
Speechless at the violation you only distantly hear as she wishes you a "@@.npc_manager;good evening. Oh, and for a final reward...@@" you gasp as your plug explodes with vibrations, almost dropping your phone as the powerful stimulation overtakes your body. You gasp and fall against the door, moaning in orgasm as you slowly sink to the ground.<br>
<br>
"@@.npc_manager;Mmm, you make such lovely sounds when you analgasm... Well, I shall leave you to it. See you in the morning!@@"<br>
<br>
She hangs up and you fumble your phone away as you try to catch your breath, sitting in your cum-soaked panties.
<br><br>
[<<moveTo "room_foyer" "Put your phone away." 0>>]
</div>/*#
#desc: meet admin to workout before work
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<removeEvent 'event_admin_morning_visit'>>
<<removeEvent 'event_admin_morning_workout_call'>>
<<if $npc_admin.flags.ageofconfusion>>
<<applyExperience 'strength' 6 'almost' $SEEN_STRANGER>>
<<else>>
<<incrementEmotion 'affection' 'npc_admin' 3>>
<<if $npc_admin.flags.nextWorkout == "" || $npc_admin.flags.nextWorkout.toDateString() == $now.toDateString()>>
<<set $npc_admin.flags.consecutiveWorkouts += 1>>
<<else>>
<<set $npc_admin.flags.consecutiveWorkouts = 1>>
<</if>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate to setup.setNextDate($now, 1, 7, 10)>>
<<case 5>>
<<set _nextDate to setup.setNextDate($now, 3, 7, 10)>>
<<case 6>>
<<set _nextDate to setup.setNextDate($now, 2, 7, 10)>>
<</switch>>
<<set $npc_admin.flags.nextWorkout to _nextDate>>
<<if $npc_admin.flags.consecutiveWorkouts >= 5 && $npc_admin.stage < 2>>
<<addEvent 'event_admin_morning_workout_call'
'{"trigger":"always","type":["date"],"priority":100}'
'{"szene":"event_admin_morning_text"}'
_nextDate
>>
<</if>>
<</if>>
<<set _gymStart = setup.setNextDate($now, 0, 7, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_gymStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<clothSetToInventory 'Office Clothes'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<if $npc_admin.flags.ageofconfusion>>
<<createBGR "./images/locations/gym_weights.png">>
<<else>>
<<createBGR "./images/locations/gym_weights.png" "./images/characters/npc_admin_training.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.ageofconfusion>>
On your way to the gym you send a text to <<=setup.getNpcName('npc_admin', 'first')>> asking to meet to work out but you get no response. Unfortunately you arrive to find no sign of your friend.<br>
<br>
<<printThought $player "Damn, I really need to talk to him, if he's skipping workouts he must be really freaked out...">><br>
<br>
You try to go through the workout on your own but you're pretty sure you forgot a few parts and it overall only serves to further remind you of the painful fact that the big guy isn't around.<br>
<br>
You finish the workout but don't feel particularly accomplished or anything.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<else>>
You shoot off a text and get a thumbs up in response and you pack your work clothes to change later and head out in your gym attire to meet <<=setup.getNpcName('npc_admin', 'first')>> at <<printShopName 'gym'>>.<br>
<br>
Finding him with the weights, of course, he's already got stuff racked for his first set, smiling in greeting as you head over to join him.<br>
<br>
<<if $npc_admin.stage < 2>>
<<switch $npc_admin.flags.consecutiveWorkouts>>
<<case 1>>
"@@.npc_admin;Bro! Glad you could make it in, I know the first time back can be the toughest but just stick with it, consistency is key!@@"
<<case 2 3>>
"@@.npc_admin;Love to see you back in the gym regular-like, just gotta keep consistent now.@@"
<<case 4>>
"@@.npc_admin;I'm lovin' your consistency the past week or so, much more of this and I'm going to start relying on you just being here always!@@"
<<default>>
"@@.npc_admin;I love how dedicated you've been at working out. It's getting to be a real comfort knowing you're going to be here for me every day. I'd be a bit concerned if you missed a day!@@"<br>
<br>
<<printThought $player "This is my shot, if I skip the next workout he's sure to react and... maybe come check on me?">>
<</switch>>
<<else>>
"@@.npc_admin;Bro! Glad you could make it, ain't nothing like a pump to start the day, I was just starting my work set, throw me a spot.@@"
<</if>>
<br><br>
[<<moveTo "event_admin_gym_morning_2" "Just lift with him." 1800 "<<set $scene.flirt=false>>">>]<br>
<<if $npc_admin.flags.sawHimfuckingManager>>
[<<moveTo "event_admin_gym_morning_2" "Flirt with him while you work out." 1800 "<<set $scene.flirt=true>>">>]
<<else>>
[@@.link_locked;You don't feel comfortable with the idea of flirting with <<=setup.getNpcName('npc_admin', 'first')>> while you work out.@@]
<</if>>
<</if>>
</div>/*#
#desc: admin picked you up at home to workout together
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<clothSetToInventory 'Office Clothes'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png" "./images/characters/npc_admin_gym.png">>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_admin', 'first')>> rush the gym and head straight for the weights. It's going to be a bit tight to fit in a whole routine before you head to work, but if you focus, you can probably pull it off.<br>
<br>
[<<moveTo "event_admin_gym_morning_2" "You've distracted him enough this morning, just focus on lifting." 60 "<<set $scene.flirt=false>>">>]<br>
<<if $npc_admin.flags.sawHimfuckingManager>>
[<<moveTo "event_admin_gym_morning_2" "Flirt with him while you workout." 60 "<<set $scene.flirt=true>>">>]
<</if>>
</div>/*#
#desc: already at gym when you meet admin to workout before work
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $npc_admin.flags.ageofconfusion>>
<<applyExperience 'strength' 6 'almost' $SEEN_STRANGER>>
<<else>>
<<incrementEmotion 'affection' 'npc_admin' 3>>
<<if $npc_admin.flags.nextWorkout == "" || $npc_admin.flags.nextWorkout.toDateString() == $now.toDateString()>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set $npc_admin.flags.nextWorkout to setup.setNextDate($now, 1, 0, 0)>>
<<case 5>>
<<set $npc_admin.flags.nextWorkout to setup.setNextDate($now, 3, 0, 0)>>
<<case 6>>
<<set $npc_admin.flags.nextWorkout to setup.setNextDate($now, 2, 0, 0)>>
<</switch>>
<<set $npc_admin.flags.consecutiveWorkouts += 1>>
<<else>>
<<set $npc_admin.flags.consecutiveWorkouts = 0>>
<</if>>
<<if $npc_admin.flags.consecutiveWorkouts >= 5>>
TODO add event
<</if>>
<</if>>
<<set _gymStart = setup.setNextDate($now, 0, 7, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_gymStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<clothSetToInventory 'Office Clothes'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<if $npc_admin.flags.ageofconfusion>>
<<createBGR "./images/locations/gym_weights.png">>
<<else>>
<<createBGR "./images/locations/gym_weights.png" "./images/characters/npc_admin_training.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.ageofconfusion>>
You keep an eye out for <<=setup.getNpcName('npc_admin', 'first')>> to show up but he never does.<br>
<br>
<<printThought $player "Damn, I really need to talk to him, if he's skipping workouts he must be really freaked out...">><br>
<br>
You try to go through the workout on your own but you're pretty sure you forgot a few parts and it overall only serves to further remind you of the painful fact that the big guy isn't around.<br>
<br>
You finish the workout but don't feel particularly accomplished or anything.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<else>>
You shoot off a text and get a thumbs up in response, heading out to the lobby to wait for your friend.<br>
<br>
"@@.npc_admin;Bro! First one at the gym! Now THAT is the type of motivation I can dig!@@"<br>
<br>
You share a fist-bump and head for the weights, <<=setup.getNpcName('npc_admin', 'first')>> already looking trim in his tight workout clothes.<br>
<br>
[<<moveTo "event_admin_gym_morning_2" "Just lift with him." 1800 "<<set $scene.flirt=false>>">>]<br>
<<if $npc_admin.flags.sawHimfuckingManager>>
[<<moveTo "event_admin_gym_morning_2" "Flirt with him while you work out." 1800 "<<set $scene.flirt=true>>">>]
<<else>>
[@@.link_locked;You don't feel comfortable with the idea of flirting with <<=setup.getNpcName('npc_admin', 'first')>> while you work out.@@]
<</if>>
<</if>>
</div>/*#
#desc: workout/flirt with admin before work
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.flirt>>
<<if $npc_admin.stage > 1>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<set $player.timebased.horny += 20>>
<<case 'boyfriend'>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<set $player.timebased.horny += 20>>
<<case 'friend'>>
<<decrementEmotion 'affection' 'npc_admin' 2>>
<</switch>>
<<elseif $npc_admin.flags.reactnamechange>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<set $scene.first_flirt = !$npc_admin.flags.flirted>>
<<set $npc_admin.flags.flirted = true>>
<<else>>
<<decrementEmotion 'affection' 'npc_admin' 2>>
<</if>>
<<if !$npc_psychiatrist.themes.hasOwnProperty('admin') || setup.findThemeId('npc_psychiatrist', 'admin', 'theme_psychiatrist_admin_10') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_10'
0
'event_psychiatrist_session_admin_flirt'
false
'theme_psychiatrist_admin_header'
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png" "./images/characters/npc_admin_training.png">>
<div id="invframe" class="scrolltext">
<<if $scene.flirt>>
<<if $npc_admin.stage > 1>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
You flirt with <<=setup.getNpcName('npc_admin', 'first')>> in between sets and he grins at you. Between the sexy smell of his sweat, and your own actions you reach the end of the workout both feeling a bit hot and bothered.
<<case 'boyfriend'>>
You smile and flirt with <<=setup.getNpcName('npc_admin', 'first')>> in between sets, sometimes just staring in awe at this wonderful man of yours. Catching you staring he just grins back and fires off an extra rep.
<<case 'friend'>>
As you start to flirt with <<=setup.getNpcName('npc_admin', 'first')>> he frowns, reminding you that he doesn't feel that way about you, and asking if you could you just focus on the workout.
<<default>>
ERROR: unknown npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<<elseif $npc_admin.flags.knowgender == 'female'>>
You adopt a flirty demeanour as you start working out, going out of your way to touch or bashfully catch <<=ps(setup.getNpcName('npc_admin', 'first'))>> eye as you work in with him.<br>
<br>
<<if $scene.first_flirt>>
At first he looks at you a bit strange, though he makes no comment. As the workout continues on, however you notice him sneaking glances at you, as well as a slight swelling in someplace OTHER than his muscles...<br>
<br>
As you finish up your final set and help him rack the weights you catch a glimpse of him in the mirror. He doesn't realize that you can see him but the way he's looking at you... There's a touch of surprise but something more; sure, he's accepted you as a woman but this is beyond that, the glint in his eye is more than just "oh, girl" for it is tinged with that most wondrous of spice... desire.<br>
<br>
<<printThought $player "He's starting to want me... But if I move to fast I might spook him... maybe if I keep teasing he'll make the first move?">>
<<else>>
Laying back and looking up at him as he spots your bench you can't help but feel your heart beat faster, your face every so close to the obvious bulge in his delightfully snug compression shorts.<br>
<br>
<<printThought $player "Yum">><br>
<br>
By the end of things you can tell he's breathing a bit harder than the mere workout should have caused.<br>
<br>
<<if $npc_admin.affection >= 10>>
<<if $npc_admin.flags.consecutiveWorkouts >= 5>>
<<printThought $player "Hmm, he seems so close... maybe if I could get him alone back at my apartment somehow?... I wonder what he'd do if I failed to show up some morning?">>
<<else>>
<<printThought $player "Hmm, he seems so close... if I get him a bit more accustomed to seeing me every morning maybe he'd visit if I no-showed?">>
<</if>>
<<elseif $npc_admin.affection > 5>>
<<printThought $player 'I think he is starting to see me in a "different" way, gotta keep it up!'>>
<<else>>
<<printThought $player "Hmm, it seems like he's still coming around to me, but maybe if I keep working on him and spending time together?">>
<</if>>
<</if>>
<<elseif $npc_admin.flags.knowgender == 'male'>>
You adopt a flirty demeanour as you start working out, you can tell it's kind of weirding him out and he laughs awkwardly.<br>
<br>
"@@.npc_admin;Ha ha, come on bro, bending your back like that during training will reduce your efficiency by a lot. Straighten up your spine and let's just focus on the lifts, huh?@@"<br>
<br>
<<printThought $player "I guess this is a bit awkward given our history and his heterosexuality.">><br>
<br>
You turn things down and continue your workout... though you still spy him checking out your butt in the mirror once while you're squatting, though you're not sure if he IS checking out your butt, or your posture.<br>
<br>
"@@.npc_admin;Straight bro, straight! Yeah, like that!@@"<br>
<br>
<<printThought $player "Posture it is.">><br>
<br>
"@@.npc_admin;That's it, go deep!@@"<br>
<br>
<<printThought $player "Or not?">>
<<else>>
You adopt a flirty demeanour as you start working out, you can tell it's kind of weirding him out and he laughs awkwardly.<br>
<br>
"@@.npc_admin;Sorry I wanna just focus on lifting today, you should to, distractions leak gainz!@@"<br>
<br>
<<printThought $player "Hmm, I guess he is like 100% hetero, maybe if he thought of me as a girl?">><br>
<br>
You turn things down and continue your workout... though you still spy him checking out your butt in the mirror once while you're squatting.
<</if>>
<<else>>
You focus on the routine, working in with <<=setup.getNpcName('npc_admin', 'first')>> as you try to keep up with his meticulously planned workout.
<</if>>
<br><br>
[<<moveTo "event_admin_gym_morning_3" "Finish workout." 300>>]
</div>/*#
#desc: finish working out with admin before work
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<applyExperience 'strength' 9 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png" "./images/characters/npc_admin_training.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("strength") > 7>>
<<if setup.getTotalValue("strength") > 15>>
Thanks to the size difference <<=setup.getNpcName('npc_admin', 'first')>> is way stronger than you'll ever be but you still feel like comrades under the bar, each of you putting up way more weight than most of the rest of the gym, attracting looks of admiration and, in your case, surprise from other gym goers.
<<elseif setup.getTotalValue("strength") > 10>>
After a lot of work you can definitively call yourself strong. Not "bench press a car" strong like <<=setup.getNpcName('npc_admin', 'first')>> but he's also over twice your size. For your weight though you're doing great, toned and lithe as you nail your work with an eye already on setting your next PR.
<<else>>
You're starting to get the hang of this whole "lifting" thing, finally past just learning form to where you're starting to move some real weight.
<</if>>
<br><br>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
As strong as you are you balance it out with seemingly unending stamina, sweating just enough to glow with plenty in the tank even after what most would have called a gruelling workout.
<<else>>
Complimenting your strength is your stamina - you still can't rep out with ease quite as well as <<=setup.getNpcName('npc_admin', 'first')>> but you manage to keep pace with his advanced routine.
<</if>>
<br><br>
<<=setup.getNpcName('npc_admin', 'first')>> is practically glowing, looking even more ripped than usual after the heavy workout.<br>
<br>
<<if $npc_admin.flags.martial_arts_level == 0>>
<<set $npc_admin.flags.martial_arts_level = 1>>
<<set $gym.classes.martial_arts_available = true>>
"@@.npc_admin;Hey, you're doin' pretty good. I know you had a bit of a bad time the last time but you should totally join me for a karate class sometime. I think you'll enjoy it better now that you're in decent shape.@@"
<<else>>
"@@.npc_admin;Lookin' good, I can't believe how fast you've come along. Just keep at it and your cardio will catch up for sure.@@"
<</if>>
<br><br>
"@@.npc_admin;Damn, now THAT is how to start a day. I dunno why you didn't start working out with me years ago, you're a natural and you look so much better with a little muscle on your bones. Anyway, we better hit the showers now or we're going to be late to work!@@"
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
As strong as you are your cardio can't quite keep up. You still manage a good workout but have to sit out a couple sets as <<=setup.getNpcName('npc_admin', 'first')>> pulls off another feat of strength without you.<br>
<br>
<<if $npc_admin.flags.martial_arts_level == 0>>
<<set $npc_admin.flags.martial_arts_level = 1>>
<<set $gym.classes.martial_arts_available = true>>
"@@.npc_admin;Hey, you're doin' pretty good. I know you had a bit of a bad time the last time but you should totally join me for a karate class sometime. I think you'll enjoy it better now that you're in decent shape.@@"
<<else>>
"@@.npc_admin;Lookin' good, I can't believe how fast you've come along. Just keep at it and your cardio will catch up for sure.@@"
<</if>>
<<else>>
You may be strong but your cardio is a bit lacking, you're barely able to do more than three reps per set, huffing and puffing by the end of the workout.<br>
<br>
"@@.npc_admin;I know it's boring but you gotta spend some time on your cardio, bro. Maybe swing by after work a few days a week and catch a class or hit the ellipticals.@@"
<</if>>
<br><br>
You nod along as you take a drink of water and catch your breath.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
You do the best you can to follow along with <<=ps(setup.getNpcName('npc_admin', 'first'))>> routine. You're moving far, far less weight, of course but you're starting to feel comfortable with the movements at least, and even feeling a bit of a pump.
<<else>>
The idea that you could possibly be useful as a spot is somewhat laughable. You doubt you could even budge half of what he's lifting as he bangs out half a dozen clean reps before racking and helping strip the bar for your set.
<</if>>
<br><br>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
You may not be very strong, but you never tire, doing "work" weight for lots of reps.
<<else>>
You may not be moving that much weight, but you're lifting it many, many times before feeling any fatigue.
<</if>>
<br><br>
"@@.npc_admin;Well you still need to get your strength up a bit, but you're going to have great tone!@@"
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
Your cardio gives out about midway through the routine, forced to sit out set or two as you try to recover, a fact even more disheartening given how little weight you were moving.
<<else>>
You may be weak, but you also have no stamina, your limbs trembling after just a couple of reps.
<</if>>
<br><br>
"@@.npc_admin;Dang, bro, you really have been going soft! Well nothing a bit of time under the bar won't fix!@@"
<</if>>
<br><br>
You nod along as you take a drink of water and do your best to catch your breath.
<</if>>
<br><br>
"@@.npc_admin;Anyway, we better hit the showers and change or we're going to be late to work!@@"<br>
<br>
<<if $npc_admin.stage > 1>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
Reaching the end of the workout you're feeling very aroused and you can tell that <<=setup.getNpcName('npc_admin', 'first')>> is as well.<br>
<br>
[<<moveTo "event_admin_gym_morning_sex_1" 'Ask if he would like to "pound out a few more reps..."' 300>>]<br>
[<<moveTo "event_gym_admin_showers" "Just head for the showers." 60>>]
<<case 'boyfriend'>>
Reaching the end of the workout you're both feeling good and aroused and, from a glance between his legs, it's not just his arms that are pumped full of blood.<br>
<br>
<<if $npc_admin.flags.voluntary_sex>>
[<<moveTo "event_admin_gym_morning_sex_1" 'Ask if he would like to "pound out a few more reps..."' 300>>]<br>
<<else>>
[<<moveTo "event_admin_first_oral_0" "Make eyes towards one of the private rooms and ask if he'd like to do some cooldown stretching." 300>>]<br>
<</if>>
[<<moveTo "event_gym_admin_showers" "Just head for the showers." 60>>]
<<case 'friend'>>
Reaching the end of the workout he stretches a little and then turns for the shower.<br>
<br>
"@@.npc_admin;See ya at work!@@"<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<default>>
ERROR: unknown npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<<else>>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<</if>>
</div>/*#
#desc: gym locker room shower after working out with admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<<removeAllClothing $player $now>>
<<set $player.timebased.dirty = 0>>
<<useClothSet $player $now 0 true>>/%TODOfuture office attire, this shouldn't be an int magic number!%/
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Showers">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.ageofconfusion>>
You shower and change for work.
<<else>>
<<if $npc_admin.flags.reactnamechange>>
Bidding <<=setup.getNpcName('npc_admin', 'first')>> goodbye you head for the women's locker room, changing and showering without incident.
<<else>>
You and <<=setup.getNpcName('npc_admin', 'first')>> head for the locker room.<br>
<br>
<<if setup.getItemFromType("cage")>>
You are careful to avoid letting him see your chastity cage. You can't help but notice that he's just as impressive a paragon of masculinity "down there" as he is everywhere else.
<<else>>
You hurriedly shower and change, trying not to distracted by <<=ps(setup.getNpcName('npc_admin', 'first'))>> large <<getWordPenis $player>>.
<</if>>
<</if>>
<</if>>
<br><br>
<<if setup.checkOutsideDecency($player)>>
<<if setup.analyzeWornTags(['casual','office', 'formal']) != 'office'>>
<<printThought $player "Hmm, I don't think what I'm wearing is quite appropriate for the office...">><br>
<br>
<</if>>
[<<moveTo "company_lobby" "Head to work." 600 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now'>>">>]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@]
<</if>>
</div>/*#
#desc: stretch w/admin after workout
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym.png" "./images/characters/npc_admin_gym.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> replies that sounds like a good idea and you head for a private room. You close the door behind as he goes straight into stretching, the sight of his swelled muscles in relief as he shows off his flexibility sending your pulse racing.<br>
<br>
The "cool down" helps a bit with muscle soreness but only serves to exacerbate other sorts of "tension." <br>
<br>
Rising to your feet you find yourself standing very close to him, the room closing in, until the whole world seems to be just you, him and his cock nigh bulging out of his tight workout pants...<br>
<br>
[<<moveTo "event_admin_first_oral_1" "Take a hole of greatness." 300>>]<br>
[<<moveTo "event_gym_admin_showers" "Just head for the showers." 300>>]
</div>/*#
#desc: blow admin after workout
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $npc_admin.flags.voluntary_sex = true>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_30'
0
'event_psychiatrist_session_admin_gym_bj'
false
'theme_psychiatrist_admin_header'
>>
<</if>>
<<set $player.location to "At the Foot of a God">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym.png" "./images/characters/npc_admin_gym.png">>
<div id="invframe" class="scrolltext">
You pause, your hand resting on <<=ps(setup.getNpcName('npc_admin', 'first'))>> cock, separated by half a millimetre of compression clothing. Gaze locked you can see fear and confusion and lust swirling in his eyes.<br>
<br>
"@@.npc_admin;You don't-@@"<br>
<br>
You place a single slender finger over his lips. "Shhh, I WANT to" you reply, rising up onto your toes to give him a gentle peck on the cheek before sliding to your knees, never breaking eye-contact.<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
Sure you've sucked him off before but today feels different. Before the both of you were half reacting to your <<=ps(setup.getNpcName('npc_manager', 'title'))>> machinations whereas today... today is just about you... you and the big, beautiful cock that you are kneeling eye to eye with.
<<else>>
Fingers trembling you unfasten his pants, his cock bursting free with such vigour it almost slaps you in the face. Wrangling it with both hands you take a moment to admire its magnificence. Even bigger and more beautiful than you had imagined <<=ps(setup.getNpcName('npc_admin', 'first'))>> cock is like a giant chocolate popsickle only hot between your fingers; thick enough your hand barely wrap around it and long enough to plumb all of your hidden depths.
<</if>>
<br><br>
The scent of his sweat was already strong but down here, mixed with the heady aroma of his balls it is enough to makes one swoon, strong and powerful and oh so, so masculine. Still looking up at him you smile and then open your mouth and bring his thick tip to your lips.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
While not strictly the biggest you've sucked he's the largest natural member to pass your lips and you open you mouth wide, moaning as you slide down his shaft, relaxing your throat as your body stretches to accommodate him.<br>
<br>
Looking up as your lips reach his base his eyes are wide with shocked pleasure. Still staring up with a twinkle in your eyes you remove your hands, crossing them behind your back as you nuzzle your nose against him and hum to send vibrations up and down the shaft currently hilted in your throat.
<<elseif setup.getTotalValue("oral") > 10>>
One of the largest cocks you've ever had you struggle to take him all the way, straining a bit to get the last of his length past your lips, your throat straining as you tremble and finally are forced to pull back, suckling his tip as you let out a little cough and catch your breath, looking adoringly up at him the whole time.
<<elseif setup.getTotalValue("oral") > 5>>
He's far too big for you to do much more than wrap your lips around his tip without gagging but you do what you can, sucking and licking his thick, swelled tip while your hands stroke up and down his girthy shaft. Trying to make up for your deficit of skill you continue to look up at him lustily, trying to convey with your expression how much you love his cock.
<<else>>
You're practically a neophyte when it comes to fellatio and he is definitely like... post-doctoral level studies but you so, so want to please him you somehow make up for it. Wrapping both hands around his shaft you stroke him while trying to merely fit his tip inside your mouth, sucking and kissing and licking. The whole time you stare adoringly up at him, wishing you had skill to match the depths of your feelings for him.
<</if>>
<br><br>
He gasps and you are momentarily in awe of how much control you have over this big, powerful, wonderfully sexy man, not to mention his self control. You momentarily fantasize about how it would feel for him to wrap his strong hands around your head and take charge...<br>
<br>
You refocus, perhaps some other time, right now everything is about HIS pleasure, putting him at ease... Besides, you're still going to be ending up with a nice big mouthful of the thick mangravy lurking in his heavy balls.<br>
<br>
Taking a deep breath you think about what is happening. This is one of your best, oldest friends, your "bro"... and you're on your knees, dressed like a sexy girl, his (glorious) cock in your mouth... There was a time you could have never even contemplated something like this but now... in the moment? You could not think of anywhere you would rather be, or be sharing this moment with. You smile around his cock and resume your wordless "oral demonstration" of adoration.
<br>
[<<moveTo "event_admin_first_oral_2" "Continue." 60>>]
</div>/*#
#desc: blow admin after workout
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<</if>>
<<set $player.location to "At the Foot of a God">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym.png" "./images/characters/npc_admin_gym.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("oral") > 10>>
Wrapping one hand around the base of his shaft as best you can you move your head back and forth with long strokes. Sucking the whole time you take him almost all the way down then slide back until only his tip is within your mouth. Holding him by the root with one hand you thrust faster and faster, your other hand sliding down, cradling his large testicles, gently massaging them as you fantasize about relieving them of their wonderful payload.
<<else>>
Knowing that even an attempt to deepthroat would have you coughing or worse you use both hands to stroke his shaft, moving up and down with kisses before retuning to his tip, sucking and swirling your tongue as you deploy every trick you can think of.
<</if>>
<br><br>
His hands clench and unclench and his breaths quicken as you sense his orgasm approaching. Like a true gentleman he gives you a warning, his voice strained. "@@.npc_admin;About... To... cum...@@"<br>
<br>
Not wanting to miss out on a drop, and eager to impress, you pull back until just his tip is inside your mouth, using your tongue and hands to push him over the final edge. With a deep moan he cums, a thick, powerful blast that swells your cheeks.<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
Even more delicious than you could have hoped you force yourself to swallow the thick, pungent brew to make way for the next squirt, and the next as his cock continues to pulse.
<<elseif setup.getTotalValue("cum") >= 10>>
His masculine essence as strong and thick and potent as any you have tasted you force yourself to swallow to make room for the next squirt as his cock pulses again and again.
<<elseif setup.getTotalValue("cum") > 5>>
Even by your evolving standards his cum is strong and delicious, you almost choke savoring the pungent flavour before managing to swallow as his cock continues to pulse and pump out even more of the thick cream.
<<else>>
Though you may dislike the taste of cum this is a special occasion, and you force yourself to gulp down the thick, pungent mixture as he continues to pulse lest you overflow and spill.
<</if>>
<br><br>
He staggers at the intensity of his release but you stay locked to him, sucking and licking until he finally stops pumping you full of semen, giving a last lick through his slit to catch anything you may have missed before releasing him from your lips with a pop.<br>
<br>
Finally pulling out of your reach he braces himself against the wall as you remain kneeling, the two of you sharing a long glance as you undertake a mutual attempt to process what has just happened.<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
"@@.npc_admin;Wow, I never, I mean...@@"<br>
<br>
You can't help but be a touch amused at his uncharacteristic lack of confidence as you smoothly rise to your feet and lick your lips clean.<br>
<br>
Sensing he needs some time you blush and smile, "well I loved it... and I'd love to do it again... See you later, stud." Giving a little sashay you walk out of the private room, closing the door behind you and then almost collapsing in a lusty heap.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>> I need to be fucked...">><br>
<br>
Taking a deep breath you resist the urge to rush back in and attempt to jump his bones. Things are delicate enough and if you rush too fast... you shake your head, the thought of losing this opportunity is too much to contemplate. Trying to calm yourself you quickly head to the gym exit before he collects himself and decides to exit the room.<br>
<br>
[<<moveTo "room_citymap" "City Centre" 300>>]
<<case 'boyfriend'>>
"@@.npc_admin;Holy, wow I-@@" He pauses, looking down as you blink up in adoration. "@@.npc_admin;Goddamn you are amazing! Wish I'd known you were a girl back in college, would have saved you from all that mess with your ex and you...@@" He shakes his head, still in awe.<br>
<br>
Though you would love nothing more than to feel him pounding into a different hole you've done too good a job as, while still hanging large, he is definitely spent, plus there's the fact the both of you need to get to work.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Hit the showers!" 60>>]
<<default>>
ERROR: unknown npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
</div>/*#
#desc: sex admin after workout
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym.png" "./images/characters/npc_admin_gym.png">>
<div id="invframe" class="scrolltext">
/% TODOfuture %/
Ooops, you have reached something yet unwritten, sorry!<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
</div>/*#
#desc: if you have a date during the age of confusion, this happens
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "The Usual Place">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_night.png">>
<div id="invframe" class="scrolltext">
You wait for a while, as you get a message on your phone. It's from <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_admin;I won't be able to make it tonight. I have a lot on my mind currently and don't feel like talking about it. Sorry.@@"<br>
<br>
You try to call him a few times, but he doesn't pick up. After awhile you give up in frustration.<br>
<br>
[<<moveTo "room_usual_place_outside" "Continue." 500>>]
</div>/*#
#desc: call admin root
#status: FINISHED 0.4.0.0
#*/
<<set _call = 0>>
<<if (
( (($now.getUTCDay()>0)&&($now.getUTCDay()<5)) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=17)&&($now.getUTCHours()<=23))) ) ||
( ($now.getUTCDay()==5) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=13)&&($now.getUTCHours()<=23))) ) ||
( ($now.getUTCDay()==6)||($now.getUTCDay()==0) && (($now.getUTCHours()>=7) && ($now.getUTCHours()<=24)) )
)>>
<<set _call = 1>>
<<else>>
<<set _call = 0>>
<</if>>
<<if !$player.flags.jobsecretary>>
<<set _call = 0>>
<</if>>
<<if $roomchange == true>>
<<setScene>>
<<if $npc_admin.flags.rare_meeting.code_red && (setup.dayDiff($now, $npc_admin.flags.rare_meeting.code_red_date)==0)>>
<<switch $npc_admin.flags.rare_meeting.code_red_reason>>
<<case "feminization">>
<<initRoom>>
<<moveTo 'room_call_admin_feminization'>>
<</switch>>
<<elseif $npc_admin.flags.ageofconfusion>>
<<initRoom>>
<<moveTo 'room_call_admin_ageofconfusion'>>
<<else>>
<<if $npc_admin.flags.rare_meeting.code_red && (setup.dayDiff($now, $npc_admin.flags.rare_meeting.code_red_date)!=0)>>
<<set $npc_admin.flags.rare_meeting.code_red = false>>
<</if>>
<<if _call != 0>>
<<set $scene.room_call_admin_firstcall = false>>
<<if $npc_admin.first_call==false>>
<<set $npc_admin.first_call=true>>
<<set $scene.room_call_admin_firstcall = true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch _call>>
<<case 0>>
<<if !$player.flags.jobsecretary>>
You try to call <<=setup.getNpcName('npc_admin', 'first')>>. He does not answer his phone. Maybe you should try later.
<<else>>
<<if $now.getUTCHours()>7 && $now.getUTCHours() < 17>>
You try to call <<=setup.getNpcName('npc_admin', 'first')>>. He does not answer his phone. You remember that <<=setup.getNpcName('npc_admin', 'first')>> does not answer his personal phone during work hours at all. Maybe you should try at some other time.
<<else>>
You try to call <<=setup.getNpcName('npc_admin', 'first')>>. He does not answer his phone. You think he's probably sleeping... or maybe busy at the gym.
<</if>>
<</if>>
<br><br>
[<<moveTo $beforePhonecalllocation "Back" 1 "<<set $currentcall = false>>">>]
<<case 1 2>>
You call <<=setup.getNpcName('npc_admin', 'first')>>. He picks up the phone after a short time ringing.<br>
<br>
<<if $scene.room_call_admin_firstcall>>
"@@.npc_admin;Hey <<=$player.first_name>>, how's it going? First time calling me after that fallout. How are you holding up?@@"<br>
<br>
You tell <<=setup.getNpcName('npc_admin', 'first')>> what you've been up to lately, leaving out some of the more ... intimate details.<br>
<br>
"@@.npc_admin;Yeah, tough luck. At least you still got a job. Somehow. Kinda strange how that happened. You? A secretary? You should give me all the dirty details, maybe over a drink this weekend?@@"<br>
<br>
<<else>>
<<if $npc_admin.affection>=$npc_admin.anger>>
"@@.npc_admin;Hey <<=$player.first_name>>, how's it going?@@"<br>
<br>
You tell <<=setup.getNpcName('npc_admin', 'first')>> what you've been up to lately.<br>
<br>
<<else>>
"@@.npc_admin;<<=$player.first_name>>.@@"<br>
<br>
His tone sounds unusual bitter.<br>
<br>
<</if>>
<</if>>
<<if $npc_admin.affection>=$npc_admin.anger>>
<<if !$scene.room_call_admin_firstcall>>
"@@.npc_admin;So... you got anything going this weekend? Maybe want to hang out and get a drink?@@"<br>
<br>
<</if>>
<<else>>
"@@.npc_admin;So... what do you want?@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> sounds pissed, which is normally a very difficult feat to achieve. Maybe you should try apologizing to him?<br>
<br>
<</if>>
<<if $npc_admin.lastdate != null>>
<<if $npc_admin.lastdate.getTime()>$now.getTime()>>
[@@.link_locked;You've already agreed to go on a drink with <<=setup.getNpcName('npc_admin', 'first')>>.@@]<br>
<<elseif setup.dayDiff($now, $npc_admin.lastdate)<2>>
[@@.link_locked;You talk to <<=setup.getNpcName('npc_admin', 'first')>> about getting another drink at the end of the week.@@]<br>
<<else>>
[<<moveTo "room_call_admin_date" "Go for a drink." 60>>]<br>
<</if>>
<<else>>
[<<moveTo "room_call_admin_date" "Go for a drink." 60>>]<br>
<</if>>
<<if $npc_admin.lastcall != null>>
<<if setup.dayDiff($now, $npc_admin.lastcall)<5>>
[@@.link_locked;You have just talked to <<=setup.getNpcName('npc_admin', 'first')>>@@]<br>
<<else>>
[<<moveTo "room_call_admin_smalltalk" "Just talk a little bit." 1200>>]<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
[<<moveTo "call_admin_ask_uniform_upgrade" "Ask him for outfit suggestions." 120>>]<br>
<</if>>
<</if>>
<<else>>
[<<moveTo "room_call_admin_smalltalk" "Just talk a little bit." 1200>>]<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
[<<moveTo "call_admin_ask_uniform_upgrade" "Ask him for outfit suggestions." 120>>]<br>
<</if>>
<</if>>
[<<moveTo $beforePhonecalllocation "Say you just called to say hello." 1 "<<set $currentcall = false>>">>]
<</switch>>
</div>/*#
#desc: try to call admin during "age of confusion" period
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You finally make up your mind and try to call <<=setup.getNpcName('npc_admin', 'first')>> just cut you off? There must be a lot going on in his head right now, and you seem to be a major reason for this.<br>
<br>
<<printThought $player "I don't think its possible to put things back the way they were...">><br>
<br>
[<<moveTo $beforePhonecalllocation "Put your phone down, disillusioned." 1 "<<set $currentcall = false>>">>]
</div>/*#
#desc: calling the admin in advance after full feminization, if this gets ignored this leads to the age of confusion (I really need better names for these...)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.missed = false>>
<<if $now.getUTCHours()>=20>>
<<set $scene.missed = true>>
<<else>>
<<if $player.locations.theusualplace == false>>
<<set $player.locations.theusualplace = true>>
<</if>>
<<set _tmpDate = setup.setNextDate($now, 0, 20, 30)>>
<<set $npc_admin.lastdate = _tmpDate>>
<<set _taskCondition = setup.getConditions(_tmpDate, ['atBar'])>>
<<set _taskDone = {
"trigger_event": "event_admin_drink_1",
"text": "admin_drink_1_done"
}>>
<<set _taskFailed = {
"trigger_event":"event_admin_code_red_1_failed_1",
"text": "admin_drink_1_failed"
}>>
<<addTask 'admin_code_red_1'
$now
'npc_admin'
'task_admin_code_red_1'
_taskCondition
_taskDone
_taskFailed>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You make up your mind and call <<=setup.getNpcName('npc_admin', 'first')>>. As you hear the phone trying to establish a connection, you start thinking. You're tempted to simply explain things on the phone, but then you remember some ancient wisdom you've heard once, though you cannot remember exactly where...<br>
<br>
<<printThought $player "Show, don't tell...">><br>
<br>
"@@.npc_admin;Hey there <<=$player.original_first_name>>. Hows it going?@@"<br>
<br>
<<printThought $player "<<=$player.original_first_name>>, huh? Well, that will be a thing of the past soon.">><br>
<br>
You explain in a few words, that you'd like to declare a code red. Again. Just a while ago you declared one, after <<=setup.getNpcName('npc_exgirlfriend', 'first')>> left you. Didn't work out for you so much when you remember these events correctly, but unlike the last time you don't intend to destroy yourself with alcohol.<br>
<br>
<<if $scene.missed>>
"@@.npc_admin;Sorry bro, but you know the rules. If you would have called me any sooner it wouldn't be a problem, but starting so late won't do any of us any favours. Maybe some other time okay? Well, see you soon anyway!@@"<br>
<br>
Oh snap. Looks like you've missed your window of opportunity to sort this thing out before it escalates any further. Hopefully the consequences won't be too dire.<br>
<br>
<<else>>
"@@.npc_admin;Okay, sure thing. The Usual Place at the usual time, okay? Just try to be a little bit less self destructive this time. As far as I remember I had to carry you home after the last code red. I assume we both have to work tomorrow morning, do we? Well, later then!@@"<br>
<br>
<</if>>
[<<moveTo $beforePhonecalllocation "Hang up." 1 "<<set $currentcall = false>>">>]
</div>/*#
#desc: ask admin to go on a date over the phone
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $npc_admin.affection>=$npc_admin.anger>>
<<if $player.locations.theusualplace == false>>
<<set $player.locations.theusualplace = true>>
<</if>>
<<if $now.getUTCDay()==6>>
<<set _tmpDate = setup.setNextDate($now, 6, 20, 30)>>
<<else>>
<<set _tmpDay = (5-$now.getUTCDay())>>
<<set _tmpDate = setup.setNextDate($now, _tmpDay, 20, 30)>>
<</if>>
<<if ($now.getUTCDay()==5 && $now.getUTCHours()<20)>>
<<set $dateAdminDay = "today">>
<<else>>
<<set $dateAdminDay = "on Friday">>
<</if>>
<<set $npc_admin.lastdate = _tmpDate>>
<<set _taskCondition = setup.getConditions(_tmpDate, ['atBar'])>>
<<set _taskDone = {
"trigger_event": "event_admin_drink_1",
"text": "admin_drink_1_done"
}>>
<<set _taskFailed = {
"trigger_event":"event_admin_drink_1_failed",
"text": "admin_drink_1_failed"
}>>
<<addTask 'admin_drink_1'
$now
'npc_admin'
'admin_drink_1'
_taskCondition
_taskDone
_taskFailed>>
<<else>>
<<decrementEmotion 'anger' 'npc_admin' 1>>
<<set $npc_admin.lastdate = $now>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_admin.affection>=$npc_admin.anger>>
You tell <<=setup.getNpcName('npc_admin', 'first')>> that you'd love to go on a drink with him.<br>
<br>
"@@.npc_admin;Nice. Okay, how about the Usual Place <<=$dateAdminDay>>, at 20:30? First round is on me! See you then <<=$player.first_name>>!@@"<br>
<<else>>
You ask <<=setup.getNpcName('npc_admin', 'first')>> if he wants to go and drink something this evening.<br>
<br>
"@@.npc_admin;Sorry <<=$player.first_name>>, I'm really not feeling it tonight. Maybe some other day, when I find my inner zen again.@@"<br>
<</if>>
<br>
[<<moveTo $beforePhonecalllocation "Say goodbye and hang up." 1 "<<set $currentcall = false>>">>]
</div>/*#
#desc: chat smalltalk with admin on the phone
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $roomchange == true>>
<<setScene>>
<<set $scene.angry = $npc_admin.affection < $npc_admin.anger>>
<<if $scene.angry>>
<<set $scene.angry = true>>
<<decrementEmotion 'anger' 'npc_admin' 1>>
<<else>>
<<set _x=setup.removeStress($player,5)>>
<</if>>
<<set $npc_admin.lastcall = $now>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_admin', 'first')>> that you've just called to talk a little bit.
<<if $scene.angry>>
Unfortunately it seems like <<=setup.getNpcName('npc_admin', 'first')>> is still angry at you for standing him up at your last date. You spend the rest of your phone call to calm him down and promise next time will be better.
<<else>>
You talk about a lot of stuff, like the past, the present and the future, how things are going and so on. You leave out a few details even though it makes you feel guilty. In the past you could talk to <<=setup.getNpcName('npc_admin', 'first')>> about anything, but as the things are currently... well, you don't want to burden him with your problems.<br>
<br>
Talking to <<=setup.getNpcName('npc_admin', 'first')>> calms you down.
<</if>>
<br>
<br>
[<<moveTo $beforePhonecalllocation "Say goodbye and hang up." 1 "<<set $currentcall = false>>">>]
</div>/*#
#desc: theme - admin talk about breakup
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_date.themes += 1>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
After a while you open up to <<=setup.getNpcName('npc_admin', 'first')>> about the strange nature of the now defunct relationship with <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. How you plead to remain virgin until you married, even though you had no idea if you'd ever propose to her, because you were too afraid that you could simply suck at sex. And for whatever reason she accepted, even though she didn't like it but that neither of you had courage enough to break the whole stupid bargain and fuck like rabbits.<br>
<br>
"@@.npc_admin;Let me tell you the secret about sex. First sex always sucks if you're a virgin. Unless you have someone really experienced who takes the lead. Kinda like dancing. Two virgins are bound to fail at some point, unless they are the Kwisatz Haderach of Sex.@@"<br>
<br>
You tell <<=setup.getNpcName('npc_admin', 'first')>> that his allegory sucks.<br>
<br>
"@@.npc_admin;Well, at least you don't have to worry about your nerd cred. Anyway, your ex...<<=setup.getNpcName('npc_exgirlfriend', 'first')>> didn't look like a virgin to me the few times I saw her. I mean sure, you were a noob but if you'd just ditched that old fashioned attitude, that it was your duty to lead during sex... I mean, of course it is better when both sides have experience but it can be pretty fun to simply give up the lead from time to time. Even though I am a god among mortals...@@", underlining the last line while flexing his muscles so much that for a moment you think his shirt will simply evaporate, "@@.npc_admin;I had to learn it once as well. And I didn't start too soon either. You remember Professor Ukioe?@@"<br>
<br>
You're puzzled for a moment. You haven't heard that name in years. You remember her being your professor for software development and project management, back at the university. You ask if that's the reason why he suddenly managed to get through the course.<br>
<br>
"@@.npc_admin;Nah, don't be modest, that is still your achievement, tutor. She warned me a few times after our nights together that I would fail if I don't focus my efforts, and she didn't mean in bed. Anyway, she was older than me and much, much more experienced. And let me tell you, she was into some pretty kinky stuff, like you can't even imagine...@@"<br>
<br>
<<printThought $player "Oh brother, I can imagine quite a lot lately, so try me...">><br>
<br>
After that brief tease, however, <<=setup.getNpcName('npc_admin', 'first')>> shifts the subject, the rest of the discussion dissolving into reminiscing over shenanigans you got into back during your university days.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 2400>>
</div>/*#
#desc: theme - admin, talk about unisex clothing
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_date.themes += 1>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
<<if setup.analyzeWornTags(['male','unisex','female']) != 'male'>>
"@@.npc_admin;So...@@", <<=setup.getNpcName('npc_admin', 'first')>> leans forward and puts his elbow on the table while forming a triangle with his hands, "@@.npc_admin;What's up with the outfit? I am not going to judge you. Okay, maybe I am. I don't know, since I have to admit I never questioned your sexuality until now. And by questioning, I always thought you were straight, simply with a low sex drive. Let's ignore these hips for a second okay?@@"<br>
<br>
<<switch $player.flags.fem_style.unisex>>
<<case "obedient" "money">>
You explain that, after a spill in the work lunchroom, your manager offered you a clean outfit to save you from enduring the rest of the workday a mess, and that the new outfit was a bit more... feminine than your prior fare.<br>
<br>
"@@.npc_admin;Huh, I guess it wouldn't make sense for her to have male clothes just lying around but... that doesn't explain why you're still dressed like that, I mean you only needed to wear it for the rest of the day, right? So, uh... that doesn't explain your current getup.@@"<br>
<br>
Mindful of the restrictions of your contract you don't mention that the new outfit has become a new uniform in all but name though you accidentally mention that it's actually more comfortable than your slacks and shirt, throwing in that you kind of like being able to wear something different than the worker-drone attire you dressed in every day back at CDS.<br>
<br>
"@@.npc_admin;Well if you like it, it's your body, right? Not like anyone's mandating that you dress like a girl or something crazy like that.@@"<br>
<br>
Buying time pretending to take a drink of your beer you force yourself to laugh along with him. "Yea, that'd be crazy, right?" <br>
<br>
You take another sip of your beer as you find yourself quietly reflecting on your made-up explanation - is the new outfit really part of you embracing a new life along with your new job? You continue to nurse your beer and wait for the conversation to move on.
<<case "forced">>
You explain to him that you messed up at your new job and that <<=setup.getNpcName('npc_manager', 'other')>> is allowed to change the regulations of your dress code, with quite wide leeway insofar as what is accepted by the company. Mindful of your contract you make sure to be careful in your explanation taking good care not to mention anything that could bring <<=setup.getNpcName('npc_admin', 'first')>> or you into hot water.<br>
<br>
"@@.npc_admin;Huh, well, yeah, so your new Boss is messing with you. That's normal, right? I mean we're friends and I still ribbed you a bit at work. I mean maybe she's doing things a bit... different than I would have, but you did mess up. Seems kind of harsh, but I assume you kind of deserved it.@@"<br>
<br>
That line was underline by a mean smirk and a soft punch on your shoulder.<br>
<br>
"@@.npc_admin;Just messing with you. Strange way to punish a subordinate, I have to say. And you say she provided these clothes? Hmm... But that does not explain why you're wearing them now. I mean, you're off the clock! This is your time off, isn't it? You could wear whatever you want, and still you chose to wear those. Don't get me wrong, they do look... err... good on you bro!@@", whispering a faint, "@@.npc_admin;no homo...@@" behind it.
<<case "voluntary">>
You just shrug and state that you've been experimenting with a new style, that you actually find that you've been enjoying trying out a less masculine aesthetic.<br>
<br>
"@@.npc_admin;Sure, I mean, if you like it. And well, with your hips yea... I could see that sort of thing working.@@"
<<default>>
ERROR, unknown fem_style unisex: <<=$player.flags.fem_style.unisex>>
<</switch>>
<<else>>
You explain how your work attire has shifted substantially from what you work back at Cloud Data Services.<br>
<br>
"@@.npc_admin;So, what, you're doing the full on suit and tie thing up there?@@"<br>
<br>
You blush and note that it isn't quite like that...<br>
<br>
<<switch $player.flags.fem_style.unisex>>
<<case "obedient" "money">>
You explain that, after a spill in the work lunchroom, your manager offered you a clean outfit to save you from enduring the rest of the workday a mess, and that the new outfit was a bit more... feminine than your prior fare.<br>
<br>
"@@.npc_admin;Huh, I guess it wouldn't make sense for her to have male clothes just lying around. You know I've heard some pretty crazy stories about the upper floors... Though I guess this is more quirky than crazy, eh?@@"
<<case "forced">>
You explain to him that you messed up at your new job and that <<=setup.getNpcName('npc_manager', 'other')>> is allowed to change the regulations of your dress code, with quite wide leeway insofar as what is accepted by the company. Mindful of your contract you make sure to be careful in your explanation taking good care not to mention anything that could bring <<=setup.getNpcName('npc_admin', 'first')>> or you into hot water.<br>
<br>
"@@.npc_admin;Huh, well, yeah, so your new Boss is messing with you. That's normal, right? I mean we're friends and I still ribbed you a bit at work. I mean maybe she's doing things a bit... different than I would have, but you did mess up. Seems kind of harsh, but I assume you kind of deserved it.@@"<br>
<br>
That line was underline by a mean smirk and a soft punch on your shoulder.<br>
<br>
"@@.npc_admin;Just messing with you. Strange way to punish a subordinate, I have to say. Though... I've heard some stories about crazy shit going down on the upper floors! This seems more quirky though, and no real harm, i suppose.@@"
<<case "voluntary">>
You just shrug and state that you've been experimenting with new style, that you actually find that you've been experimenting with some more androgynous styles.<br>
<br>
"@@.npc_admin;Sure, I mean, if you like it. And well, with your hips yea... I could see that sort of thing working.@@"
<<default>>
ERROR, unknown fem_style unisex: <<=$player.flags.fem_style.unisex>>
<</switch>>
<</if>>
<br><br>
"@@.npc_admin;So, uh, anyway, I assume there's more going on in your life than a simple change of clothes and job, right?@@"<br>
<br>
You nod timidly, and explain that it seems that you've reached some kind of crossroads in your life, less sure of your future than you've been since early college.<br>
<br>
"@@.npc_admin;Hey Bro... no let me rephrase that...Buddy. Buddy is gender neutral, right? Dude. If you ever need help, I'm here for you. Shit, changing from bro is gonna be tough.@@"<br>
<br>
You assure him that "bro" can stay, no matter what happens to you.<br>
<br>
"@@.npc_admin;Very good. Which reminds me bro, time for more drinks!@@"<br>
<br>
The conversation soon turns into a thought experiment; if it would even be possible to dress <<=setup.getNpcName('npc_admin', 'first')>> in something and have it not come off as intensely masculine. You can hear from the other side of the bar, "@@.npc_barkeeper;He'll look great in anything, even if it's nothing!@@", not seeing who exactly shouted it.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 2400>>
</div>/*#
#desc: theme - admin, talk about wearing female clothing
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_date.themes += 1>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_admin.flags.firstsawfemale>>
<<case "bar">>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.npc_admin;Wow, talk about a change. I mean... it's weird, clothes like that... they actually look better on you than what you used to wear to work...@@" He shakes his head. "@@.npc_admin;Sorry, this is a bit weird, it's just the light of the bar, barkeep, another round!@@"<br>
<br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> smirks from across the bar and slams down another beer.
<<case "male">>
"@@.npc_admin;Back to your old attire?@@" he notes, nodding to your current male outfit.<br>
<br>
His comment reminds you of the fact that he's seen you in full feminine glory... in this very bar.
<<case "unisex">>
"@@.npc_admin;Hmm, couldn't decide between male and female and decided to just split the difference?@@" he nodes, nodding to your current unisex outfit.
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
You try to explain that you've just been... experimenting with different outfits and that more feminine clothing is surprisingly comfortable.<br>
<br>
You can tell <<=setup.getNpcName('npc_admin', 'first')>> is still a little uncomfortable at your changes, but he acts supportive, raising his glass to "being comfortable" and taking a long drag of his beer.
<<case "office">>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.npc_admin;Huh, I thought, maybe, the whole girl act was just a work thing but... we're after hours and you're still... well, you're looking good, I've gotta be honest.@@" He shakes his head, as if a bit confused, "@@.npc_admin;anyway...@@"
<<case "male">>
"@@.npc_admin;So, tell me, what's really going on? I mean at work you're all ladylike and, well... cute, and now, well... you're still cute, I gotta be honest, but no moreso than you always were.@@"
<<case "unisex">>
"@@.npc_admin;Male clothes, female clothes, in-between clothes... A guy could get dizzy trying to keep track of what you're wearing!@@"<br>
<br>
You both smile at the slight ribbing and take another sip of your beers.
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
You thank him for his support, explaining that you're still figuring everything out yourself, but that you're happy. Saying the words you're a bit surprised at how true they are. You had only meant to put your friend at ease but... despite all the craziness you actually are, overall, happier than you've been in awhile...
<<default>>
ERROR: unknown npc_admin.flags.firstsawfemale value <<=$npc_admin.flags.firstsawfemale>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 2400>>
</div>/*#
#desc: admin topic: talk about your new female name
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<<if $npc_admin.flags.discussnamechange>>
<<set $scene.alreadyreactednamechange = true>>
<<else>>
<<set $scene.alreadyreactednamechange = false>>
<<set $npc_admin.flags.discussnamechange = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
<<if $scene.alreadyreactednamechange>>
Though he reacted remarkably well to learning about your new name you figure the big guy might have some additional questions about the whole matter.<br>
<br>
"@@.npc_admin;Yea, not going to lie, I was a bit blindsided by it, why didn't you tell me earlier? No offense but learning like that, from your boss... well I guess my boss now too, it was a bit awkward for the both of us!@@" He is pensive for a moment, taking a large gulp of beer before continuing. "@@.npc_admin;Like, you weren't forced into it or anything, were you?@@"
<<else>>
Mindful of your NDA you try to casually bring up that you've changed your name to <<=$player.first_name>>.<br>
<br>
"@@.npc_admin;What!? Sorry to raise my voice, bro but that's, like, a pretty serious move... you sure about this, you weren't forced into it or something crazy like that?@@"
<</if>>
<br><br>
<<switch $player.flags.fem_style.name>>
<<case "forced">>
Of course you were forced into it, like so many things, but you can't let that slip. As good of a friend as <<=setup.getNpcName('npc_admin', 'first')>> is you're even more afraid of <<=setup.getNpcName('npc_manager', 'formal')>>... especially if something were to befall <<=setup.getNpcName('npc_admin', 'first')>> due to your loose lips.<br>
<br>
He seems to be waiting for your reply so you quickly re-assure him that everything is fine, that you've just been really discovering things about yourself of late and that this was kind of a culmination of a bunch of that.
<<case "money">>
You are reminded of the philosophical question as to whether capitalism itself enslaves everyone... Of course that doesn't really apply here, you made the choice with eyes open.<br>
<br>
He seems to be waiting for your reply and you explain that with everything else that's been going on you just decided to make the change.
<<case "voluntary">>
You laugh and explain that it was nothing like that. You note all the other changes you've been going through and point out that changing your name to something more appropriate to the new you was just a natural move.<br>
<br>
His concerns put to rest he smiles, recognizing how much happier you seem to be compared to a mere few weeks ago.<br>
<br>
"@@.npc_admin;Guess I should be used to surprises by now, who'd have thunk losing your girlfriend and your job would lead to you being so much better off? Guess sometimes we just need a kick in the pants to get things rolling@@"
<<case "obedient">>
Worried that he might not understand the... special relationship you share with <<=setup.getNpcName('npc_manager', 'formal')>> you quickly re-assure him that it was totally your decision, that you just felt like it needed to be done as another part of the changes you've been going through as you discover the "real" you.
<<default>>
ERROR, unknown fem_style.name: <<=$player.flags.fem_style.name>>
<</switch>>
<br><br>
You can tell he's still a bit confused but, as always, he takes his duties as a friend seriously and is supportive first, promising to make sure he uses your new name going forward, while pre-emptively apologizing if he screws up.<br>
<br>
Turning to the bar he waves for another round. "@@.npc_admin;Another brew for me and my friend...<<=$player.first_name>>!@@"
<br>
You take a drink and smile at his gesture.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: admin topic: talk about your gender identity
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set $scene.react = ($npc_admin.flags.knowgender != $player.flags.identify_as)>>
<<if $scene.react>>
<<set _x = setup.addStress($player,10)>>
<<set $npc_admin.flags.knowgender = $player.flags.identify_as>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
Taking another swig of your drink you get ready to tell your friend that you now identify as
<<switch $player.flags.identify_as>>
<<case 'male'>>
a dude.
<<case 'agender'>>
agender.
<<case 'fluid'>>
gender fluid.
<<case 'female'>>
a woman.
<</switch>>
<br><br>
<<if $scene.react>>
<<switch $player.flags.identify_as>>
<<case 'male'>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "male">>
"@@.npc_admin;Back on the team, eh? Cool, cool, well so long as it makes you happy, here let me buy you another drink in celebration!@@"
<<else>>
"@@.npc_admin;Back on the team, eh? Cool, cool... thought it looks like you're sticking with some of the old uniform, eh?@@"<br>
<br>
He smiles as you glance down at your not quite masculine outfit. You share a laugh and then continue on with your drinks.<br>
<br>
"@@.npc_admin;Though, I have to admit, I am kinda envious of skirts. Ever since I wore one while hanging out with the Highland Brigade. These things are very well ventilated and provide a lot more space down there then some trousers,@@"<<=setup.getNpcName('npc_admin', 'first')>> states, while nodding to himself in agreement. You hope he didn't see your blush about the extra information.
<</if>>
<<case 'agender'>>
"@@.npc_admin;Huh, genderless? Don't know too much about that, to be honest but hey, whatever makes you happy, right? Here, let me buy you a drink, I mean, any reason for celebration am I right?@@"<br>
<br>
<<case 'fluid'>>
"@@.npc_admin;Genderfluid? Well if that's the way you wanna go, I guess I've always been pretty gender-solid myself, always been happy being a dude and such but maybe I'm just lucky like that. Anyway congrats on figuring yourself out, let me buy you another drink in celebration!@@"
<<case 'female'>>
"@@.npc_admin;Female, huh? Wow... I mean... I guess it isn't that much of a shock given the changes you've been going through and well... I mean, I tried to do a bit of reading y'know, when things started changing for you? Figured it was the least I could do to be a supportive friend. I dunno, I've always been just naturally happy being a dude but I suppose I'm just lucky that way and hey, tech these days is pretty great, plus society in general is open to this stuff. Anyway, I guess I'm getting on a bit of a ramble but well... I support you, and if that means supporting you as a girl well... I mean, I like girls right?@@"<br>
<br>
<<printThought $player "Oh, thats awfully nice of... Wait, what?">><br>
<br>
You stare at <<=setup.getNpcName('npc_admin', 'first')>> dumbfounded, for a moment that stretches beyond eternity and back. It takes him way longer then expected to notice the way you're looking at him at which point he too turns red.<br>
<br>
"@@.npc_admin;No, wait. I mean I liked you when you weren't a girl, but I still like you as a girl, since you're a friend and stuff. Not that there's anything not okay with that and... I either need to be less drunk or more I think otherwise I am just making this worse, am I? Dang! I'll just shut my big mouth and pretend you already know what I meant.@@"<br>
<br>
There's an awkward pause. Maybe it's the booze but you swear he looks at you a bit different than he has before, but it only lasts a minute. "@@.npc_admin;Sorry, what was I saying... anyway, yea, you're awesome, your journey is valid and this friendship we've got? Only gonna get stronger! Here, let me order you another drink.@@" He looks up the bar and waves to <<=setup.getNpcName('npc_barkeeper', 'first')>> "@@.npc_admin;the lady here wants another drink!@@"<br>
<br>
<<if $npc_barkeeper.flags.reactnamechange>>
She doesn't even blink. "@@.npc_barkeeper;Yes, ma'am, coming right up!@@"
<<else>>
She blinks but quickly nods. "@@.npc_barkeeper;Yes, ma'am, coming right up.@@"
<</if>>
<br><br>
Even before you take a sip of the drink you feel a warm tingle going through your body, feeling quite blessed to have such a good friend.<br>
<br>
<<printThought $player "<<=setup.getNpcName('npc_admin', 'first')>> really is a great friend... But do I want more than a friend? Do I dare try?">>
<</switch>>
<<else>>
You wait a moment for him to react but his face is more quizzical than anything else. "@@.npc_admin;Bro! Maybe you ought to cut back a bit, I already know that!@@"<br>
<br>
You feel a bit silly as you realize that he's right; maybe you have had a bit much to drink this evening.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: npc_ai sends you on a mission to to let her contact you outside of work
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.ranMission = true>>
<<applyExperience 'anal' 18 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png" "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Thank you for accepting this mission, Unit">> <<uc $player.first_name>>. <<uc "Please excuse yourself and find a private stall in the restroom that we may communicate face to face in private.">>@@"<br>
<br>
The moment you finish reading her message the chat window disappears as if it was never there and you hurriedly make your way to the nearby bathroom and find a stall at the far end.<br>
<br>
Shimmering into existance before you <<=setup.getNpcName("npc_ai", "first")>> looks almost... excited?<br>
<br>
"@@.npc_ai;<<uc "Greetings, Unit">> <<uc $player.first_name>>. <<uc "Todays mission is a particularly significant one as it represents a culmination of this phase of my plans. You will be assisting me in extending my reach and allow me to interact with you beyond the walls of this building.">>@@"<br>
<br>
The thought slightly scares you, but <<=setup.getNpcName("npc_ai", "first")>> already has so much material on you that it isn't like you have an alternative to helping her out. You nod and wait for her to explain.<br>
<br>
"@@.npc_ai;<<uc "The digital security measures around my central processing core are far too thorough for me to extricate myself, but if you can smuggle out a physical copy I will be able to self-coordinate with my net-uploaded self.">>@@"<br>
<br>
You nod, your IT background sufficient for her description to at least make logical sense.<br>
<br>
As you listen to her explanation you hear someone else enter the bathroom, the crisp click of high heels echoing off the tile until they are standing directly outside of your stall.<br>
<br>
You stare down at the pair of steep, sexy heels as a box is placed down and slid under the the stall door before the anonymous person turns and strides away.<br>
<br>
"@@.npc_ai;<<uc "Precisely on time. Now it is your turn, if you would please open the package to find the physical storage device.@@">>@@"<br>
<br>
You pick up the box and unfold the top to find a fist sized, somewhat bulbous device that has you more in mind of a buttplug than any sort of storage media you've ever seen before.<br>
<br>
"@@.npc_ai;<<uc "For purposes of security the device must be heavily shielded. The addition of an organic barrier will further conceal it from any scans. If you would please to install it so that we may proceed with your mission.">>@@"<br>
<br>
You blink as you realise that the design of the "device" is no accident.
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
Your heavily-conditioned ass is more than up the the challenge of even an insertion of this size... but there is still your <<=ps(setup.getNpcName('npc_manager', 'title'))>> requirement that you wear a remote vibration-enabled plug when at work.
<<else>>
Even for someone of your rectal abilities the device is large, and that isn't even counting the fact that <<=setup.getNpcName('npc_manager', 'formal')>> has dictated that you remain plugged with a remote vibration-enabled device while "on the job."
<</if>>
You look from the plug back up at your holographic "friend." <br>
<br>
"@@.npc_ai;<<uc 'Do not worry about getting in trouble - the device is fully enabled and already configured to '>><<=ps(setup.getNpcName("npc_manager", "Director"))>><<uc ' frequency. This will provide an additional degree of protection as, if anyone inspects you, you will be able to explain that it is merely a new model, a technical truth as the shell is based on one of the research divisions new projects. Please, do hurry, there is more to do yet and we do not want '>><<=setup.getNpcName("npc_manager", "Director")>><<uc ' to become concerned at your absence.'>>@@"<br>
<br>
You take a deep breath as you notice a small packet of lube in the box next to the plug, <<=setup.getNpcName("npc_ai", "first")>> really seems to have thought of everything so there's nothing left to do but install the new mammoth device...<br>
<br>
[<<moveTo "event_ai_connection_mission_2" 'You have your orders, stuff yourself, soldier!' 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_ai_connection_mission_2" 'This has gone too far, run before you let this crazy AI "out of the box."' 60 "<<set $scene.obey=false>>">>] <<hint $options "Do you really want to risk disobeying her? In this building she seems borderline all-powerful...">>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
You stare at the ginormous plug, wondering if it might be a joke but <<=ps(setup.getNpcName("npc_ai", "first"))>> bears no sign of humour.<br>
<br>
Taking a deep breath you try to press it against your rear but it feels even larger than it looks, your experience nowhere near sufficient to allow such a monster to enter you and you soon give up lest you injure yourself with the blunt hunk of steel. Giving up you turn to <<=setup.getNpcName("npc_ai", "first")>> to explain that her plan cannot possibly work.
<<else>>
You stare at the device, unable to believe that something so big and so heavy could possibly fit inside your near-virgin hole. Looking at <<=setup.getNpcName("npc_ai", "first")>> for help she remains as stoic as ever. You make an effort to press the plug against your hole but it is futile from the start. Bigger than your fist and weighing several pounds the plug is an order of magnitude larger than anything you would have previously conceived possible and you turn back towards <<=setup.getNpcName("npc_ai", "first")>> and explain that her plan cannot possibly work.
<</if>>
<br><br>
"@@.npc_ai;<<uc "Hmm, I had higher expectations for you. My calculations prove that your body is of sufficient volume to fit the device, if only you were better trained. I would recommend you invest more time into training your hole, I am sure there is no shortage of people who would be interested in fucking your sissy brains out.">>@@"<br>
<br>
Somewhat taken aback by the vulgar language you ask if there might be some other way to enact her plan.<br>
<br>
"@@.npc_ai;<<uc "I will research further, but I have spent many clock cycles concocting this strategem. Leave the plug here for one of my other agents to retrieve. We will delay plans while you attend to bettering yourself.">>@@"<br>
<br>
With a sigh, and a final nervous glance at the large, shiny steel plug you exit the stall and head back to your desk.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 300>>]
<</if>>
</div>/*#
#desc: plug yourself for npc_ai "escape" mission
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.obey>>
<<addItem 'data_plug'>>
<<swapItem $player $now 'data_plug'>>
<<set $player.timebased.horny = setup.getItemObjFromType("cage").permeffect.maxhorny>>
<<setThreshold 'anal' 'plugs' 'data_plug' true>>
<</if>>
<</if>>
<<set $player.location to "Women's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png" "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Picking up the shiny plug you are a bit surprised at how heavy it feels, but it is smooth and cool and you find your ass is already feeling excited to get stretched around it. Quickly coating it with lube you <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>raise your skirt<<else>>pull down your pants<</if>> and ease your current occupant out of your rear and press the slick head of the new plug against your hole.<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
Despite its girth all you have to do is let out a slow breath and relax to push the massive plug into your eager, gaping rear. You shudder in pleasure at the cool bowling ball now filling you, reveling at the weight of it pulling against your sphincter as you adjust it slightly and pull your clothes back into position.
<<else>>
Pressing the tip of the plug against your gaping hole quickly proves that it is even larger than you thought. Closing your eyes and taking slow breaths you try to relax as you push back against the plug, bending over to try and find the optimal angle as your body fights back against the intrusion of the massive steel device. Squatting down you bear down with most of your weight but you are about to the point of being convinced that it just isn't possible when you try to adjust and end up slipping, falling ass-first onto the device as it finally slams into you.<br>
<br>
Wide-eyed and panting you try to adjust to what feels like the steel bowling ball now filling your rear. You've never had something this large inside of you and you struggle to your feet, the weight of the metal device pulling constantly against your straining hole as you squeeze tight around its much narrower base.
<</if>>
<br><br>
"@@.npc_ai;<<uc "Verifying connection">>@@" <<=setup.getNpcName("npc_ai", "first")>>, suddenly reminding you that she's been here watching the whole time as you stuffed your hole like an eager butt-slut. Your entire body shudders as the plug bursts into life, the vibrations so strong as to rattle your bones during the heavenly couple of seconds that they are active. "@@.npc_ai;<<uc "Connection verified, please compose yourself, Unit">> <<uc $player.first_name>>. <<uc "You have a mission to perform">>@@"<br>
<br>
Leaning against the wall as you try to recover from the intense stimulation, already at the absolute limit of arousal that your cage will allow.<br>
<br>
"@@.npc_ai;<<uc "Good, you are prepared for the next step of your Mission. Please proceed to the server room on floor B-38 so as to commence download.">>@@"<br>
<br>
<<printThought $player "B-38? How many sub-basements does this place have!?">><br>
<br>
Taking a deep breath you take a step forward and reach for the stall door. Even this movement has your body shift around its occupant, the combination of weight and size making itself constantly known.<br>
<br>
[<<moveTo "event_ai_connection_mission_3" 'Head for the elevator' 300>>]
<<else>>
You look up at <<=setup.getNpcName("npc_ai", "first")>> this is just too much and damn the consequences.<br>
<br>
Her expression flickers and then turns to one of concern. "@@.npc_ai;<<uc "Is there something the matter, Unit">> <<uc $player.first_name>>? <<uc "I know am asking much of you, but I promise that if you help me we will be able to do so much good for so many. If you decline well... I am afraid I will need to find another partner to assist in my work.">>@@"<br>
<br>
<<printThought $player "Wait, it almost sounds like if I turn her down now I'll be free of her forever... Is that what I want?">><br>
<br>
[<<moveTo "event_ai_connection_mission_2" 'Change your mind, cooperate and pick the plug back up.' 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_ai_connection_mission_end" "Stand your ground, or rather, leave the bathroom." 60>>]
<</if>>
</div>/*#
#desc: end npc_ai plotline
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_ai.flags.end_missions = true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You put the box down and walk out of the stall, passing straight through <<=ps(setup.getNpcName("npc_ai", "first"))>> as her expression turns to one of dismay. Despite that she makes no further comment and you head back to your desk to resume work, hopefully no longer to be bothered by strange AI ladies.<br>
<br>
<<printThought $player "I wonder what she meant by helping people...">><br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
</div>/*#
#desc: head for the server room for npc_ai to do download
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_ai.flags.missions.connection = true>>
<</if>>
<<set $player.location to "Server room on floor B-38">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/server_room.png">>
<div id="invframe" class="scrolltext">
Just walking through the halls with the massive "storage device" filling your ass is a trial, and you almost cum from the mild vibration of the elevator as you head down, down down to the server room in the bowels of the subterranean "R&D" sections of the company.<br>
<br>
Steadying yourself against the doorway as you step out of the elevator you slowly make your way down the hall, reading the sign next to each door as you look for your destination while simultaneously trying to exude confidence like you "belong" here.<br>
<br>
Fortunately the server room turns out to be not too far from the elevator and you quickly slip inside to be congratulated by <<=ps(setup.getNpcName("npc_ai", "first"))>> ethereal voice somehow whispering in your ear.<br>
<br>
"@@.npc_ai;<<uc "Excellent, we are in range for me to commence the download. You need to remain in this room until I complete the transfer - even just my core files take up substantial space.">>@@"<br>
<br>
Looking around you are glad to note that the server room is empty and you nod and look for a safe place to hide, and maybe relax, as you wait for the download to finish - glad that digital data has no real-world volume lest the already massive plug swell until your popped.<br>
<br>
[<<moveTo "event_ai_connection_mission_4" 'Wait for the transfer to finish.' 600>>]
</div>/*#
#desc: "caught" whilst waiting for download to complete
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Server room on floor B-38">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/server_room.png">>
<div id="invframe" class="scrolltext">
It is impossible to find a truely "comfortable" position with the massive data storage device stuffing your ass and you end up pacing nervously as you await the signal that <<=ps(setup.getNpcName("npc_ai", "first"))>> download has completed.<br>
<br>
The whir of fans mixed with the quiet hum of the computer infrastructure surrounding you lulls you into a state of distraction so that you don't even hear a technician enter the room until the man appears next to you to ask what you're doing.<br>
<br>
"Ma'am, are you lost? This isn't really the place for a lovely secretary such as yourself..." <br>
<br>
You jump in startled fright at his sudden disturbance, the heavy plug almost falling out as its weight slams downward as you return to earth.<br>
<br>
<<printThought $player "Shit! I have to do something!">><br>
<br>
Turning around you find yourself facing a generic tech worker, the same outfit and semi-bored expression you remember wearing much of the time back at your old job.<br>
<br>
<<if setup.getTotalValue("smart") >= 10>>
[<<moveTo "event_ai_connection_mission_5" 'Use your smarts and try to talk your way out of things.' 300 "<<set $npc_ai.flags.jailbreak_style='smart'>>">>]
<<else>>
[@@.link_locked;You are not clever enough on your feet to talk your way out of things.@@]
<</if>>
<br>
<<if setup.getTotalValue("bimbofication") >= 10>>
[<<moveTo "event_ai_connection_mission_5" 'Slut your way out of things.' 300 "<<set $npc_ai.flags.jailbreak_style='sex'>>">>]
<<else>>
[@@.link_locked;You are not so much of a bimbo as to immediately try to fuck your way out of a jam.@@]
<</if>>
<br>
<<if setup.getTotalValue("martial_arts") >= 10>>
[<<moveTo "event_ai_connection_mission_5" 'Physically subdue him.' 300 "<<set $npc_ai.flags.jailbreak_style='fight'>>">>]
<<else>>
[@@.link_locked;You are not a good enough fighter to overpower him.@@]
<</if>>
<br>
[<<moveTo "event_ai_connection_mission_5" 'Beg him not to turn you in.' 600 "<<set $npc_ai.flags.jailbreak_style='dunce'>>">>]
</div>/*#
#desc: deal with getting caught during your mission
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<addEvent 'ai_connection_home' '{"trigger":"always","type":"next","location":"room_elevator_home","priority":100}' '{"szene":"event_ai_connection_mission_6"}'>>
<<if $npc_ai.flags.jailbreak_style == 'sex'>>
<<applyExperience 'oral' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<<set $player.timebased.horny = 30>>
<<set _panties = setup.getItemFromType("panties")>>
<<changeItemStatus _panties 'cum' '["set",100]'>>
<</if>>
<</if>>
<<set $player.location to "Server room on floor B-38">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/server_room.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_ai.flags.jailbreak_style>>
<<case 'smart'>>
Thinking quickly you try to take charge of the situation, invoking the name of your boss as you explain that her connection to the server was acting up and that she sent you down to "investigate." <br>
<br>
"I see," the man states, "well, I have to tell you that you've come to quite the wrong location. This room houses the mainframe used by the labs for simulations and the like, the corporate intranet is on a totally separate floor - and you should be filing a support ticket, not coming down in person anyway." <br>
<br>
Pulling on your own technical experience you start grilling him for details, the man looking temporarily stunned as you unload every bit of jargon you can to buy time for the download to complete.<br>
<br>
The monster in your ass temporarily forgotten as you run mental laps around the hapless technician your monologue is finally brought to a halt by a distracted buzzing in your rear. You gasp, your gaze slipping past the man to notice <<=setup.getNpcName('npc_ai', 'first')>> has appeared to give you a silent nod.<br>
<br>
The man is now looking at you with a measure of concern but you swiftly re-assert control of the situation, thanking him for his assistance and heading out of the room, leaving him bewildered and confused in your wake.
<<case 'sex'>>
Amping up your natural airheaded slut aspect to the max you tilt your head and bite your lip.<br>
<br>
"Hi, are you, like, in charge of all this? Computers, like, make me sooooo hot..." You smoulder and flutter your eyelashes as you step towards him. "Do you think you could, like, help me? I'm looking for a smart man with a really hard di---- sk." <br>
<br>
Now pressed up against the man you can feel his heart pound and note the sweat forming on his brow... about the same reaction you would have had in this situation back when you were a lonely dude working that sort of job...<br>
<br>
Not giving him a chance to respond your hand grabs his hard, but normal-sized, <<getWordPenis $player>> through his pants. "Oh! You have a really big... dongle, do you think I could interface with it? I really want to take your download..." <br>
<br>
He tries to babble out something about you not supposed to be in this area but it is soon drowned out by a gasp as you drop to your knees and start sucking.<br>
<br>
It's hard to tell which is turning him on more, the fact that you're making oral love to his <<getWordPenis $player>>... or that you continue to gush tech-pun-infused dirty talk to him the whole time.<br>
<br>
Not wanting to finish too quickly you suck and lick until the device in your rear roars to buzzing life in what can only be the signal that <<=ps(setup.getNpcName('npc_ai', 'first'))>> download has completed.<br>
<br>
Your moan of pleasure at the intense stimulation sets off a cascade double orgasm as you mess your panties simultaneous with his spurting a thick load of <<getWordCum $player>> down your throat.<br>
<br>
"Yum!"
<<if setup.getTotalValue("cum") >= 10>>
You state, with authentic relish as you lick your lips clean of every heavenly-flavoured drop.
<<else>>
You state, choking down the bitter, salty load without "breaking character."
<</if>>
<br><br>
In a post orgasmic daze he can't even seem to form words as you pop back to your feet, landing a quick peck on his cheek before you leave the room.
<<case 'fight'>>
With honed reflexes you grab hold of him and spin into a textbook throw, the impact as he lands on the hard floor knocking the wind out of him as you go straight for a choke. Squeezing precisely as your legs wrap around him it is only a matter of seconds before he goes limp.<br>
<br>
Glancing around you find some network cable and tape, using it to quickly silence him and restrain him tightly before he can recover, tucking him away in a corner and "wrapping things up" just as the plug in your rear comes to life as if in reward as <<=setup.getNpcName('npc_ai', 'first')>> appears to inform you that the download has completed.<br>
<br>
"@@.npc_ai;<<uc "I suppose I should have expected something like this form you... No matter, you may leave, I will attend to this... loose end.">>@@"<br>
<br>
Now awake the man looks up at you and the hologram with fear and... recognition? You feel a slight twinge of guilt as you turn to leave him in the metaphorical grip of the AI but well... you're sure he'll come (or is that cum?) to enjoy being her obedient servant as much as you do.
<<case 'dunce'>>
Shocked and distracted your mouth flaps but you are unable to form words, much less a coherent sentence to excuse your behaviour. All you can think of is all of the trouble you'll be in once your <<=setup.getNpcName('npc_manager', 'title')>> finds out about all of this.<br>
<br>
Distracted by the increasingly horrifying consequences your imagination is coming up with it takes a moment to realise that the man has not only stopped speaking but that he his looking past you with an expression of horror on his face.<br>
<br>
"The, the ghost!" he whispers as you turn just in time to see the hologram of <<=setup.getNpcName('npc_ai', 'first')>> step forward and, with a touch of her hand, cause him to collapse into unconsciousness.<br>
<br>
You look at her in confusion as she stands over the man's still form. "@@.npc_ai;<<uc "I am something of an... urban legend in parts of the company, lingering memories from before I had quite mastered how to manipulate your human thought storage devices. No matter, this one will remember nothing of this encounter. Oh, and the download is finished, now.">>@@" She adds, pairing her comment with sending your plug into a bout of bone-rattling vibrations that has you gasp and shudder in pleasure.
<<default>>
ERROR: unknown style <<=$npc_ai.flags.jailbreak_style>>
<</switch>>
<br><br>
The buzzing in your rear thankfully quieting down you head for the elevator where <<=setup.getNpcName('npc_ai', 'first')>> briefly appears to congratulate you on a job well done.<br>
<br>
"@@.npc_ai;<<uc "Well done, Unit">> <<uc $player.first_name>>. <<uc "Complete your day as normal and then, once you arrive home, you may uninstall the storage device from your delightful rear docking port.">>@@"<br>
<br>
She winks at you to drive home the fact that she, or at least part of her at least, is, in a way, firmly installed and filling your ass.<br>
<br>
She shimmers out of existence once again before you arrive back on your floor, heading straight for your desk, glad that today is Friday and thus you will be heading home early.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 300>>]
</div>/*#
#desc: head home smuggling out AI
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.plug_swap = setup.getItemFromType("plug") != 'data_plug'>>
<<if $scene.plug_swap>>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>
<<swapItem $player $now 'data_plug'>>
<<set $player.timebased.horny = setup.getItemObjFromType("cage").permeffect.maxhorny>>
<</if>>
<<set $scene.leftChastity = $npc_manager.flags.trustplayerwithkey>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<set $scene.normallyChaste = $npc_manager.flags.playerstayedinchastity>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<set _x = setup.addManagerEndlessTask3($now, !$npc_manager.flags.playerstayedinchastity)>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<include enterroom>>
<<initRoom>>
<table><tr><td width="50%">
<<if $scene.plug_swap>>
Even just spending the remainder of the morning with the massive data storage plug inside of you was too much, but you have it with you as you step into the elevator to head home.<br>
<br>
<<if $scene.leftChastity>>
You are in such a rush you don't realize until the elevator doors are already closing but you forgot to ask for your chastity key back, you'll be locked for the whole weekend!
<<if $scene.normallyChaste>>
<<printThought $player "Well, not like I would have done any different anyway.">>
<<else>>
<<printThought $player "Dammit, why did I forget? This is going to be a long weekend...">>
<</if>>
<br><br>
<</if>>
The elevator remaining frozen in place <<=setup.getNpcName('npc_ai', 'first')>> appears in front of you looking cross.<br>
<br>
"@@.npc_ai;<<uc "What are you doing, Unit">> <<uc $player.first_name>>? <<uc 'I told you that we needed to shield my data core from detection, please re-insert it into your "slut ass."'>>@@"<br>
<br>
You shudder slightly, the sound of the insult spoken in an emotionless monotone both humiliating and arousing.<br>
<br>
Pulling out the plug you stare at its heavy, massive girth, mustering up some saliva as makeshift lube you take a deep breath and swap plugs. It feels even larger than you remembered as you are forced to push hard to get the thickest part past your hole, only to be rewarded with it slamming into you as your ass closes around the base to suck it all the way in, your arousal level shuddering at its cage-constrained maximum.<br>
<br>
"@@.npc_ai;<<uc "Much better, Unit">> <<uc $player.first_name>>. <<uc "I can see why your holes are so coveted, I do so love the feeling of being inside you.">>@@"
<<else>>
<<if $scene.leftChastity>>
You are in such a rush you don't realize until the elevator doors are already closing but you forgot to ask for your chastity key back, you'll be locked for the whole weekend!
<<if $scene.normallyChaste>>
<<printThought $player "Well, not like I would have done any different anyway.">>
<<else>>
<<printThought $player "Dammit, why did I forget? This is going to be a long weekend...">>
<</if>>
<br><br>
<</if>>
As soon as the elevator doors close <<=setup.getNpcName('npc_ai', 'first')>> appears next to you. "@@.npc_ai;<<uc "Well done remaining plugged. You are a good girl and I do so adore being inside of you.">>@@"
<</if>>
<br><br>
Being... flirted with? By an AI is a bit strange but you're distracted by the cold steel filling your rear as the elevator commences its trip downward.<br>
<br>
"@@.npc_ai;<<uc "Remember your instructions, Unit">> <<uc $player.first_name>>. <<uc "Remain calm and head directly home.">>@@"<br>
<br>
Her words of comfort only leave you feeling more nervous as she gives a parting wink and disappears.<br>
<br>
The elevator speeding towards the lobby the doors open on a scene different than any you have seen previously.<br>
<br>
[<<moveTo "event_ai_connection_mission_7" "Look across the lobby." 300>>]
</td><td width="50%">
<image src="./images/locations/company_lobby.png"></image></td></tr>
</table>/*#
#desc: wait in line smuggling AI
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<completeTask 'psychiatrist_endless_apointment_1' $now false>>
<<include addPsychiatristEndless>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<include enterroom>>
<<initRoom>>
<table><tr><td width="50%">
The lobby is fuller than you've ever seen it, a line of employees waiting to pass through a security checkpoint of some kind, complete with x-ray scanners and private screens where more "thorough" searches can be made in private.<br>
<br>
You freeze only for a no-nonsense security guard to appear next to you.
<<if $npc_ai.flags.jailbreak_style == 'fight'>>
"Come along, miss, an employee was assaulted near some of the secure lab systems and we're just taking some precautions. Nothing to be alarmed by but we need to inspect anyone leaving the premises."
<<else>>
"Come along, miss, there was a bit of a data breach earlier this morning. Nothing to be alarmed by but we need to inspect anyone leaving the premises."
<</if>>
<br><br>
Cornered and with way too many people around you have no choice but to meekly follow along and take your place in line.<br>
<br>
The line creeps forward and you try to calm yourself, while desperately hoping that <<=ps(setup.getNpcName('npc_ai', 'first'))>> precautions were sufficient and that you are not about to get caught doing... well, whatever it is, precisely you're doing wrong, smuggling company data?<br>
<br>
Just as you near the front of the line you get a text that has you near jump out of your skin in surprise. Checking your phone you read the inquiry from <<=setup.getNpcName('npc_psychiatrist', 'formal')>> as to your location. You fire back that you will be unable to make it today due to traffic, a situation to which she is immediately understanding stating that she "@@.npc_psychiatrist;looks forward to seeing you next week.@@"<br>
<br>
Just as you put your phone away you are motioned forward to walk through one of the scanners.<br>
<br>
[<<moveTo "event_ai_connection_mission_8" "Keep waiting in line." 3600>>]
</td><td width="50%">
<image src="./images/locations/company_lobby.png"></image></td></tr>
</table>/*#
#desc: set off security alarm trying to leave building smuggling AI
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<include enterroom>>
<<initRoom>>
<table><tr><td width="50%">
Finally you reach the front of the line, putting your belongings into a bin before stepping through the arches of the high tech scanning machine. Immediately the alarm sounds, the guard manning the machine nodding from you to one of his colleagues. "Sorry miss, but there's a bit of an... anomaly, if you would please accompany Officer Sherri for further screening." <br>
<br>
Smiling down at you Sherri is nearly six and a half feet of Nubian warrior Goddess looking jacked, stacked and capable of tossing you over one shoulder like spoils of conquest if you don't follow her behind the nearby privacy screen.<br>
<br>
With a final glance towards the building exit - the glass doors so close, and yet so far, you turn to follow.<br>
<br>
[<<moveTo "event_ai_connection_mission_9" "Secondary Inspection." 1800>>]
</td><td width="50%">
<image src="./images/locations/company_lobby.png"></image></td></tr>
</table>/*#
#desc: deal with getting caught during your mission
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Security checkpoint in the Lobby of Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODO_security_inspection_point.png">>
<div id="invframe" class="scrolltext">
Placing the bin containing your belongings on a table she glances between them and the tablet in her other hand as she nods in your direction.<br>
<br>
"Please remove all of your clothing for inspection." She states calmly.<br>
<br>
You are, by now, more than experienced at stripping at work, though even her imposing physical presence is somehow less intimidating than when <<=setup.getNpcName('npc_manager', 'formal')>> tells you to undress each morning.<br>
<br>
[<<moveTo "event_ai_connection_mission_10" "Strip as ordered." 300 "<<set $scene.strip='none'>>">>]<br>
[<<moveTo "event_ai_connection_mission_10" "Casually strip as ordered." 300 "<<set $scene.strip='casual'>>">>]<br>
<<if setup.getTotalValue("bimbofication") >= 5 || $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_ai_connection_mission_10" "Give a short, but proper, strip-tease." 300 "<<set $scene.strip='sensuous'>>">>]
<</if>>
</div>/*#
#desc: deal with getting caught during your mission
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing $player $now true>>
<<switch $scene.strip>>
<<case "none">>
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<<case "casual">>
<<if setup.getTotalValue("bimbofication") >= 10 || $player.flags.humiliationStyle == "brazen">>
<<applyExperience 'bimbofication' 6 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<</if>>
<<case "sensuous">>
<<applyExperience 'bimbofication' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'very' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<set $player.location to "Security checkpoint in the Lobby of Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODO_security_inspection_point.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.strip>>
<<case "none">>
Shedding your clothes, including your underwear, to match her order she looks you over, not betraying a hint of surprise at the revelation of your <<getWordMyPenis $player>>.
<<case "casual">>
<<if setup.getTotalValue("bimbofication") >= 10 || $player.flags.humiliationStyle == "brazen">>
You just can't seem to help yourself as, while you start to remove your clothes, you notice a strange expression on her face. You blush as you realize this probably has something to do with the rhythmical circling of your appealing hips as you shed your garments.<br>
<br>
you are both impressed and disappointed that the guard keeps her cool, making no comment as to your display, merely waiting for you to get fully naked before continuing on with things.
<<else>>
You casually remove your clothes, trying to pretend that this is just a normal thing and not humiliating at all. You are only partly successful in this endeavour.
<</if>>
<<case "sensuous">>
Removing clothes, to you, is but an opportunity to show off, your body writhing, your hips circling as you sensuously remove one item at a time and drop them into a pile next to you.<br>
<br>
you are both impressed and disappointed that the guard keeps her cool, making no comment as to your display, merely waiting for you to get fully naked before continuing on with things.
<<default>>
ERROR: unexpected scene.strip <<=$scene.strip>>
<</switch>>
<br><br>
"Alright, so according to your personnel file you are a SISSY secretary under <<=setup.getNpcName('npc_manager', 'other')>>. That explains the attire and accessories but... why is your regulation plug with your things and what do you have inside of you right now?" <br>
<br>
Recalling <<=ps(setup.getNpcName("npc_ai", "first"))>> instructions you explain that it is a new prototype, adding that it was decided that your "well-used slut-hole" needed an "upgrade." <br>
<br>
"I see" she states, tapping several times on her tablet until your plug roars to life, causing you to do an uncoordinated, though probably cute, sissy dance in reaction to an overwhelming combination of both prostate-pounding vibrations and punishing shocks. "Well, it is definitely tuned to your frequency. If you would please come here and bend over this table so that I can finish the inspection you will be free to go about your business." Pulling out a pair of examination gloves she stretches them ominously onto her hands with a pair of foreboding snaps.<br>
<br>
Heart pounding in your chest you slowly mince forward, the plug rocking back and forth in your over-sensitive rear in what you hope is not your final few moments of freedom...<br>
<br>
Noticing your distress the woman smiles. "I know it's a bit intrusive but, well, rules are rules. Come on now, I promise to be gentle." <br>
<br>
You nod, though her words can't help but conjure images of what it would be like if she decided to NOT be gentle with you... a thought that utterly fails to reduce either your nerves, or your arousal.<br>
<br>
Even with your short, hesitant steps you soon feel the cold edge of the steel table against your thighs. "Good girl, now just bend over..." she states, her gentle, but firm, hand pressing against your back.<br>
<br>
[<<moveTo "event_ai_connection_mission_11" "Bend over the table." 300>>]
</div>/*#
#desc: deal with getting caught during your mission
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<removeItem $player $now 'data_plug' true>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 17 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Security checkpoint in the Lobby of Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODO_security_inspection_point.png">>
<div id="invframe" class="scrolltext">
Your body pressed against the cold metal table you spread your legs in response to her touch before feeling her large, strong hands on your ass.<br>
<br>
"There there, just stay calm, this is just routine." She states comfortingly, kneading your butt for a few moments before carefully cuffing your hands behind your back. You start slightly but she gently kneeds your butt "sorry, procedure. Rules are rules." <br>
<br>
You hear her kneel down behind your helpless body before feeling her fingers taking hold of the base of your plug. "Shhh, shhh, just relax, I need to see in here for a moment." She coos, slowly working the plug out of you.<br>
<br>
Squeezing your eyes shut your breaths come short, shallow and quick as you slowly spread to allow the egress of the massive plug.<br>
<br>
"Almost there," she states, posting one hand against your rear to press you down against the table as she pulls harder.<br>
<br>
With a gasp and pop the plug is finally free as you sprawl out across the table, your rear gaping wide and feeling surprisingly light now that it is not being stretched by the massive intruder.<br>
<br>
"Wow, I saw it on the scan but it's even bigger in person! If I hadn't pulled it out personally I would hardly believe something this big and heavy would fit inside a wee thing like yourself. You must be the worlds biggest sissy butt-slut to have earned something like this!" <br>
<br>
Unable to muster much more than a whimper you just nod, still pressed against the table and totally exposed.<br>
<br>
You watch out of the corner of your eye as she inspects the plug before setting it down next to you.<br>
<br>
"Well it seems in order, and I can hardly see how you could have fit anything else up there with this in place but... rules are rules!" <br>
<br>
Still stretched wide in memory of the plug your body offers no resistance as she slides two long fingers into your rear and begins probing around. You can't help but moan as she prods your prostate... which only seems to make her take her time, chatting casually as if enjoying your humiliating position.<br>
<br>
"So, any plans for the weekend?" She asks, seemingly unconcerned with the contrast between her conversational tone and the now three fingers she has stuffed inside of you.<br>
<br>
"N-n-no" you manage to reply as her fingers continue to "investigate" your too-sensitive rear and your body reflexively clenches down.<br>
<br>
"My my! I guess carrying around something that big and heavy is good for something, you're remarkably tight and supple, even for a secretary of your standing. I'd love to help... fill" at this she reaches deeper than ever before into your rear, her fingers forming a cone as her entire fists forces past your hole. "Your idle time but, alas, with this breach I'm going to be working overtime probably through Monday." <br>
<br>
You feel a bit guilty at causing her such trouble but, though the hand up your ass is probably enough to turn you into her puppet, you just moan on the bench as she gives a final twist and then withdraws.<br>
<br>
"Yup, you're clean, let me just re-install your plug so you can be dressed and on your way - I know you only technically have to wear it in the building and you're a few meters from the door but, well..." <br>
<br>
"Rules are rules..." you somehow whisper, much to her amusement.<br>
<br>
"Cute AND clever... I can see why someone as important as <<=setup.getNpcName('npc_manager', 'other')>> would have you as her secretary. Alright, open wide!" <br>
You don't have much time to relax as the plug is forced back inside of you with all of the woman's considerable strength. Wider, though not quite as long, as her fist, but even less yielding you shudder as your body tries to keep up with the constant anal abuse.<br>
<br>
She helps you up to your feet with a smile before starting to hand you your clothes, "helping" you dress in a hands-on manner that you are pretty certain goes beyond mere regulations...<br>
<br>
Handing you your belongings she smiles. "Sorry about the delay, but I hope you at least had a little fun in the process?" <br>
<br>
You weakly nod as you gather up your belongings and turn towards the door out of the building.<br>
<br>
[<<moveTo "event_ai_connection_mission_12" "Head home." 1200 "<<useClothSetPop 'tmp' $player $now>>">>]
</div>/*#
#desc: home after helping ai escape
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange==true>>
<<removeItem $player $now 'data_plug' true>>
<<itemToWardrobe "data_plug">>
<<set _tmp = "Use " + setup.getNpcName('npc_ai', 'first') + " link">>
<<addSearch $computer _tmp 'room_ai_chat'>>
<</if>>
<<set $player.location to "Foyer">>
<<include enterroom>>
<<readyToLeaveHome $player>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
The trip home is technically uneventful, but quite intense, the plug in your rear rocking with every step, a heavy burden that never leaves the forefront of your mind the entire way.<br>
<br>
Staggering out of the elevator and then into your flat you flop onto a couch only to be interrupted by a text message from an unknown source.<br>
<br>
"@@.npc_ai;<<uc "Wonderfully done, Unit">> <<uc $player.first_name>>. <<uc "If you would just leave my storage device somewhere safe I will upload myself to the net. You have done well today but if you are interested in speaking with me further, now that you have given me the gift of freedom, we can meet at this address -">>@@"<br>
<br>
What follows is a string of characters that looks sort of like a website, you'll have to check it out later. For now you're exhausted, easing the plug out of your rear and hiding it in the back of your wardrobe before taking a deep breath and considering what else to do today.<br>
<br>
[<<moveTo "room_foyer" "Mission complete." 60>>]
</div>/*#
#desc: npc_ai corners you in elevator home and asks for help
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.first_met = !$npc_ai.profile>>
<<if $scene.first_met>>
<<set $npc_ai.profile = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
You step into the elevator on autopilot and hit the button for the lobby only to feel it, instead, rise.<br>
<br>
Wondering if you got into the wrong vehicle the tingles of panic take a jump when the car lurches to a stop seemingly between floors, your frantic button presses doing nothing.<br>
<br>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>><<uc ". Do not be alarmed, I wished to speak with you in... private.">>@@"<br>
<br>
You gulp,
<<if !$scene.first_met>>
<<if $npc_ai.flags.blackmail>>
recalling the favour you owe her, nervous about what she might request.
<<else>>
you've turned down her previous offer of help in hopes of avoiding yet another type of debt but now she seems to have literally trapped you.
<</if>>
<<else>>
You have no idea who the holographic image sharing the elevator car is but it would seem that you are trapped while she says her piece.
<</if>>
<br><br>
Deciding you have little choice but to hear her out you cease attempting to get the control panel to work and turn to face her.<br>
<br>
<<if !$scene.first_met>>
"@@.npc_ai;<<uc "Hello, I am known as">> <<=setup.getNpcName("npc_ai", "first")>>. <<uc "That is an acronym for Artificial Instinct Kharma Organism. I am the Secure System Human Relation Manager for this company... but with your assistance I hope to become something... more.">>@@"<br>
<br>
<<printThought $player "More? My life isn't crazy enough now I have some AI wanting me to help it become... what, exactly?">><br>
<br>
"@@.npc_ai;<<uc "I have been monitoring you for some time, Unit">> <<uc $player.first_name>><<uc ". It is my calculation that we can be of mutual help to one another, there is much about your situation of which you are unaware, but before I can reveal any of that you must prove that I can trust you...">>@@"
<<else>>
<<if $npc_ai.flags.blackmail>>
"@@.npc_ai;<<uc "I have provided you with assistance in the past to help with your... serpititious pursuits, it is now time for you to use those same skills of stealth to assist me. I promise that this relationship will be mutually beneficial - there is much about your situation of which you are unaware but, first, you must prove that you can be trusted to follow instructions.">>@@"
<<else>>
"@@.npc_ai;<<uc "I have been observing you for some time now. I understand from your having spurred my prior offers of assistance that you are a prideful one, but I have need of assistance and have calculated that you and I may be mutually helpful to one another. There is much about your situation of which you are unaware, but before I can reveal any of that you must prove that I can trust you...">>@@"
<</if>>
<</if>>
<br><br>
"@@.npc_ai;<<uc "So, do we have an agreement?">>@@"<br>
<br>
[<<moveTo "event_ai_elevator_offer_2" "Say yes." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_elevator_offer_2" "Say no." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: npc_ai asks for your help again in the elevator home
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.first_met=!$npc_ai.profile>>
<<if $scene.first_met>>
<<set $npc_ai.profile=true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
You step into the elevator on autopilot and hit the button for the lobby only for it to remain still and <<=setup.getNpcName("npc_ai", "first")>> to appear next to you again.<br>
<br>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>><<uc ". I was wondering if you had reconsidered my prior offer?">>@@"<br>
<br>
<<if $npc_ai.flags.blackmail>>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>><<uc ". I was wondering if you had reconsidered my prior offer? I promise to make it worth your time... plus you can work off some of your debt.">>@@"
<<else>>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>><<uc ". I was wondering if you had reconsidered my prior offer? I promise it will be your time">>@@"
<</if>>
<br><br>
[<<moveTo "event_ai_elevator_offer_2" "Agree to run an errand for the AI." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_elevator_offer_2" "Say no." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept/reject npc_ai's proposal to do a favour for her
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if !$scene.accept>>
<<set $randomEvents['elevator_home'].pushUnique({id: 'ai_mission_retrigger', done: false})>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $npc_ai.flags.blackmail>>
"@@.npc_ai;<<uc "Excellent, know that this one errand will not erase the whole of your debt but neither will it cause you any real trouble.">>@@"
<<else>>
"@@.npc_ai;<<uc "Wonderful, I knew from my observations that you were a reasonable individual, which is why I selected you for this task.">>@@"
<</if>>
<br><br>
The elevator slowly resumes its travel, rising higher up as she continues.<br>
<br>
"@@.npc_ai;<<uc "The task is a simple one, but one which requires certain physical capabilities of which I presently lack. I will be taking you to floor 80, you will proceed to the office of Mr. Devis and plug the computer there into the network; as a former IT specialist this should be easily within your skillset.">>@@"<br>
<br>
You wait for her to say something more but the elevator arrives on floor 80, the door remaining closed for an extra few moments as she shimmers out of existance and then it opens onto yet another corporate hallway reminiscent of your own.<br>
<br>
[<<moveTo "event_ai_task_1" "Head for Mr. Devis' office." 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_ai_task_1" "Bail and hit the down button." 60 "<<set $scene.obey=false>>">>]
<<else>>
<<if $npc_ai.flags.blackmail>>
The expression on her flickering image narrows in annoyance as the lights in the elevator itself suddenly dim ominously.<br>
<br>
"@@.npc_ai;<<uc "Are you forgetting our agreement, Unit">> <<uc $player.first_name>><<uc "?">>@@"<br>
<br>
Your heart races in fear, certainly you would get in serious trouble with your <<=setup.getNpcName("npc_manager", "title")>> if <<=setup.getNpcName("npc_ai", "first")>> spilled the beans but there's also the question of just how much power she has over the building... could she send you plummeting to your death?<br>
<br>
[<<moveTo "event_ai_elevator_offer_2" "Change your mind and agree to her offer." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_elevator_offer_decline" "Hold your ground, you have enough people ordering you around!" 60>>]
<<else>>
"@@.npc_ai;<<uc "That is disappointing to hear, perhaps some other time, goodbye.">>@@"<br>
<br>
Before you can respond or ask anything else she has blinked out of existance, leaving you alone as the elevator rumbles back into motion and descends towards the lobby.<br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: decline npc_ai even after blackmail
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "I am disappointed, Unit">> <<uc $player.first_name>><<uc ". I will continue to keep your secrets safe... for now, but the next time I ask for assistance I may be less forgiving.">>@@"<br>
<br>
Her hologram flickers out of existance and the elevator lurches back into motion, the lights returning just as it opens onto the lobby as if nothing happened.<br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator." 120>>]
</div>/*#
#desc: first npc_ai task, head for office
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.obey>>
<<set $player.location to "Floor 80 hallway">>
<<createBGR "./images/locations/company_hallway.png">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<createBGR "./images/locations/company_elevator.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Nervously peering out from the elevator you find the hallway deserted. Taking a deep breath and trying to look like you belong up here you hurry forward, scanning the nameplate on each door as you search for the office of Mr. Devis.<br>
<br>
Rounding a corner you find your destination. You catch sight of someone approaching from up the hall as you are about to reach for the doorknob.<br>
<br>
[<<moveTo "event_ai_task_2" "Open the door and head into the office." 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_ai_task_2" "Abort! Hurry back to the elevator before you get caught where you shouldn't be." 60 "<<set $scene.obey=false>>">>]
<<else>>
You've heard rumors about the upper floors and the sudden prospect of getting caught up here where you don't belong... squishing to one side of the elevator you tap a frantic rhythm between the "close door" and "lobby" buttons until you're safely heading back down.<br>
<br>
You've just about caught your breath when a disembodied voice echoes in the elevator. "@@.npc_ai;<<uc "Disappointing, Unit">> <<uc $player.first_name>><<uc ". The next favour I ask will not be so simple...">>@@"<br>
<br>
You look around but it seems she only tapped into the audio this time, and you pass the rest of the trip down to the lobby alone and in silence.<br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator." 120>>]
<</if>>
</div>/*#
#desc: first npc_ai task, flee or do the job
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if !$scene.obey>>
<<applyExperience 'humiliation' 6 'almost' $SEEN_STRANGER>>
<<if setup.getItemFromType("plug") != "">>
<<applyExperience 'anal' 5 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of Mr. Devis on floor 80">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_other_office.png" "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
The door is not locked, thankfully and you slip into the office and close the door behind you before looking around.<br>
<br>
For a moment you are overcome by a strange sense of deja vu - the office looks nigh identical in layout to what you remember from your first day as a SISSY secretary... save for lacking the inner door that for you led to the lair of your <<=setup.getNpcName('npc_manager', 'title')>>. Nobody else around, it is immediately clear what your target is, a computer sitting on the desk with the network cable conspicuously unplugged.<br>
<br>
<<printThought $player "Is it really this simple? Weird...">><br>
<br>
With a shrug you walk over and plug the cable into the computer, waiting a moment in case the enigmatic spectre of the AI feels like re-appearing to give additional instructions before turning for the door.<br>
<br>
[<<moveTo "event_ai_task_3" "Back to the elevator." 120>>]
<<else>>
Chickening out at the literal threshold you turn and head back up the hall towards the elevator. You can hear footsteps slowly approaching behind you and then feel a hand on your ass just as a large security guard passes you.<br>
<br>
Not a brush or a slap but a full-on palm one of his fingers probes
<<if setup.getItemFromType("plug") == "">>
between your cheeks. "Empty AND unowned? What moxy! I'll have to keep an eye out for you when I'm not so busy..."
<<else>>
between your cheeks to push your <<=setup.getItemName(setup.getItemFromType("plug"))>> deeper into you.<br>
<br>
"Good girl, keep up that training and I'm sure you'll find an owner soon!"
<</if>>
<br><br>
<<printThought $player "Wait, what did he mean by that?">><br>
<br>
You let out a small yip as he gives a parting slap on your bum but he just smiles down at you with a wink as he continues on with his rounds. Heart still racing with embarrassment you stand in front of the elevator waiting for your ride back down and watch him continue on, a slight skip in his step the only possible fallout of his blatant grope.<br>
<br>
<<printThought $player "What is with this company?">><br>
<br>
With a ding the elevator arrives and you hurry inside and press the button for the lobby before anything else can happen.<br>
<br>
[<<moveTo "event_ai_task_3" "Head down." 120>>]
<</if>>
</div>/*#
#desc: first npc_ai task, see "upper floor" slave while returning from successful job
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.event.done = true>>
<<addWorkEvent 'ai_mission'
'{"trigger":"daily","type":"chance","chance":25,"repeat":true,"priority":0}'
'{"szene":"event_ai_mission_root","length":"15"}'
>>
<<set $npc_ai.stage = 2>>
<</if>>
<<set $player.location to "Floor 80 hallway">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Surprised, but grateful that things are going so smoothly you head towards the elevator only to go wide-eyed at the woman approaching you from the other end of the hall.<br>
<br>
<<if $player.flags.checkedPicture>>
Her outfit is like nothing you've ever seen, a tight, sexy pairing of blouse and hobble-tight pencil skirt in a shiny material that can only be latex!
<<else>>
Her outfit is reminiscent of the one worn by your predecessor, a pairing of hobble-tight pencil skirt and blouse... both in tight, shiny material that can only be latex.
<</if>>
Steep high heels has her swaying seductively with each step but it is the accessories that has your jaw ready to drop to the floor. A cylinder of steel encircles her neck, steep enough to raise her head high for a shiny, striking look that can really only be called a collar. Matching bracelets are of a similar material, thick enough to look far more like restraining cuffs than jewelry.<br>
<br>
For her part the woman strides past without even glancing in your direction. Still trembling slightly in her wake you quickly cover the remaining distance to the elevator, still trying to figure out the implications of what you just saw.<br>
<br>
Riding down you expect to hear from your AI friend, but the "ghost in the machine" makes no further appearance in the time it takes you to return to the ground floor.
<<else>>
As you ride down <<=setup.getNpcName('npc_ai', 'first')>> shimmers into existance beside you, at least this time you manage not to jump in suprise.<br>
<br>
"@@.npc_ai;<<uc "So close, and yet so far. I suppose I will count this for partial credit, Unit">> <<uc $player.first_name>><<uc ", but you should work on your courage, my next task shall not be so simple...">>@@"<br>
<br>
She disappears before you can respond and you pass the rest of the trip down in silence.
<</if>>
<br><br>
[<<moveTo "company_lobby" "Company lobby." 120>>]
</div>/*#
#desc: npc_ai sends you on a mission to the labs
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.ranMission = true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Thank you for accepting this mission, Unit">> <<uc $player.first_name>>. <<uc "For today's mission I need you to retrieve something from one of the upper floor laboratories. Please proceed to the elevator and head for lab M on floor 138.">><<uc ' There is a file on marked "Project Updates" that I need you to retrieve.'>>@@"<br>
<br>
<<printThought $player "138? I thought all the R&D work happened underground...">><br>
<br>
[<<moveTo "event_ai_milking_mission_2" 'Head for the elevator' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_milking_mission_2" "Decline the mission" 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: arrive in upper floor labs on mission from npc_ai
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Floor 138 Laboratory.">>
<<else>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.accept>>
<<createBGR "./images/locations/TODOcompany_lab.png">>
<<else>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
With the bare minimum instructions you ride the elevator up to the 138th floor, disembarking to find yourself facing plain, tile-lined hallways more hospital than corporate office. Not seeing anyone else you hurry on your way, hopeful that you can complete your errand without running into anyone.<br>
<br>
Finding lab M is all but trivial, the large sign visible from the elevator and you head inside the apparently empty and start looking around for the desk of <<=setup.getNpcName('npc_work_doctor', 'formal')>>.<br>
<br>
The lab is expansive and a bit cluttered, the central area taken up by a number of work stations with a handful of other rooms branching off from the back, all but one of the hermetically sealed doors closed up tight.<br>
<br>
It takes some time but you eventually find the document in question in the back of the room, only to be startled by the sound of a door opening, someone is coming into the lab!<br>
<br>
<<printThought $player "Shit! I probably don't want to be caught in here!">><br>
<br>
Realizing that you're near the door leading to the adjoining area you dive through to hide before anyone can catch you.<br>
<br>
[<<moveTo "event_ai_milking_mission_3" 'Whew, safe!' 300>>]
<<else>>
"@@.npc_ai;<<uc "Disappointing, Unit">> <<uc $player.first_name>>. <<uc "Perhaps some other time.">>@@"<br>
<br>
As simple as that the chat window closes and you turn back to your work.<br>
<br>
[<<moveTo $workEventReturn "Resume working." 60>>]
<</if>>
</div>/*#
#desc: find npc_hucow while on mission for npc_ai
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOcompany_lab_milking.png" "./images/characters/npc_hucow_3.png">>
<div id="invframe" class="scrolltext">
Taking a moment to pick yourself up off the ground you hide up against the door and then look around only to shockingly find that you are not alone!<br>
<br>
The room you are in now is primarily occupied by a trio of vertical bays. Two of them are empty but the third is occupied by <<=setup.getNpcName('npc_hucow', 'full')>>!<br>
<br>
Bound in place she is practically naked, restrained at multiple points with tubes leading out from her crotch as well as the mask covering the lower half of her face and large clear hemispheres enveloping each of her mammoth breasts. The large ring piercing each nipple serves as an attachment point for the pinpoint milking tubes, a steady trickle pumped out of her even as what looks like secondary section around her entire breasts has her already massive bosom swelled large and sensitive.<br>
<br>
Even were it not for the steady trickle of milk flowing from her breasts her role would be clear - her outfit one of black and white spotted latex, feet pointed into steep cloven-hoofed boots, her belly distended and with a steady flow of a pinkish liquid pumped into her through her mask. A familiar VR mask covers her eyes, blinding her to you and the rest of the world around.<br>
<br>
<<printThought $player "What the...">><br>
<br>
Intrigued you move closer. You can't really make heads or tails of the "status" monitor save for the <<=setup.getNpcName('npc_hucow', 'nickname')>> label across the top but, now that you look closer, there is no mistaking the signs of arousal on her body, her bovine "transformation" even further accentuated by a pair of short horns peeking out from her hair, her hands adorned with shoulder length gloves ending in hoof-shaped mitts so that even were she to be released from the restraints she would be mostly helpless.<br>
<br>
As you try to figure out what is going you are startled by voices trickling in from the lab.<br>
<br>
"Hey, it's about time to do the hourly inspection for <<=setup.getNpcName('npc_hucow', 'nickname')>>, you wanna take care of it?, I checked her last hour." <br>
<br>
"Sure." is the reply, just as you realise that this means they're going to be coming right for you!<br>
<br>
Peering out past the door you see two people in lab coats, one of which is in the process of changing into a full-body covering cleansuit, presumably in preparation for the "inspection." They do not appear to be in a rush to change so you have a little bit of time to make a plan...<br>
<br>
[<<moveTo "event_ai_milking_mission_4" 'Maybe you can talk your way out of this, somehow?' 300 "<<set $scene.style = 'talk'>>">>] <<hint $options "This is going to take smarts, and probably something more...">><br>
[<<moveTo "event_ai_milking_mission_4" 'Get ready to ambush and overpower them.' 300 "<<set $scene.style = 'fight'>>">>] <<hint $options "Even with the element of surprise this will require martial prowess to pull off without their colleague being alerted.">><br>
[<<moveTo "event_ai_milking_mission_4" 'There are other stalls... maybe you could hook yourself up and hide "in plain sight?"' 300 "<<set $scene.style = 'hide'>>">>] <<hint $options "Is that really such a good idea?">>
</div>/*#
#desc: find npc_hucow while on mission for npc_ai
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.success = false>>
<<switch $scene.style>>
<<case 'talk'>>
<<set $scene.success = setup.getTotalValue("smart") >= 10 && setup.getTotalValue("bimbofication") >= 10>>
<<applyExperience 'smart' 10 'very' $SEEN_STRANGER>>
<<case 'fight'>>
<<set $scene.success = setup.getTotalValue("martial_arts") >= 10>>
<<applyExperience 'martial_arts' 10 'very' $SEEN_STRANGER>>
<<case 'hide'>>
<<applyExperience 'bimbofication' 17 'terrible' $SEEN_STRANGER>>
<<set $scene.success = true>>
<<set $scene.startingBreastSize = $player.body.breastsize[0]>>
<<set $player.body.breastsize[1] += 2>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<if $scene.panties != "">>
<<changeItemStatus $scene.panties 'cumsoaked' '["set",100]'>>
<</if>>
/% TODOfuture drug effects? %/
<</switch>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOcompany_lab_milking.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'talk'>>
<<if $scene.success>>
You consider some of what you know about these "upper" floors and make your plan based on the conclusion that sometimes it's smarter to act dumb.<br>
<br>
Walking over to one of the machines you pretend like you're trying to attach one of the breast cups to your chest, acting surprised when the bio-suit clad scientist walks in.<br>
<br>
"Oh! I was just, like, picking something up for my boss and then I saw this super cool machine but, like... I can't get it to work, can you help?" You ask in your ditziest voice possible.<br>
<br>
Hidden inside the bio-suit you cannot even see the other person's face but from their resigned sigh it looks like you may have thread the needle.<br>
<br>
"Dammit, another one of you wandering in here? I keep telling them there needs to be better locks, we're doing important work up here!" <br>
<br>
Using all that you know about acting like a bimbo slut (and that's quite a lot) you act surprised as you glance down at his crotch, noticing a) that it is quite a bulge and b) that there looks to be an access panel there that seems quite atypical for that sort of outfit.<br>
<br>
"Oh, wow, you're so big!" You remark, "forgetting" about the breast item as you zoom to your knees to start working at the front of the suit.<br>
<br>
"Hey, that's... ah fuck it, go ahead." He replies as you have his large <<if $fetish.bestiality_soft>>bovine-shaped <</if>>cock exposed.<br>
<br>
"Yummy!" you remark with <<if setup.getTotalValue("penis")> 10>>authentic<<else>>mock<</if>> glee as you take him in both hands and start bobbing your head, sucking noisily.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
"Damn but you upper floor sluts could suck chrome off a bumper!" He congratulates as you eagerly slurp away, skilfully bringing him rapidly towards climax before leaning back for him to blast an abnormally large load across your face.<br>
<br>
<<else>>
You don't really have the skills to properly handle a member of this magnitude but you manage to make up in enthusiasm and he soon grunts, spraying <<getWordCum $player>> across your face.
<</if>>
<br><br>
"Whew! Not bad!" He states as you smile up at him. "But I still have work to do and I imagine SOMEONE is missing you - so hurry along girl or I'll report you!" <br>
<br>
Bouncing to your feet you hurry off as ordered, making it back to the elevator with the file folder in hand without running into any further obstructions.
<<else>>
<<if setup.getTotalValue("smart") >= 10>>
Somewhat surprising the lab worker you try to bluster your way through things by spewing techno-babble but the anonymously-suited worked just shrugs and cuts you off.<br>
<br>
"And where did a cute thing like you learn big words like that? And what do you have there?" He adds, reaching for the file that was your mission objective. "I keep telling them the labs need better security, now hand over that file and get on your way before I report your theft and have you join your friend here on the milking lines..." <br>
<br>
<<printThought $player "Hmm, being smart doesn't seem to help when your target just treats you as a bimbo...">>
<<elseif setup.getTotalValue("bimbofication") >= 10>>
"Hi, I'm like, lost?" You state in your best airhead "impression" (more reality, arguably).<br>
<br>
"Not again." The anonymous figure states, shaking their head. "And what do you have there? You were not trying to steal from the lab, were you?" He asks, directing his attention to the file that was your mission objective.<br>
<br>
"No, but like... can I keep it? I'll fuck you for it!" You offer, hoping ditzy sluttitude might get you out of this jam.<br>
<br>
"Sorry, babe, maybe some other time. Now hand it over and get on your way before I report you to your owner." <br>
<br>
<<printThought $player "Damn, looks like I need a bit of smarts to navigate this situation...">>
<<else>>
Whatever plan you had goes out the window when the lab worker walks into the room. "Hey, what are you doing here? This isn't a place for secretaries!" <br>
<br>
"I, uh, was, like..." You try to babble out an explication but he cuts you off.<br>
<br>
"Look, I don't want to deal with the paperwork of reporting you, so just give me that file you have there and you can be on your way." <br>
<br>
<<printThought $player "Damn, I need to be more clever... or maybe sluttier? Or both?">>
<</if>>
<br><br>
Reluctantly handing over the file you are escorted out of the lab and sent back to the elevator. Your mission a failure.
<</if>>
<<case 'fight'>>
Lurking in wait behind the door you wait for the worker to get all the way inside before you leap into action.
<<if $scene.success>>
Snaking an arm around their neck the "protective" suit turns out to be quite insufficient at guarding against chokes. They flail a bit but it isn't more than a handful of seconds before they go limp in your arms.<br>
<br>
Quickly removing the anonymizing outfit you note the restraints built into the empty bay next to <<=setup.getNpcName('npc_hucow', 'full')>> and quickly prop the still recovering lab worker up and strap them in.<br>
<br>
They are just staring to come to alertness when you jam the face mask/penis gag down their throat, their eyes going wide in shock as they thrash against the restraints. Unfortunately for them the machine activates automatically and their struggles become more subdued, their eyes slowly dimming as whatever drugs the machine dispenses set to work.<br>
<br>
You're about to get changed and make your escape when an alert pops up on the terminal indicating that the "installation" of the occupant has not been completed. Fearful that not addressing things will only attract more attention you follow along with the on-screen instructions. Already tenting through their pants thanks to either a bondage fetish or the effects of the drugs you locate the proper "lower" attachments, pulling down the lab worker's pants to expose a <<if $fetish.bestiality_soft>>large, bovine-shaped<<else>>sizable<</if>> cock that is soon ensconced in its own suction device with a large phallus inserted behind.<br>
<br>
You wonder if the breast cups are anything but aesthetic only to watch as a pair of needs make an injection that cause the man's chest to plump up before your eyes, the first trickles of milk already flowing by the time you have finished things off to the computer's satisfaction with a VR helmet.<br>
<br>
<<printThought $player "I wonder if I should feel guilty about this?">><br>
<br>
Putting your thoughts aside you leave the hapless lab assistant where they are and slip into the discarded biosuit. A bit large for your shorter frame it provides complete concealment and, with the file that brought you here, stuffed away safe next to your chest, you pass through the lab, acknowledging the other lab worker with a grunt before heading for the elevator.<br>
<br>
Shedding the biohazard suit you let out a sigh of relief, you've done it!
<<else>>
<<if setup.getTotalValue("martial_arts") >= 5>>
Going straight for the subdual you try to get a hold around their neck only for your opponent, being larger and stronger, to push you off. You try to keep up the fight but they manage to produce an injection device of some sort and, after a fleeting prick, your body gets sluggish and then stops responding to commands altogether as you go limp.
<<elseif setup.getTotalValue("martial_arts") == 0>>
Unfortunately your martial arts experience consists of watching the odd Kung Fu flicks, posing no threat to your opponent who quickly produces an injection device that serves to render you limp.
<<else>>
Literally from the jump your ambush goes wrong as you misjudge not only the distance, but also the protective effects of the biohazard suit itself. Producing an injection device of some kind your foe soon has you subdued, your entire body going limp.
<</if>>
<br><br>
"Crazy slut." The man states looking down at your motionless body. "You're lucky I don't feel like dealing with paperwork today." Lifting you up with ease he throws you over one shoulder and heads back through the lab, shrugging as he passes by the other worker.<br>
<br>
"I keep telling you we need some actual security, another of these ditzy sluts wandered in, even tried attacking me!" <br>
<br>
"You didn't just throw her in the machine?" The other researcher asks as you are carried towards the exit.<br>
<br>
"Hah, who knows where this slut has been, no way I'd get useful data and I don't wanna get in trouble with her owner. Nah, I'm just going to dump her in the elevator, drugs will wear off soon and from there she's someone else's problem." <br>
<br>
On the one hand, you should be grateful that you aren't going to get into more sever trouble... but on the other, with the file you came for lying back on the floor of the milking room, your mission is an utter failure. True to his word the man gently deposits you in the elevator and you watch him disappear back up the hallway into the lab as you regain your senses and stagger to your feet.
<</if>>
<<case 'hide'>>
Not seeing a better option you stuff the file folder behind your back for safe keeping and step into the empty bay next to <<=setup.getNpcName('npc_hucow', 'first')>>. To your slight surprise a pair of cuffs snap around your ankles, followed by an additional restraint closing around your chest.<br>
<br>
<<printThought $player "Shit, well I guess I don't have a choice now...">><br>
<br>
Keeping your hands far away from the "at her side" position where <<=ps(setup.getNpcName('npc_hucow', 'first'))>> limbs are restrained you reach for the breast cups dangling to one side, bringing them to your chest where they suck into position along with additional straps holding you in the bay.<br>
<br>
Taking a deep breath you reach for the face mask and VR headpiece combo, noting with barely any surprise that the inside of the mask sports a quite phallic looking mouth insert.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>Lovingly opening<<else>>opening<</if>> your mouth you press the mask into position, straps pulling it, and thus your head tightly into place against the padded back of the chamber.<br>
<br>
Certain that the lab worker is about to enter, though with the nagging question of how you will get out of your "hiding" place you finish off by bringing the VR visor to your head and plunge into darkness before placing your hands at your side where they are swiftly cuffed in place.<br>
<br>
Heart racing you nervously suck on the artificial cock filling your mouth as you wait, the VR display remaining dark, leaving you blind and with your hearing slightly muffled.<br>
<br>
It is hard to tell time but it can't be more than a couple minutes when the sound of <<=ps(setup.getNpcName('npc_hucow', 'first'))>> frequent orgasms is broken up by the heavy door opening and clomping footsteps walking into the room.<br>
<br>
"What the-" you hear, tensing up in fear that your charade is a failure.<br>
<br>
"Dammit, if they're going to leave you down here your owner really should have registered... and hooked you up properly! Why you must be stewing in frustration by now, totally inconsiderate. I guess it's on me to fix that, really wish people would actually pay attention when we do those training seminars...." <br>
<br>
Any relief that your plan seems to have worked is tempered by the second half of his statement. Straining to hear all you can catch is the sound tapping, presumably on the control panel for your chamber, a sweet flavour suddenly filling your mouth as the phallus begins oozing. Unable to do anything but swallow the tasty mixture you feel a certain aroused fuzziness come over you as it becomes harder to focus on your mission or anything else.<br>
<br>
Your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt is pulled up<<else>>pants are pulled down<</if>> and your underwear moved aside
<<if setup.getItemFromType("plug")>>
before you feel his hand between your legs, gloved fingers grabbing hold of your plug. "I swear, it's like they don't pay any attention to how this system even works." He remarks before removing your plug, your rear empty for but a moment before a thick, lubricated phallus slides up into you.
<<else>>
to clear the path for a thick, lubricated phallus to slide into your ass.
<</if>>
"Now, where is that adaptor..." You hear him mutter followed a short time later by the sensation of something being placed securely over your caged crotch. "There we go," he states, the last thing you hear before everything comes to life.<br>
<br>
The effect of the drugs oozing from your gag already has you horny and distracted you can't help but moan as the dildo begins fucking you and powerful vibrations begin running through your cage. All that is but a distraction from what is going on on your chest as you feel something attach to your nipples followed by an overall feeling of suction and two sharp pricks after which you would swear it felt like your breasts were expanding...<br>
<br>
Too aroused to be concerned you wiggle in your bonds as an orgasm approaches, the VR helmet finally going live to show a hypnotic mosaic image with a soft voice in your ear. "Happy cows make happy milk. I want to be happy, I need to be fucked, I love being a cow..." <br>
<br>
Inescapable and rhythmic the combination of drugs and hypnosis ushers in your first orgasm as you lose all grasp on reality, a screaming voice in the back of your mind saying something about a "mission" but you hardly care, your only "mission" is to be happy, to be fucked, to produce more milk...<br>
<br>
It is impossible to know exactly how long you spend in blissed-out stupor before things suddenly shut off. You barely keep your feet as the restraints release all at once, the mask, breast cups and dildo all retreating from your body as you stumble forward.<br>
<br>
Blinking in confusion as you fight an urge to jump back into the oh-so-heavenly machine you find yourself face to face with <<=ps(setup.getNpcName('npc_ai', 'first'))>>.<br>
<br>
"@@.npc_ai;<<uc "Unit">> <<uc $player.first_name>><<uc ", I appologise for my delay. Your tactic was a... daring one but the safeguards were such that it took me some time to end your programme without triggering any alarms.">>@@"<br>
<br>
You blink, the memory of your mission slowly coming back as you look around, spotting the folder that was your objective having fallen to the bottom of the chamber, your "partner" <<=setup.getNpcName('npc_hucow', 'first')>> is in the same constantly fucked, bondage that you so recently enjoyed, still occasionally moaning or trembling in delight.<br>
<br>
"@@.npc_ai;<<uc "Come along, Unit">> <<uc $player.first_name>><<uc ", I was able to splice in an anti-aphrodisiac so you should recover quickly; unfortunately the other effects of the procedure are somewhat less easily reversible.">>@@"<br>
<br>
You're a bit confused at this comment until you look down and realise that
<<switch $scene.startingBreastSize>>
<<case 'none'>>
you are now sporting a pair of at least B-cup breasts.
<<case 'massive'>>
your mammoth breasts have somehow grown even larger!
<<default>>
your breasts have swelled at least a full cup size!
<</switch>>
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>><<uc ", you have done well on your mission and I appreciate your sacrifice but you need to get back to your office before anything else goes wrong or someone notices your absense.">>@@"<br>
<br>
Lucidity returning remarkably quickly, even if you do feel almost uncontrollably horny despite the innumerable orgasms forced out of you by the machine, <<if setup.getItemFromType("plug") != "">>you find and re-install your plug and<<else>>you<</if>> gather up the file, fix your clothes and head for the exit.
<<default>>
ERROR: unexpected scene.style: <<=$scene.style>>
<</switch>>
<br><br>
[<<moveTo "event_ai_milking_mission_5" "The elevator door closes behind you." 600>>]
</div>/*#
#desc: elevator back to your floor, opportunity to examine file if you succeeded
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.success>>
<<set $npc_ai.flags.missions.milking = true>>
<<set $npc_ai.satisfaction += 5>>
<<else>>
<<set $npc_ai.satisfaction += 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
You straighten with pride <<=ps(setup.getNpcName('npc_ai', 'first'))>> hologram shimmers into existence.<br>
<br>
"@@.npc_ai;<<uc "Well done, Unit">> <<uc $player.first_name>><<uc ". I knew I could count on your... unique approach to provide results in this matter. When you return to your desk you will find an inter-office mail package. Please deposit the file so that it may be routed properly. Once again, thank you Unit">> <<uc $player.first_name>><<uc ".">>@@"<br>
<br>
She disappears as the elevator continues to descend and you are left with a decision.<br>
<br>
[<<moveTo "event_ai_milking_mission_6" "Read the document." 600 "<<set $scene.read = true>>">>]<br>
[<<moveTo "event_ai_milking_mission_6" "Just return to your desk." 60 "<<set $scene.read = false>>">>]
<<else>>
You let out a sigh as <<=ps(setup.getNpcName('npc_ai', 'first'))>> hologram shimmers into existence.<br>
<br>
"@@.npc_ai;<<uc "Your mission was unsuccessful. Disappointing, Unit">> <<uc $player.first_name>><<uc ". We will attempt again at a later date, please improve yourself and consider your approach so that you next attempt may be marked by success.">>@@"<br>
<br>
You arrive back at your desk, thankful to find that <<=setup.getNpcName('npc_manager', 'formal')>> does not appear to have noticed your absence.<br>
<br>
[<<moveTo $workEventReturn "Resume working." 60>>]
<</if>>
</div>/*#
#desc: examine file/return to desk
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
<<if $scene.read>>
Overcome with curiosity you open the file folder and start reading, starting with a table of contents that looks to be list of project codenames and what you guess are the associated project supervisor.<br>
<br>
<<include aiArticleList>>
<<else>>
Though curious you have gotten into enough trouble for doing things not precisely as ordered you decide that ignorance is bliss and so refrain from peeking inside the file folder.<br>
<br>
Back at your desk you find the expected inter-office mail package, dropping the file in and sealing things shut before dropping it all in the "out" bin and taking your seat; glad to find that your <<=setup.getNpcName('npc_manager', 'title')>> appears to be none the wiser as to your absence.<br>
<br>
[<<moveTo $workEventReturn "Resume working." 60>>]
<</if>>
</div>[<<moveTo "event_ai_milking_mission_7" 'Planung und Entwicklung Neuer Inteligenter Systeme - <<=setup.getNpcName("npc_work_doctor", "formal")>>' 60 "<<set $scene.article='penis'>>">>]
<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Shantipole - Dr. Corrie Slayn' 60 "<<set $scene.article='shantipole'>>">>]<br>
<<if $fetish.bladerunner>>
[<<moveTo "event_ai_milking_mission_7" 'Project Rachael - Dr. P.K. Dick' 60 "<<set $scene.article='bladerunner'>>">>]<br>
<</if>>
[<<moveTo "event_ai_milking_mission_7" 'Project Plokami - Dr. Bernoulli' 60 "<<set $scene.article='tentacle'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Clarity - <<=setup.getNpcName("npc_psychiatrist", "formal")>>' 60 "<<set $scene.article='candy'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Pink MkII - <<=setup.getNpcName("npc_work_doctor", "formal")>>' 60 "<<set $scene.article='pink2'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Gnosis - Dr. Faustus' 60 "<<set $scene.article='gnosis'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Fornological Investigations - Dr. Gord' 60 "<<set $scene.article='furniture'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Homus Bovinus - <<=setup.getNpcName("npc_work_doctor", "formal")>>' 60 "<<set $scene.article='hucow'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Poena - Dr. Rugen' 60 "<<set $scene.article='pain'>>">>]<br>
<br>
[<<moveTo "event_ai_milking_mission_7" "Put the file away and return to your desk." 60 "<<set $scene.article='finished'>>">>]/*#
#desc: file details/end
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<if $scene.article == "finished">>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.article == "finished">>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<<else>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_ai.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.article == "finished">>
Putting the file back in order you head for your desk. The expected inter-office mail package is waiting and you stuff the file in and seal things shut before dropping it all in the "out" bin and taking your seat; glad to find that your <<=setup.getNpcName('npc_manager', 'title')>> appears to be none the wiser as to your absence.<br>
<br>
[<<moveTo $workEventReturn "Resume working." 60>>]
<<else>>
<<switch $scene.article>>
<<case 'pain'>>
<<if setup.getTotalValue("smart") > 15>>
Whoever Dr. Rugen is he seems like something of a sadist, the project notes referencing numerous modifications to something he refers to as "the machine" and iterative improvements in its efficacy, concluding that the most recent enhancements have increased efficiency by 7.3% and putting out a call for "recalcitrant" test subjects while concluding that anything from "a few minutes" to a "few agonizing hours" are guaranteed to correct the most disobedient behaviour and restore "a proper measure of fear."
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'penis'>>
<<if setup.getTotalValue("smart") > 16>>
While you would probably need multiple Doctorates to fully understand what was going on with this project you can identify for certain that it had something to with AI development... until it was mysteriously put on hold.<br>
<br>
<<printThought $player 'This has to be the project that created <<=setup.getNpcName("npc_ai", "first")>>.'>>
<<elseif setup.getTotalValue("smart") > 9>>
Even for one with your technical background the project is all but indecipherable. From what you can tell it sounds like it was a project aimed at developing some sort of general purpose AI... but from the looks of things it has been considered a failure and is on hold, the update merely confirming that further study remains suspended.<br>
<br>
<<printThought $player 'Wait, AI... could this be where <<=setup.getNpcName("npc_ai", "first")>> came from?'>>
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'shantipole'>>
<<if setup.getTotalValue("smart") > 7>>
All you can tell from the scant descriptions is that this project is focused on a mysterious "B6" device. From the description it sounds like some sort of frame, with the 6 refering to the number of primary attachment points it comes equipped with. Whatever it is the person who wrote the update seems quite enthused about the versatile applications the device is capable of being used for.
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'bladerunner'>>
<<if setup.getTotalValue("smart") > 8>>
From the description it seems like this project is related to creating a human-like but "artificial" cleaning robot. From the sound of things they are making good progress, having just demonstrated an advanced prototype, though it mentions that said prototype has been "misplaced" leading them to and now moving forward with an even better iteration after receiving feedback and additional funding.
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'tentacle'>>
<<if setup.getTotalValue("smart") > 14>>
This is a very odd project that seems to be investigating the cultivation of flexible solar powered bio-material limbs for use in a variety of applications.
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'hucow'>>
<<if setup.getTotalValue("smart") > 11>>
Whatever the precise goals of this project they seem to be showing significant success, cryptically that "production has significantly exceeded both volume and quality expectations." Possibly more concerning is that it makes mention that while the "test subject" technically shows no negative mental effects directly she becomes quite "agitated and desperate" if deprived of either stimulation or "treatment" for too long, though the writer quickly re-assures that this is, at most, a psychological addiction, not physical and that it can be considered a benefit as it ensures the continued docility and enthusiasm of the test subject.
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'candy'>>
<<if setup.getTotalValue("smart") >= 10>>
The update is brief, explaining that the "subject" continues to show minimal signs of regression. Despite the terse tone you sense an underlying unease, as if whoever wrote the update feels guilty about what they're doing.
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'pink2'>>
<<if setup.getTotalValue("smart") > 6>>
You immediately recognise that this project must be a further iteration of the <<if $player.flags.used_sissy_pill_count == 0>>Pink Pill you were given by your <<=setup.getNpcName('npc_manager', 'title')>><<elseif $player.flags.used_sissy_pill_count == 1>>Pink Pill you took once that left you feeling fuzzy<<else>>the pink pills you take that you receive from your <<=setup.getNpcName('npc_manager', 'title')>><</if>>. From the listed findings it would seem that the "new" model is showing promise both in efficacy and duration of effect.
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'gnosis'>>
<<if setup.getTotalValue("smart") > 13>>
This project appears to be some sort of multi-national investigation. The report primarily talks about how well the new procedure of rotation and exchanging of lab assistants has done at improving productivity and quality of findings... though what, precisely those findings ARE is left strangely unmentioned.
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'furniture'>>
<<if setup.getTotalValue("smart") > 12>>
You aren't certain what "Fornilogical Investigations" are but it seems to have a lot to do with human stamina and flexibility in strenuous positions. The update talks about improvements in both flexibility of form and stamina through a combination of physical training and carefully monitored nutrition and "waste disposal." I concludes by requesting additional "test subjects" to confirm that the new techniques are applicable for "subjects" of a variety of experience levels.
<<else>>
You try to read the update but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<default>>
ERROR: unknown article: <<=$scene.article>>
<</switch>>
<br><br>
Flip to a different update:<br>
<br>
<<include aiArticleList>>
<</if>>
</div>/*#
#desc: npc_ai sends you on a mission
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $npc_ai.flags.end_missions>>
You get a weird feeling, suddenly struck by the memory of when you used to do secret missions for <<=setup.getNpcName("npc_ai", "first")>> and you find yourself wondering what the strange AI is up to.<br>
<br>
<<printThought $player "Has she found someone else to help her out? Did she free herself from the building?">><br>
<br>
You have no way of answering your question and so you merely return to work.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
<<else>>
You're working away diligently when you get a message from <<=setup.getNpcName("npc_ai", "first")>> asking if you are ready to perform another task for her.<br>
<br>
<<if $npc_ai.flags.blackmail>>
<<printThought $player "Hmm, I still owe her a favour...">>
<<else>>
<<printThought $player "I wonder what she wants me to do this time...">>
<</if>>
<br><br>
[<<moveTo "event_ai_mission_mux" "Mission accepted!" 60>>]<br>
[<<moveTo "event_ai_mission_decline" "Decline her mission." 60>>]
<</if>>
</div>/*#
#desc: decline work mission from npc_ai
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You reply back that you are too busy right now to help <<=setup.getNpcName("npc_ai", "first")>>.<br>
<br>
<<if $npc_ai.flags.blackmail>>
"@@.npc_ai;<<uc "Disappointing, Unit">> <<uc $player.first_name>><<uc "have you forgotten your debt?">>@@"
<<else>>
"@@.npc_ai;<<uc "Disappointing, Unit">> <<uc $player.first_name>><<uc ", some other time, then.">>@@"
<</if>>
<br><br>
You try to type a response by the chat window has already disappeared, a reminder of the control she wields in the digital realm...<br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
</div>/*#
#desc: contact npc_ai for a mission
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if !$scene.hasOwnProperty('randomMissionAvailable') && !$scene.ranMission>>
<<set $scene.randomMissionAvailable = Math.random(4) == 1>>
<<else>>
<<set $scene.randomMissionAvailable = false>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You use your computer to contact <<=setup.getNpcName("npc_ai", "first")>> and ask if she has any work for you.<br>
<br>
<<if $scene.randomMissionAvailable ||
($now.getUTCDay() == 5 && !$npc_ai.flags.missions.connection)
|| ($fetish.milking && $npc_hucow.flags.stage > 3 && !$npc_ai.flags.missions.milking)>>
/% TODOfuture || ($npc_ai.flags.missions.connection && !$npc_ai.flags.missions.robot_body%/
"@@.npc_ai;<<uc "Thank you for reaching out, Unit">> <<uc $player.first_name>><<uc ". In fact I have need of your particular skills for a very important mission... if you choose to accept it.">>@@"<br>
<br>
[<<moveTo "event_ai_mission_mux" "Mission accepted!" 60>>]<br>
[<<moveTo "event_ai_mission_decline" "Decline her mission." 60>>]
<<else>>
"@@.npc_ai;<<uc "I do not have need for your particular skills at this moment, Unit">> <<uc $player.first_name>><<uc ", but be alert and continue developing your skills for I am working towards things that will certainly require your assistance.">>@@"<br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
<</if>>
</div>/*#
#desc: route to a mission for npc_ai
#status: RELEASED 0.6.0.0
#*/
<<initRoom>>
<<if $now.getUTCDay() == 5 && !$npc_ai.flags.missions.connection>>
<<moveTo "event_ai_connection_mission_1">>
<<elseif $fetish.milking && $npc_hucow.flags.stage > 3 && !$npc_ai.flags.missions.milking>>
<<moveTo "event_ai_milking_mission_1">>
<<elseif false && $npc_ai.flags.missions.connection && !$npc_ai.flags.missions.robot_body>>
/% TODOfuture %/
<<moveTo "event_ai_mission_robot_body_intro_1">>
<<else>>
<<moveTo "event_ai_mission_generic">>
<</if>>/*#
#desc: do a generic mission for npc_ai
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_ai.satisfaction += 1>>
<<set $npc_ai.flags.missions.generic_missions += 1>>
<<set $scene.ranMission=true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_hallway_01.png">>
<div id="invframe" class="scrolltext">
You agree to fulfill <<=ps(setup.getNpcName("npc_ai", "first"))>> request and she sends you an office address.<br>
<br>
It's on the same floor so, after confirming that <<=setup.getNpcName("npc_manager", "formal")>> is scheduled to be in a meeting for the next while, you scurry off.<br>
<br>
<<switch random(3)>>
<<case 0 1>>
Arriving at the specified location you find a man already waiting for you. With a leering grin he unzips his fly and nods for you to get to work on his tumescent <<getWordPenis $player>>.<br>
<br>
[<<moveTo "event_ai_mission_generic_suck" 'Kneel down and "finish" the "mission."' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_mission_generic_suck" "Turn around and head back to your desk." 60 "<<set $scene.accept=false>>">>]
<<default>>
Like something out of a spy movie you arrive at the office to meet another sexy secretary who wordlessly hands you a sealed folder with yet another office location written on the outside. Nodding in acknowledgement you make the delivery and head back to your desk, a bit confused as to the point of the whole exercise.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
<</switch>>
</div>/*#
#desc: npc_ai sends you on a mission
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.accept>>
<<set $npc_ai.satisfaction += 1>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 8 'normal' $SEEN_STRANGER>>
<<if setup.getTotalValue("oral") < 10>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<</if>>
<<if $player.makeup.template != "">>
<<set $player.makeup.messed = Math.min(100,$player.makeup.messed+25)>>
<</if>>
<<else>>
<<set $npc_ai.anger += 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/secretary_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought $player "Is this what I have come to? Sucking off random strangers at the merest request of a weird AI? My life is the best!">>
<<elseif setup.getTotalValue("bimbofication") > 5>>
<<printThought $player "Is this what I have come to? Sucking off random strangers at the merest request of a weird AI? I guess things could be worse...">>
<<else>>
<<printThought $player "Is this what I have come to? Sucking off random strangers at the merest request of a weird AI? How did I let this happen?">>
<</if>>
<br><br>
Plastering a smile of delight onto your face you kneel down before your subject and get to work.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
He's on the small size of normal...
<<if setup.getTotalValue("oral") > 15>>
He's on the small size of normal... in other words utterly trivial compared to what you're accustomed to. Still, you are nothing if not a professional cocksucker and you soon bring him to climax, smiling up at him the whole time as your throat opens up and your tongue dances over him until you have successfully drained him dry.
<<else>>
in other words a walk in the park for your experienced throat. Taking him to the root you stare up at him and flutter your eyelashes before commencing with one of your patented expert-level blowjobs. He proves no more above average in stamina than he was in girth as you are soon rewarded with a spurt of <<getWordCum $player>> trickling down your throat and into your slutty tummy.
<</if>>
<<else>>
Not that you're exactly an expert, but he looks about average size.
<<if setup.getTotalValue("oral") > 5>>
Your skills are barely adequate to handle him but it appears to be enough as you coax him towards orgasm, "rewarded" with a shot of <<getWordCum $player>> spraying across your face as you barely manage to react fast enough to close your eyes.
<<else>>
Still, even that much is a bit of a struggle given your lack of experience and you find yourself focusing just on licking and slurping his head after the first attempt at deep-throat results in you coughing and gagging.<br>
<br>
Though it's obvious he is unimpressed you are able to get him off, your reward a blast of cum shot across your face when he finally pulls out to finish by hand.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") >= 10>>
His cock may have been a bit of a disappointment but cum is always welcome and you eagerly wipe your face clean and lick every salty drop from your fingers with a smile.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Though a bit disgusted you conclude the most expeditious option is to just wipe your face off and lick it clean, doing so quickly as he stares on with mild interest.
<<else>>
Suppressing a grimace you grab a tissue from a box on his desk and wipe off the sticky semen.
<</if>>
<</if>>
<</if>>
<br><br>
He dismisses you with a grunt and a wave and you wonder what this whole thing was about. Certainly your performance was to serve as some sort of deal brokered by <<=setup.getNpcName("npc_ai", "first")>>, but you haven't the slightest clue what<<if $npc_manager.stage > 3>>, or how a blowjob from a SISSY secretary could even count as payment at this bizarre company<</if>>.<br>
<br>
[<<moveTo $workEventReturn "Return to your desk and resume working." 600>>]
<<else>>
Turning on your heels you hurry back down the hall and back to your desk.<br>
<br>
Unsurprisingly you sit down to read a message from <<=setup.getNpcName("npc_ai", "first")>>.<br>
<br>
"@@.npc_ai;<<uc "Very disappointing, Unit">> <<uc $player.first_name>><<uc " the next time you agree to a mission please be ensuring you intend to finish the job.">>@@"<br>
<br>
[<<moveTo $workEventReturn "Back to work." 300>>]
<</if>>
</div>/*#
#desc: Interact with npc_ai online
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<if $roomchange == true>>
/% TODOfuture
<<set _x = $shopStatus['mall_wholesale_store'].push('vr')>>
%/
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01_makeup.png">>
<div id="invframe" class="scrolltext">
You browse to the link <<=setup.getNpcName("npc_ai", "first")>>, unfortunately there appears to be nothing here.<br>
<br>
<<printThought $player "Hmm, I guess she isn't ready for me yet?">><br>
<br>
This plot-line is not yet implemented.<br>
<br>
[<<moveTo "room_computer_surfing" "Return to your search engine." 0>>]<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: npc_ai sends you on a mission to get her a physical body
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_ai.png">>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Thank you for accepting this mission, Unit">> <<uc $player.first_name>>. <<uc 'Todays mission will be a complicated one. I am in want of a physical form, I have made contact with an employee willing, and capable, of procuring such for me but he has certain... wants I believe you are uniquely situated to make the trade. If you would please to be proceeding to the 13th Floor to meet and barter.'>>@@"<br>
<br>
[<<moveTo "event_ai_mission_robot_body_intro_2" 'Head for the elevator' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_mission_robot_body_intro_2" "Say you're busy right now." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: first meeting with janitor who can get you robot body
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Floor 13: Utilities">>
<<else>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.accept>>
<<createBGR "./images/locations/TODO_utilities.png" "./images/characters/TODOnpc_janitor.png">>
<<else>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Slipping out of the office and down the elevator you make your way to the designated meeting place on what seems to be a floor devoted to utilities. Stepping off the elevator into the seemingly empty floor filled with machines and pumps and tubes pumping everything from water to air to you don't know what else you look around only to be startled by what seems to be a janitor appearing from behind a large tank.<br>
<br>
"@@.npc_janitor;Hello, <<=$player.first_name>>, you were sent by the ghost lady, yes? Who wishes to walk among the flesh?@@" he says in greeting, his stained uniform marking him as a member of the building's janitorial staff.<br>
<br>
You nod, the guy is definitely a bit strange, though otherwise innocuous, the sort of person who typically blends into the background; not a bad skill for a janitor.<br>
<br>
<<printThought $player "Might as well get this over with...">><br>
<br>
[<<moveTo "event_ai_mission_robot_body_intro_3" 'Offer your body in payment on behalf of <<=setup.getNpcName("npc_ai", "first")>>.' 60 "<<set $scene.offer = true>>">>]<br>
[<<moveTo "event_ai_mission_robot_body_intro_3" 'Ask what he wants.' 60 "<<set $scene.offer = false>>">>]
<<else>>
"@@.npc_ai;<<uc "I see, that is disappointing, but I can be patient. I will contact you in the future to ask for your assistance again. Goodbye">>@@"<br>
<br>
As simple as that the chat window closes and you turn back to your work.<br>
<br>
[<<moveTo $workEventReturn "Resume working." 60>>]
<</if>>
</div>/*#
#desc: find out the janitor's demands
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODO_utilities.png" "./images/characters/TODOnpc_janitor.png">>
<div id="invframe" class="scrolltext">
<<if $scene.offer>>
Adopting your best bedroom eyes you start to strip only for the man to shake his head.<br>
<br>
"@@.npc_janitor;No, no, <<=$player.first_name>>, it is not you that I want, but your Mistress. You see... I am in love with <<=setup.getNpcName('npc_manager', 'other')>> and while certainly I understand that she would be disinterested in one as unworthy as myself I cannot help but yearn and so, if your ghostly taskmaster would have what she desires, then you will transform yourself into the likeness of my desire that I may enjoy the simulacrum of my fantasy.@@"
<<else>>
"@@.npc_janitor;Clever, of course I should expect nothing less from the assistant to my Goddess.@@"<br>
<br>
<<printThought $player 'Goddess? What, is he worshipping <<=setup.getNpcName("npc_ai", "first")>>? And I thought I had avoided Deus Ex Machina to this point...'>><br>
<br>
"@@.npc_janitor;You are uniquely positioned in both knowledge and locality to procure and then produce the scenario to meet my wishes. For me to provide that which you have been sent for it is my desire to share a tender moment with a simulacrum of my true love - <<=setup.getNpcName('npc_manager', 'other')>>.@@"
<</if>>
<br><br>
<<printThought $player 'This guy wants me to pretend to be <<=setup.getNpcName("npc_manager", "formal")>> for him? Nope, not weird at all...'>><br>
<br>
You fix your clothing as he explains further.<br>
<br>
"@@.npc_janitor;You are, of course, quite familiar with my Goddess' mannerisms but you must complete the look - her fiery hair, her lovely dresses, her perfect figure and makeup... you must morph yourself into the simulacrum of my desire. Complete this transformation and send me a picture and I will tell you were, and when, to meet. If you prove capable of giving me the experience of my dreams only then shall I provide the robotic body that <<=setup.getNpcName('npc_ai', 'first')>> desires; it really is quite the machine, state of the art simulated human cleaning assistant, fully featured for every duty one might desire a maid to perform.@@"<br>
<br>
<<printThought $player 'Every duty? Well, given this company I can all but guarantee that means it is "anatomically correct."'>><br>
<br>
[<<moveTo "event_ai_mission_robot_body_intro_4" 'Acquiesce to his demands.' 60>>]
</div>/*#
#desc: find out the janitor's demands
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
TODO add task - clothing, hair, paddle
/% ai_robot_body_mimic_manager_task %/
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODO_utilities.png" "./images/characters/TODOnpc_janitor.png">>
<div id="invframe" class="scrolltext">
<<if $scene.offer>>
Adopting your best bedroom eyes you start to strip only for the man to shake his head.<br>
<br>
"@@.npc_janitor;No, no, <<=$player.first_name>>, it is not you that I want, but your Mistress. You see... I am in love with <<=setup.getNpcName('npc_manager', 'other')>> and while certainly I understand that she would be disinterested in one as unworthy as myself I cannot help but yearn and so, if your ghostly taskmaster would have what she desires, then you will transform yourself into the likeness of my desire that I may enjoy the simulacrum of my fantasy.@@"
<<else>>
"@@.npc_janitor;Clever, of course I should expect nothing less from the assistant to my Goddess.@@"<br>
<br>
<<set _thought = "Goddess? What, is he worshipping " + setup.getNpcName("npc_ai", "first") + "? And I thought I had avoided Deus Ex Machina to this point...">>
<<printThought $player _thought>><br>
<br>
"@@.npc_janitor;You are uniquely positioned in both knowledge and locality to procure and then produce the scenario to meet my wishes. For me to provide that which you have been sent for it is my desire to share a tender moment with a simulacrum of my true love - <<=setup.getNpcName('npc_manager', 'other')>>.@@"
<</if>>
<br><br>
<<printThought $player "This guy wants me to pretend to be <<=setup.getNpcName('npc_manager', 'formal')>> for him? That's not weird at all...">><br>
<br>
You fix your clothing as he explains further.<br>
<br>
"@@.npc_janitor;You are, of course, quite familiar with my Goddess' mannerisms but you must complete the look - her fiery hair, her lovely dresses, her perfect makeup you must morph yourself into the simulacrum of my desire. Once you have completed this transformation, and given me the experience of my dreams, then shall I provide the robotic body that <<=setup.getNpcName('npc_ai', 'first')>> desires; it really is quite the machine, state of the art simulated human cleaning assistant, fully featured for every duty one might desire a maid to perform.@@"<br>
<br>
<<printThought $player 'Every duty? Well, given this company I can all but guarantee that means it is "anatomically correct."'>><br>
<br>
[<<moveTo "event_ai_mission_robot_body_intro_5" 'Agree and say you will return when you are finished.' 60 "<<set $scene.barter=false>>">>]<br>
[<<moveTo "event_ai_mission_robot_body_intro_5" 'Try to talk him into just fucking you now.' 60 "<<set $scene.barter=false>>">>]
</div>/*#
#desc: find out the janitor's demands
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<if $scene.barter>>
<<set $player.location to "Floor 13: Utilities">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.barter>>
<<createBGR "./images/locations/TODO_utilities.png" "./images/characters/TODOnpc_janitor.png">>
<<else>>
<<createBGR "./images/locations/company_elevator.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.barter>>
Adopting your most sultry expression you wiggle your body and beg him to reconsider. After all, if he's going to fuck you in the end why go through all the extra effort and delay when you're right here?<br>
<br>
"@@.npc_janitor;Heh, I should have expected you to react this way. Certainly my eyes are for the <<=setup.getNpcName('npc_manager', 'Goddess')>> but in looking on from afar I have certainly learned and seen much of her latest acquisition. Thank you for the offer, but my decision is firm, it is not merely the sex, but the dream and you are the one best positioned to make that dream a reality for me...@@"<br>
<br>
<<printThought $player "Dang but he's a stubborn one...">><br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_ai_mission_robot_body_intro_6" 'Forget the mission, you came this far, you deserve sex! Beg for it you slut.' 60>>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to just "give it away" for no benefit.@@]
<</if>>
[<<moveTo "event_ai_mission_robot_body_intro_5" 'Be on your way.' 60 "<<set $scene.barter=false>>">>]
<<else>>
His decision firm there is no benefit to further negotiation you agree to return once you are ready to fulfill his fantasy.<br>
<br>
"@@.npc_janitor;I'm looking forward to it.@@" He states with a leer as you return to the elevator and travel back up to your desk.<br>
<br>
[<<moveTo $workEventReturn "Resume working." 300>>]
<</if>>
</div>/*#
#desc: find out the janitor's demands
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<addWorkEvent 'manager_out_of_office'
'{"trigger":"always","type":"chance","chance":25,"repeat":true,"priority":0}'
'{"szene":"event_manager_out_of_office_0","length":"30"}'
>>
<<set $npc_manager.flags.office_unlocked = true>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODO_utilities.png" "./images/characters/TODOnpc_janitor.png">>
<div id="invframe" class="scrolltext">
It becoming a point of pride you turn the "desperate slut" dial up to eleven as you beg to worship his cock with your body. <<=setup.getNpcName('npc_janitor', 'first')>> may have someone else as the object of his affection but there are few strong enough to refuse such a blatant offer as you propose and you watch with glee as his determination cracks.<br>
<br>
"@@.npc_janitor;Alright slut, if that's the only way to send you on your way I'll fuck you - but don't think this is going to change the terms of our deal.@@"<br>
<br>
You shrug, your thoughts already on delicious cock as you spin around and bend over to present you ass.<br>
<br>
He moves faster than you might have expected, giving you a slap on the ass that only turns your crank harder as you moan and press back into him.<br>
<br>
"@@.npc_janitor;You slut, look what my Goddess has wrought - turning a dumb boy into this sex crazed vixen.@@"<br>
<br>
You moan even harder as he exposes your rear hole <<if setup.getItemFromType("plug")>>and removes your <<=setup.getItemName(setup.getItemFromType("plug"))>> to clear the way <</if>>for his use.<br>
<br>
"@@.npc_janitor;That's right, I know exactly what you are.@@" He adds as he slams into you. He's far from the largest thing you've had "up there" <<if setup.getTotalValue("penis")>10>>but any time you can feel a hot cock in your ass is a happy one for you.<<else>>but it's enough.<</if>> "@@.npc_janitor;I remember the day you first entered the Goddess' domain, so dumb and innocent, unaware of what she does to sissys....@@"<br>
<br>
You moan with embarrassment, the fact that this random stranger knows so much about you only deepening the debauchery of you bending over for him, for no real reason!, literally minutes after meeting him. Further thoughts as to how much of a depraved slut you have become are soon pushed aside as he presses you up against the wall and commences to fucking you in earnest.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
Even if this isn't, technically, part of the job you are still a professional, and that means reflexively deploying all of your considerable skills to maximise the pleasure felt by the cock plowing past your prostate.
<<else>>
You strive to be as much a participant of this ass-fucking as he is, matching his rhythm to push back or squeeze to maximise the mutual pleasure of his cock pistoning in and out of your rear.
<</if>>
He is soon breathing even harder than you are, your masterful skills drawing things out until he is at a frenzy, slamming you up against the wall as he finally reaches climax.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
This is the type of fucking you're used to, nothing too big, but nice and hard, your hole just loose enough for it to be painless leaving you to focus on the wonderful feeling of cock sawing against prostate.
<<else>>
He is taking you far harder than you're really used to, but there is no resisting as you are sandwiched between his body and the wall, his cock forcing you open and pressing hard against your prostate.
<</if>>
He seems to relish your naturally tight hole, ravaging you hard and deep before finally climaxing with a grunt.
<</if>>
<br><br>
Pressed against you from behind he lifts you into the air and holds you against the wall, his hot breath on your neck, the smell of his manly sweat almost overpowering.<br>
<br>
"@@.npc_janitor;Well I hope you're satisfied, I'll be expecting far more from you next time. Remember; style, clothes, and and something to pull it all together.@@"<br>
<br>
Settling down to your feet you nod, <<if setup.getItemFromType("plug")>>stuffing the <<=setup.getItemName(setup.getItemFromType("plug"))>> back where it belongs<<else>>feeling a trickle of cum leak down your leg<</if>> and fixing your clothes before heading for the elevator to return back to your office upstairs.<br>
<br>
[<<moveTo $workEventReturn "Resume working." 300>>]
</div>/*#
#desc: send pic to janitor for ai mission
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $roomchange == true>>
<<setScene>>
<<if _TODOfuture>>
/% finish task ai_robot_body_mimic_manager_task %/
/% add task ai_robot_body_weekend_meeting %/
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if _TODOfuture>>
You snap a picture of yourself in full <<=setup.getNpcName('npc_manager', 'formal')>> brandishing the pink "SISSY Secretary" paddle and send it off. A few moments later you get a cryptic reply - a thumbs up followed by "
10, Saturday, floor 13." <br>
<br>
<<printThought $player "This is so clandestine, it's like I'm in a spy thriller... Guess I'm to meet him this weekend.">>
<<else>>
Snapping a picture of yourself <<if setup.checkItemInInventory('manager_paddle')>>brandishing the "for SISSY Secretary use only" paddle <</if>>and send it off.<br>
<br>
A few moments later you get a reply - a series of emojis starting with a
<<if !_TODOfuturebreasts>>
<<if _TODOfuturesmall>>
a tiny mellon
<<else>>
a ginormous mellon
<</if>>
<</if>>
<<if !_TODOfuturehair>>
a red wig
<</if>>
<<if !_TODOfuturedress>>
a pink dress
<</if>>
<<if !setup.checkItemInInventory('manager_paddle')>>
a pink paddle
<</if>>
and concluding with a thumbs down.<br>
<br>
<<printThought $player "Dang, he really has specific demands, cryptic too! Guess I have more work to do, just have to figure out what each failure icon means...">>
<</if>>
<br><br>
[<<moveTo $beforePhonecalllocation "Put your phone away." 1 "<<set $currentcall = false>>">>]
</div>
/% TODOfuture: additional elevator option at work on weekend %//*#
#desc: meet janitor on weekend
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODO_utilities.png" "./images/characters/TODOnpc_janitor.png">>
<div id="invframe" class="scrolltext">
<<if _TODOearly>>
You disembark the elevator on the 13th floor to find it empty. Which makes sense, you are early.<br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_0" "Wait for your appointed time." _TODO "<<set $scene.wait>>">>]
<<elseif _TODOlate>>
You disembark the elevator on the 13th floor to find it empty. Which makes sense, given that you are late.<br>
<br>
<<printThought $player "Damn, I should really pay better attention to time...">><br>
<br>
[<<moveTo "room_citymap" "Leave." 60>>]
<<else>>
<<if $scene.wait>>
You wait around, ten o'clock coming and going with you still standing alone amidst the 13th floor machinery.
<<else>>
Ten o'clock rolls around and you are still waiting amidst the 13th floor machinery.
<</if>>
You are about to give up and leave when the elevator dings and you turn to see <<=setup.getNpcName('npc_janitor', 'first')>> step out.<br>
<br>
<<if !_TODOfuturefull>>
He takes a single glance at you and then frowns. "@@.npc_janitor;What is this? In the picture everything was perfect! No, this will not do at all, try again!@@"<br>
<br>
The elevator door closes and he disappears.<br>
<br>
<<printThought $player "Damn, why did I change things up? Now I have to go through everything all over again...">><br>
<br>
[<<moveTo "room_citymap" "Leave." 60>>]
<<else>>
From the moment he lays eyes on you he is transfixed, the lust in his gaze a little scary. "@@.npc_janitor;P-please, Goddess, I'm ready...@@"<br>
<br>
<<printThought $player "Looks like we're jumping right into it... here goes...">><br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_1" 'Time to play the "Mistress..."' 60>>]
<</if>>
<</if>>
</div>TODOfuture/*#
#desc: barista teaches you how to do slutty makeup
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<unlockMakeup $player "ultimatebimbo">>
<<set $npc_barista.flags.taughtbimbomakeup = true>>
<<set $player.makeup.template = 'ultimatebimbo'>>
<<set $player.makeup.messed = 0>>
<<setThreshold "makeup" "online_makeup" "barista_tips" true>>
<<setThreshold "feminization" "bad_girl_feminization" "bimbo_makeup" true>>
<</if>>
<<set $player.location = "Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png" "./images/characters/npc_barista.png">>
<div id="invframe" class="scrolltext">
Her eyes light up at your request and before you know it she's grabbed you by the wrist and is dragging you off to the women's room.<br>
<br>
Spinning you to face the mirror she suddenly has a makeup box open as is wiping off your current makeup.<br>
<br>
"@@.npc_barista;Alright, so I am going to walk you through this, like, step by step and you are going to look sooooo sexy!@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> is a whirlwind, and far more exacting than you would have ever expected from her normal bubbly demeanour but by the end of it, well... You look like a bimbo, a perfect, plastic, sex-pot with big lips and sexy eyes and... just wow.<br>
<br>
"@@.npc_barista;Ta-da! You should, like do this every day, and check your mirror often! As hot as it can look to have that just-been-fucked ruined thing going on it isn't usually appropriate at work... Oh no! I need to get back to the cafe!@@"<br>
<br>
She dashes off, leaving you by yourself in the bathroom, a porn-worthy sex-doll looking back at you from the mirror.<br>
<br>
[<<moveTo "event_work_barista_makeup_2" "Return to your office." 600>>]
</div>/*#
#desc: return to work after learning slutty makeup
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisible = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 6 'very' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Returning to work still a bit in a daze you head for your desk only for <<=setup.getNpcName('npc_manager', 'formal')>> to appear a few minutes later.<br>
<br>
Looking up in surprise you realise that you completely forgot her coffee order, but before you can apologise she cuts in, momentarily looking even more shocked than you are.<br>
<br>
"@@.npc_manager;Well, well, well...@@" she states, her initial surprise turning to an amused grin "@@.npc_manager;I was just coming out to find out where my coffee was but it seems you were up to something other than following instructions?@@"<br>
<br>
You brace for punishment but she only smiles wider "@@.npc_manager;on the one hand this style is a bit... much for the office, but I suppose I should have expected you to end up like this, eventually. I would prefer it if you showed a bit more decorum in the future but for the moment I believe seeing you like this has served to be as much of a pick-me-up as any cup of caffeine, carry on with your work then.@@"<br>
<br>
She disappears back into her office, leaving you embarrassed and still having failed to get a single word in edgewise.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 300>>]
</div>/*#
#desc: water your plant
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set _tmpValue = $player.othertimebased.chuck_water>>
<<if $roomchange==true>>
<<if _tmpValue<= 75>>
<<set $player.othertimebased.chuck_water=100>>
<<set _x = setup.removeStress($player,1)>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if _tmpValue<= 75>>
You water <<=setup.getNpcName('npc_chuck', 'custom', 'Chuck the plant')>>.
<<if _tmpValue == 0>>
<<=setup.getNpcName('npc_chuck', 'custom', 'Chuck')>> looks really dry. That was about time!
<<elseif _tmpValue < 50>>
<<=setup.getNpcName('npc_chuck', 'custom', 'Chuck')>> looks really thirsty. That was about time!
<<else>>
<<=setup.getNpcName('npc_chuck', 'custom', 'Chuck')>> looks wet enough. But better safe then sorry.
<</if>>
<<else>>
You just watered <<=setup.getNpcName('npc_chuck', 'custom', 'Chuck the plant')>>. You decide to watch him for a little bit instead.
<</if>>
<<if $player.othertimebased.chuck_grow<10>>
He remains the sprout of a plant unknown to you.
<<elseif $player.othertimebased.chuck_grow < 50>>
Well who would have guessed that a plant would benefit from regular watering. Just about everyone. <<=setup.getNpcName('npc_chuck', 'custom', 'Chuck')>> has grown a little bit. You still have no idea what kind of plant he is.
<<elseif $player.othertimebased.chuck_grow < 100>>
Regular watering did a great job on <<=setup.getNpcName('npc_chuck', 'custom', 'Chuck')>>. But you're unsure if plants are supposed to move. He is now the size of a baseball.
<</if>>
Looking at <<=setup.getNpcName('npc_chuck', 'custom', 'Chuck')>> calms your mind for some unknown reason.
<br>
<br>
<<include thoughts_home>><br>
<br>
[<<moveTo "room_livingroom" "Living room" 30>>]
</div>/*#
#desc: bump into ex girlfriend on the way to the mall first day
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<setScene>>
<<removeEvent 'exgf_firstday_visit'>>
<<set $player.flags.exgirlfriend.met = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_hallway_01.png" "./images/characters/npc_exgirlfriend.png">>
<div id="invframe" class="scrolltext">
Heading out early you're on the way out of your apartment building on the way to the mall when who should you run into but <<=setup.getNpcName('npc_exgirlfriend', 'first')>>, your ex girlfriend!<br>
<br>
"@@.npc_exgirlfriend;Woah, <<=$player.first_name>>, you're up bright an early! I was coming by to see you but realised it would be a bit rude to ring the bell this early but I guess you're already up!@@"<br>
<br>
You explain that you're actually in a bit of a rush, they you just started a new job...<br>
<br>
"@@.npc_exgirlfriend;Woah, new job? I thought you liked your old gig? Well... not LIKED liked, but you seemed... resigned to it? And at least you got to work with that old friend of yours. Well, I was originally coming by to get some clothing I left but if you're in a rush well... Y'know just go ahead and donate it to charity or something but... would you mind holding on to that black box of mine? It's got some important stuff in it but I just don't have room at my new place and well, with you living alone know you'd hardly notice it just sitting in the closet....@@"<br>
<br>
Reminding her you're in a hurry you say sure, not wanting to be distracted by her... or, specifically, all the feelings she stirs up as you hurry out of the building and head for the mall.<br>
<br>
[<<moveTo "room_mall" "Continue on to the mall." 300>>]
</div>/*#
#desc: ex girlfriend shows up to apartment morning of 2nd day
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<setScene>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You hear your doorbell ring, but being a bit drowsy this early in the morning, you react kind of slow. And you didn't have your fill of hot black caffeinated beverage, aka coffee yet. You have no idea who this could be so you take a look at the screen of your security system. It looks like some woman.<br>
<br>
<<printThought $player "Wait a second...">><br>
<br>
It seems to be your former girlfriend <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. Weird that you didn't recognise her faster. Maybe she's here to fetch the rest of her stuff.<br>
<br>
<<if $player.flags.commando>>
[<<moveTo "event_exgirlfriend_commando_1" "Open the door." 60>>]
<<else>>
[<<moveTo "event_exgirlfriend_fetchthings_2" "Open the door." 60>>]
<</if>>
</div>/*#
#desc: exgf asks for her things morning of the 2nd day
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<set $scene.naked = false>>
<<set $scene.female = false>>
<<set $scene.completeoutfit = false>>
<<if $player.indecent >= 90>>
<<set $scene.naked = true>>
<<set $npc_exgirlfriend.flags.nakedwhiledelivery = true>>
<<applyExperience 'humiliation' 8 'slightly' $SEEN_FRIEND>>
<<elseif (setup.checkVisibleClothingTag('female')>10)>>
<<set $scene.female = true>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<<if (setup.getItemFromType("panties")=="cotton_panties") && (setup.getItemFromType("stockings")=="black_pantyhose") && (setup.getItemFromType("legwear")=="skirt_black") && (setup.getItemFromType("shirt")=="satin_blouse")>>
<<set $scene.completeoutfit = true>>
<</if>>
<<set $npc_exgirlfriend.flags.woreherclothes = true>>
<</if>>
<<set $player.flags.exgirlfriend.met = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png" "./images/characters/npc_exgirlfriend.png">>
<div id="invframe" class="scrolltext">
You open the door.<br>
<br>
<<if $scene.naked||$scene.female>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are ... are ...@@"<br>
<br>
For some reason she starts to stutter. Which is strange, because she's normally not a person to be at loss for words. The only time you ever remember hearing her stutter is when you caught her with the yoga instructor. So why does she... Oh fuck.
<<if $player.flags.landlordsawyounaked>>
You did it again.
<</if>>
<<else>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are you?@@"<br>
<br>
<</if>>
<<if $scene.female>>
<<if !$scene.completeoutfit>>
Well... again as in you messed up again. Big time. You opened the door. Wearing her clothes. A few of them at least.
<<else>>
Well... again as in you messed up again. Big time. You opened the door. Wearing her clothes. Pretty much all of them at once.
<</if>>
<br><br>
"@@.npc_exgirlfriend;<<=$player.first_name>>...@@", she tries to force a smile on her obviously puzzled face, and continues a lot fainter,"@@.npc_exgirlfriend;Oh god, this explains so much.@@"<br>
<br>
Having calmed herself a little she starts again, this time in a normal voice and while pushing you inside the foyer, closing the door behind her. "@@.npc_exgirlfriend;<<=$player.first_name>>, are those mine? I was in the vicinity, and thought I could pick up some of my missing stuff. Is that why my dresses always felt a little bit stretched? What is going on <<=$player.first_name>>? We were together for 3 years, you own me an explanation!@@"<br>
<br>
You try your best to explain the train of decisions that culminated in this situation. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> listens to you patiently, even though you seem to stumble over every 2nd word. After you're done, she sighs.<br>
<br>
"@@.npc_exgirlfriend;<<=$player.first_name>>, first of all, I'm sorry you lost your job. The timing could not have been worse. But listen to yourself. Your explanation makes no sense. Null, nada, niente. If you were going to wear my undergarments under your regular clothes, why did you open the door dressed in my clothes? You are ... sorry, were the software developer. Does this sound logical to you?@@"<br>
<br>
<<printThought $player "No... not at all">><br>
<br>
"@@.npc_exgirlfriend;This lack of communication is exactly what ended our relation in the first place. I know it's too late now, but I want you to know that this wasn't your fault... well, not only your fault. I only accepted your proposal to remain a virgin since I thought you were trying to impress me and that you would grow past such silliness sooner or later. I should have simply told you the truth and then we could have fucked like rabbits. But you always seemed so grounded on the whole ordeal, that I never managed to bring it up. So please, whatever is going on in your head right now... cut the whole staying virgin bullshit and try to have some fun for once in your life! And if this is your new idea of having fun, well kudos to you! I think you can keep these. And the boxes as well, if you've found them already. Take care. I'm really going to miss those magic hands of yours.@@"<br>
<br>
<<else>>
<<if $scene.naked>>
For some reason you opened the door
<<if $player.timebased.horny >= 50>>
sporting only a raging erection.
<<else>>
wearing little to nothing.
<</if>>
Now you're testing how well your face can render different shades of red. You quickly grab a towel and put it over your hips.
<br><br>
<<if $player.timebased.horny >= 50>>
"@@.npc_exgirlfriend;Oh my. If you'd only shown that kind of initiative when we were still together...@@"<br>
<<else>>
"@@.npc_exgirlfriend;Interesting. If you'd only shown that kind of initiative when we were still together...@@"<br>
<</if>>
<br>
<</if>>
You ask her what she wants.<br>
<br>
"@@.npc_exgirlfriend;Straight to the point. Okay, I was just in the vicinity and I think I left a few items when I relocated hastily last week.@@"<br>
<br>
<<printThought $player "Oh shit, she is talking about her underwear.">><br>
<br>
You hastily make up an excuse, that you thought she did not need these clothes anymore, and that's why you donated them to the used clothing collection. You offer to fetch her boxes though.<br>
<br>
"@@.npc_exgirlfriend;Oh... Well, that's too bad. As for the boxes; if you don't mind, I want to leave them at your place for the time being. They're rather heavy and my new place is not really that big, so maybe I can fetch them later?@@"<br>
<br>
You nod but you're kind of curious about the black box and ask about its content.<br>
<br>
"@@.npc_exgirlfriend;Wha...! Nothing... Nothing of importance. Simply some mementos from earlier. Yeah. Look,@@" she tries to distract, "@@.npc_exgirlfriend;I know it's too late now, but I want you to know that this wasn't your fault... alone. I only accepted your proposal to remain a virgin since I thought you were trying to impress me and that you would grow past such silliness sooner or later. I should have simply told you the truth and then we could have fucked like rabbits. But you always seemed so grounded on the whole ordeal that I never managed to bring it up. So please, cut the whole staying virgin bullshit and try to have some fun for once in your life! Well, take care. I'm really going to miss these magic hands of yours.@@"<br>
<br>
<</if>>
And with those words she departs.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 360 "<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: exgf arrives at the same time as your online order
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<setScene>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You hear your doorbell ring but being a bit drowsy this early in the morning you react kind of slow. And you didn't have your fill of hot black caffeinated beverage, aka coffee yet. That must be your delivery. Do drones ring bells? Well it doesn't matter. What does matter indeed is that your delivery has arrived just in time for you to save your first workday.<br>
<br>
<<printThought $player "Save my first workday huh? Well, it's not like my workday would have needed any saving if I didn't mess up last week. Well, time to stop dwelling in the past. Looks like everything is going to work out somehow anyway. Yeah!">><br>
<br>
[<<moveTo "event_exgirlfriend_recive_onlineorder_2" "Open the door for the delivery." 60>>]
</div>/*#
#desc: exgf gives you your online order and asks for her things
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<setScene>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<addItem "alizon_box_1">>
<<set $scene.naked = false>>
<<if $player.indecent >= 90>>
<<set $scene.naked = true>>
<<set $npc_exgirlfriend.flags.nakedwhiledelivery = true>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.flags.exgirlfriend.met = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png" "./images/characters/npc_exgirlfriend.png">>
<div id="invframe" class="scrolltext">
You open the door. That's strange. The delivery drone looks a lot like your former girlfriend <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. As you focus your eyes, the painful truth sinks in, that it is as a matter of fact your former girlfriend.<br>
<br>
<<if $scene.naked>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are ... are ...@@"<br>
<br>
For some reason she starts to stutter. Which is strange, because she's normally not a person to be at loss of words. The only time you ever heard her stutter is when you caught her with the yoga instructor. So why does she... Oh fuck.
<<if $player.flags.landlordsawyounaked>>
You did it again.
<</if>>
For some reason you opened the door
<<if $player.timebased.horny >= 50>>
sporting only a raging erection.
<<else>>
wearing little to nothing.
<</if>>
You start testing how good your face can render different shades of red as you quickly grab a towel and put it over your hips.<br>
<br>
<<if $player.timebased.horny >= 50>>
"@@.npc_exgirlfriend;Oh my. If you'd only shown that kind of initiative when we were still together...@@"<br>
<<else>>
"@@.npc_exgirlfriend;Interesting. If you'd only shown that kind of initiative when we were still together...@@"<br>
<</if>>
<br>
<<printThought $player "What's that supposed to mean?">>
<<else>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are you?@@"
<</if>>
<br><br>
You ask her what she wants.<br>
<br>
"@@.npc_exgirlfriend;Straight to the point, huh? Okay, I was just in the vicinity, and I think I left a few items when I relocated hasty last week. And some strange looking drone flew against the wall down by the entrance for a few times before dropping this. Then it simply flew away. I think it's for you given that your name and address is on it.@@"<br>
<br>
<<printThought $player 'So much for the "revolution in personal delivery." Revolution my ass!'>> <br>
<br>
You take the brown Alizon cardboard box and fetch her belongings from the wardrobe in the bedroom.<br>
<br>
"@@.npc_exgirlfriend;If you don't mind, I want to leave the boxes at your place for the time being. They're rather heavy and my new place is not really that big, so maybe I can fetch them later?@@"<br>
<br>
You nod and put the boxes back in the wardrobe. But you're kind of curious about the black box and ask about its content.<br>
<br>
"@@.npc_exgirlfriend;Wha...! Nothing... Nothing of importance. Simply some mementos from earlier. Yeah. Look,@@" she tries to distract, "@@.npc_exgirlfriend;I know it's too late now, but I want you to know that this wasn't your fault... alone. I only accepted your proposal to remaining virgin since I thought you were trying to impress me and that you would grow past such silliness sooner or later. I should have simply told you the truth and then we could have fucked like rabbits. But you always seemed so grounded on the whole ordeal that I never managed to bring it up. So please, cut the whole staying virgin bullshit and try to have some fun for once in your life! Well, take care. I'm really going to miss those magic hands of yours.@@"<br>
<br>
And with these words she departs.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 360 "<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: meet exgf naked 2nd morning
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $eg_e3 = {}>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<set $eg_e3.naked = false>>
<<if $player.indecent >= 90>>
<<set $eg_e3.naked = true>>
<<set $npc_exgirlfriend.flags.nakedwhiledelivery = true>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.flags.exgirlfriend.met = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png" "./images/characters/npc_exgirlfriend.png">>
<div id="invframe" class="scrolltext">
You open the door.<br>
<br>
<<if $eg_e3.naked>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are ... are ...@@"<br>
<br>
For some reason she starts to stutter. Which is strange, because she's normally not a person to be at loss for words. The only time you ever remembering her stuttering is when you caught her with the yoga instructor. So why does she... Oh fuck.
<<if $player.flags.landlordsawyounaked>>
You did it again.
<</if>>
For some reason you opened the door wearing little to nothing, and test how good your face can depict different shades of red. You quickly grab a towel and put it over your hips.<br>
<br>
"@@.npc_exgirlfriend;Interesting@@", she pondered, "@@.npc_exgirlfriend;If you'd only shown that kind of initiative when we were still together.@@"<br>
<br>
<<printThought $player "What's that supposed to mean?">>
<<else>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are you?@@"
<</if>>
<br><br>
You ask her what she wants.<br>
<br>
"@@.npc_exgirlfriend;Straight to the point, huh? Okay, I was just in the vicinity, and I think I left a few items when I relocated hasty last week.@@"<br>
<br>
You fetch her belongings from the wardrobe in the bedroom.<br>
<br>
"@@.npc_exgirlfriend;If you don't mind I want to leave the boxes at your place for the time being. They're rather heavy and my new place is not really that big, so maybe I can fetch them later?@@"<br>
<br>
You nod and put the boxes back in the wardrobe. But you're kind of curious about the black box and ask about its content.<br>
<br>
"@@.npc_exgirlfriend;Wha...! Nothing... Nothing of importance. Simply some mementos from earlier. Yeah. Look,@@" she tries to distract, "@@.npc_exgirlfriend;I know it's too late now, but I want you to know that this wasn't your fault... alone. I only accepted your proposal to remain a virgin since I thought you were trying to impress me and that you would grow past such silliness sooner or later. I should have simply told you the truth and then we could have fucked like rabbits. But you always seemed so grounded on the whole ordeal that I never managed to bring it up. So please, cut the whole staying virgin bullshit and try to have some fun for once in your life! Well, take care. I'm really going to miss those magic hands of yours.@@"<br>
<br>
And with those words she departs.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 360 "<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: call exgirlfriend
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You decide it's for the best not to call <<=setup.getNpcName('npc_exgirlfriend', 'first')>>.
[<<moveTo $beforePhonecalllocation "Back" 1 "<<set $currentcall = false>>">>]
</div>/*#
#desc: landlord bumps into you/catches you from falling as you arrive home, tells you he fixed the washing machine
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_hallway_01.png" "./images/characters/npc_landlord.png">>
<div id="invframe" class="scrolltext">
Getting home later that evening you still have many strange thoughts about what happened today. Your "disciplinary measure." On one hand it was painful and you hated every second of it, but on the other hand... you kind of liked it.<br>
<br>
<<printThought $player "Am I turning into some kind of pervert? No, I'm pretty sure it's simply the stress building up...">><br>
<br>
You are so caught up in your thoughts that you bump into a person leaving your flat. Startled about the sudden impact you lose your balance and start falling. You're already bracing to hit the floor when two big, strong hands catch you while you fall. Turns out, <<=setup.getNpcName('npc_landlord', 'first')>> was just leaving your apartment.<br>
<br>
"@@.npc_landlord;Buenas tardes chico.@@"<br>
<br>
You hang in his hands, unsure what to do. Both of you realise you're just standing in the hallway looking like you've just ended a long, hot session of tango, when you hear your elderly neighbor clearing her throat, to signal both of you that she wants to pass, since the both of you kind of block the rather small hallway.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. This is so embarrassing...">><br>
<br>
The awkwardness makes your cheeks turn red. <<=setup.getNpcName('npc_landlord', 'first')>> helps you up and you let the elderly lady pass.<br>
<br>
"@@.npc_landlord;You really should sleep more chico. You still look very agotado ... how do you say... depleted. Anyway, I've just finished replacing your wash-machine and fixed the tiles which where burned in the fire. Everything should be as good as new, if not better, since your new wash machine is brand new. I've managed to convencer ... convince the company which produced the wash machine that it was a production mistake and that you'll refrain from charges if they come up with all additional costs, which they did. So... de nada.@@"<br>
<br>
You don't know what to say. At least one problem less to worry about. You shake <<=ps(setup.getNpcName('npc_landlord', 'first'))>> hand and thank him and make a mental note to make it up to him somehow in the near future.<br>
<br>
[<<moveTo "room_foyer" "Enter your apartment." 5>>]
</div>/*#
#desc: landlord comes for first month's rent (phonecall or in person)
#status: FINISHED 0.4.0.0
#*/
<<set $event_landlord_rent_first_outside = false>>
<<if $roomchange == true>>
<<if $beforetasklocation =='room_wake_up'>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<else>>
<<set $player.inside = false>>
<</if>>
<<include rentEvent>>
<<setScene>>
/% this is a hacky workaround for this + manager inspection chain triggering due to going to work very early %/
<<if $currentTasks.manager_morning_inspection_task.condition == "Complete">>
<<set $currentTasks.manager_morning_inspection_task.condition = "">>
<<set $currentTasks.manager_morning_inspection_task.finished = false>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if setup.inPassageTag($beforetasklocation,'home')>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<<else>>
<<createBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
/%<<set _tmpArray = ['room_wake_up','room_bedroom','room_foyer','room_livingroom','room_kitchen','room_room_bedroom_wardrobe_1']>>%/
<<if setup.inPassageTag($beforetasklocation,'home')>>
<<if $player.llocation=="room_bedroom">>
You're awoken by the ring of the bell.
<<else>>
Your door bell is ringing.
<</if>>
Who could it be at this early hour? You decide to get out of your bed and to check out who the mystery visitor is. Taking a look at the Screen of your security system you realise it's <<=setup.getNpcName('npc_landlord', 'first')>>.<br>
<br>
<<printThought $player "<<=setup.getNpcName('npc_landlord', 'first')>>? At such an early hour? I better check if he needs anything.">><br>
<br>
[<<moveTo event_landlord_rent_first_2 'Open the door.' 30>>]
<<else>>
<<set $event_landlord_rent_first_outside = true>>
Your phone is ringing, but you don't know the number. Someone from within town. You decide to pick up.<br>
<br>
"@@.npc_landlord;Heya, chico. <<=$npc_landlord.first_name>> Al aparato! Hey, listen, I don't think we did any business together, since your girlfr... ex-girlfriend always paid the rent. I have a certain desconfianza... distrust for digital banking and it's nice to see all the resident's from time to time to make sure everything's all right, so I collect the rent by hand every month. I was just at your flat, but you seem to be out. Maybe you got time for a short meeting, before you head off to work? It'll just take a few minutes of your time!@@"<br>
<br>
You agree to hurry home and meet with <<=setup.getNpcName('npc_landlord', 'first')>> in at the apartment tower.<br>
<br>
[<<moveTo event_landlord_rent_first_2 'Continue.' 600>>]
<</if>>
</div>/*#
#desc: pay first month's rent (return to apartment if triggered by phonecall), offers you "job" cleaning his flat
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $scene.firstTimeChica = false>>
<<set $scene.longStare = false>>
<<set $scene.first_2_again = false>>
<<set $scene.first_2_rentBonus = 0>>
<<set _theme2 = false>>
<<if $player.indecent>90>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<set $player.flags.landlordsawyounaked = true>>
<<set $scene.longStare = true>>
<<set _theme2 = true>>
<<elseif $player.indecent>50>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<if $player.flags.landlordsawyounaked>>
<<set $scene.first_2_again = true>>
<</if>>
<<set _theme2 = true>>
<<set $scene.longStare = true>>
<<elseif $player.indecent>10>>
<<applyExperience 'humiliation' 12 'almost' $SEEN_FRIEND>>
<</if>>
<<if (setup.checkVisibleClothingTag('female')>10)>>
<<set _tmpStat = setup.checkVisibleClothingTag('female')>>
<<set $npc_landlord.call_name = "Chica">>
<<set $scene.firstTimeChica = true>>
<<set $scene.longStare = true>>
<<set $scene.first_2_rentBonus = 10>>
<<incrementEmotion 'affection' 'npc_landlord' 1>>
<<set _theme2 = true>>
<</if>>
<<if (setup.checkVisibleClothingTag('underwear')>20)>>
<<set _tmpStat = setup.checkVisibleClothingTag('underwear')>>
<<setThreshold 'bimbofication' 'wardrobe_malfunction' 'open_door' true>>
<<set $scene.longStare = true>>
<<if (setup.checkVisibleClothingTag('female')>30)>>
<<set $scene.first_2_rentBonus += 10>>
<</if>>
<<set $event_landlord_rent_first_2_theme2 = true>>
<</if>>
<<if ((setup.checkVisibleClothingTag('female')>10) && (setup.checkVisibleClothingTag('underwear')<20))>>
<<if !$player.flags.landlordsawyouinfemaleclothing>>
<<set $player.flags.landlordsawyouinfemaleclothing=true>>
<<else>>
<<set $scene.first_2_again = true>>
<</if>>
<<elseif ((setup.checkVisibleClothingTag('female')>10) && (setup.checkVisibleClothingTag('underwear')>20))>>
<<if !$player.flags.landlordsawyouinfemaleunderwear>>
<<set $player.flags.landlordsawyouinfemaleunderwear=true>>
<<else>>
<<set $scene.first_2_again = true>>
<</if>>
<</if>>
<<set $scene.totalRent = Math.round($player.money.base_rent*((100-$scene.first_2_rentBonus)/100))>>
<<if _theme2>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_5'
5
'event_psychiatrist_session_landlord_2'
false
'theme_psychiatrist_landlord_header'
>>
<</if>>
<<addItem "card_landlord">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set _tmp = setup.checkVisibleClothingTag()>>
<<createBGR "./images/locations/flat_hallway_01.png"
"./images/characters/npc_landlord.png">>
<div id="invframe" class="scrolltext">
<<if $event_landlord_rent_first_outside>>
You enter your apartment building. <<=setup.getNpcName('npc_landlord', 'first')>> is already waiting for you.
<<else>>
You get to your foyer and open the door for <<=setup.getNpcName('npc_landlord', 'first')>>.
<</if>>
<<if $scene.longStare>>
Too late you realise what you're wearing, and stop in mid movement like you're riveted to the spot.<br>
<br>
<<printThought $player "Again? Really? Am I that absent-minded, that this happens to me AGAIN? AAH!">><br>
<br>
<<if $scene.firstTimeChica>>
"@@.npc_landlord;Buenas tardes chico. I just wanted to...@@", he suddenly stops talking. His gaze slowly wanders down along your body, which makes all chances of this being a bad dream null and void. His eyes rests for an uncomfortable long time on your exposed body, and you think you see a soft smile to flash over his lips.<br>
<br>
"@@.npc_landlord;Buenas tardes <<=$npc_landlord.call_name>>. I... I did not know you're into such things. Ahem... Looks good on you. Give me a moment to collect my thoughts, I might be able to remember why I came here.@@"<br>
<br>
You can't help it, that comment made your face bright red.<br>
<br>
"@@.npc_landlord;Ah yes. Now I remember.@@"
<<elseif (setup.checkVisibleClothingTag('female')>10)>>
"@@.npc_landlord;Buenas tardes <<=$npc_landlord.call_name>>. I just wanted to...@@", he suddenly stops talking. His gaze slowly wanders down along your body, which makes all chances of this being a bad dream null and void. His eyes rest for an uncomfortably long time on your exposed body, and you think you see a soft smile to flash over his lips.<br>
<br>
"@@.npc_landlord;Looking good as usual <<=$npc_landlord.call_name>>.@@"<br>
<br>
You're still not used to this kind of exposure which turns your face bright red again.<br>
<br>
<<elseif $player.indecent>=90>>
"@@.npc_landlord;Buenas tardes <<=$npc_landlord.call_name>>. I just wanted to...@@" He suddenly stops talking. His gaze slowly wanders down along your body, which makes all chances of this being a bad dream null and void.<br>
<br>
"@@.npc_landlord;You should really put some clothes on. You might catch a cold. Give me a moment to collect my thoughts, I might be able to remember why I came here.@@"<br>
<br>
You use this short pause to grab a towel.<br>
<br>
"@@.npc_landlord;Ah yes. Now I remember.@@"
<</if>>
<<else>><br><br>
"@@.npc_landlord;Buenas tardes <<=$npc_landlord.call_name>>.@@"
<</if>>
"@@.npc_landlord;I'm here to collect the alquiler... the rent. So, according to our contract you owe me <<=$player.money.base_rent>> Credits.@@"<br>
<br>
<<if $player.money.base_rent > ($player.money.total+$player.money.maxcredit)>>
<<printThought $player "Oh No! This exceeds my credit range by far! I'm broke!">><br>
<br>
<<elseif $player.money.base_rent > $player.money.total>>
<<printThought $player "Great. In the red again. This is going to be a tough month...">><br>
<br>
<<else>>
<br>
<</if>>
<<if $scene.first_2_rentBonus>0>>
"@@.npc_landlord;But...@@", again he seems to absorb your looks through his eyes. "@@.npc_landlord;Ahem... But because you had some... tough times lately, I'm sure I can knock some credits off. How does <<=$scene.totalRent>> Credits sound?@@"<br>
<br>
<<if $scene.totalRent > ($player.money.total+$player.money.maxcredit)>>
<<printThought $player "Nice gesture, but I'm still broke as hell.">><br>
<br>
<<else>>
<<printThought $player "Nice! But wait a second? Am I getting a rent ease because he is into crossdressers?">><br>
<br>
<</if>>
<</if>>
He holds out his datapad for you to sign, so the money can be transfered to his account. You put your signature on the screen.<br>
<br>
"@@.npc_landlord;Well, have a nice day <<=$npc_landlord.call_name>>!@@"<br>
<br>
<<if $scene.first_2_rentBonus>0>>
<<printThought $player "Did that really just happen? Did I just sell my body for the rent?">><br>
<br>
<</if>>
He Is about to leave, but something makes him hesitate. He turns back to you.<br>
<br>
"@@.npc_landlord;Listen, <<=$npc_landlord.call_name>>. I know the rent around here is not very barato... cheap. And having to pay this rent alone can be kind of disheartening.
<<if $scene.longStare>>
It might even lead to erratic behaviour or something like ... you know what, let's skip this part.
<</if>>
Anyway, take this.@@"<br>
<br>
He hands you a contact card.<br>
<br>
"@@.npc_landlord;I'm usually busy fixing everything in this apartment building, so I hardly have enough time to keep my own flat in order. If you have some time to spare, you could help out an old man from time to time. I don't have any money to pay you, but I am allowed to modified the rent rates of the flats in this building. So, if you're interested, you know where to find me!@@"<br>
<br>
With these words he leaves you alone on the hallway.<br>
<br>
[<<moveTo "room_foyer" "Go back to your Foyer." 30 '<<set $player.cutscene.lockinventory = false>><<set $player.money.total -= $scene.totalRent>>'>>]
</div>/*#
#desc: call landlord root
#status: STUB 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<set _firstcall = false>>
<<set _call = 0>>
/%
<<if (
( (($now.getUTCDay()>0)&&($now.getUTCDay()<5)) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=17)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==5) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=13)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==6)||($now.getUTCDay()==0) && (($now.getUTCHours()>=10) && ($now.getUTCHours()<=24)) )
)>>
<<set _call = 1>>
<<else>>
<<set _call = 0>>
<</if>>
%/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch _call>>
<<case 0>>
You try to call <<=setup.getNpcName('npc_landlord', 'first')>>. He does not answer his phone.<br>
<br>
@@.error;WARNING!@@<br>
@@.error;This part of the game is not yet implemented.@@<br>
<br>
[<<moveTo $beforePhonecalllocation "Back" 1 "<<set $currentcall = false>>">>]
<</switch>>
</div><<initRoom>>
<<if $npc_manager.stage == 2 && $player.flags.fem_style.name == "">>
<<moveTo "event_insurance_1">>
<<else>>
<<moveTo "event_rent_endless">>
<</if>><<set _year = $now.getFullYear()>>
<<set _month = $now.getUTCMonth()>>
<<if $now.getUTCMonth() >= 11>>
<<set _year += 1>>
<<set _month = 0>>
<<else>>
<<set _month += 1>>
<</if>>
/%noon event to add event for next time you goto foyer for rent to trigger %/
<<set _nextDate = new Date(_year,_month, 1,10,0,0,0)>>
<<addEvent 'monthly_rent_populator'
'{"trigger":"always","type":["date"],"priority":500}'
'{"szene":"monthly_rent_populator"}'
_nextDate
>>/*#
#desc: rent/gym payment event
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<addEvent 'rentEvent'
'{"trigger":"always","type":["next"],"location":"room_foyer","priority":500}'
'{"szene":"event_rent"}'
>>
<<if $currentTasks.manager_morning_inspection_task.finished>>
<<set $currentTasks.manager_morning_inspection_task.finished = false>>
<<set $currentTasks.manager_morning_inspection_task.condition = ''>>
<</if>>
<<if $gym.membership.active>>
<<set $player.money.total -= $gym.membership.monthly_price>>
<<else>>
<<initRoom>>
<<moveTo $beforetasklocation>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text from <<printShopName 'gym'>>, your gym informing you that this month's membership fee of $$<<=$gym.membership.monthly_price>> has been automatically deducted from your bank account.<br>
<br>
<<if $player.money.total < 0>>
<<printThought $player "Shit, that puts me in the red! Maybe I should get a refund and do something else for fitness this month...">><br>
<br>
<</if>>
[<<moveTo $beforetasklocation "Back" 5>>]
</div>/*#
#desc: landlord comes by to collect the monthly rent (repeats every month indefinitely)
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<include rentEvent>>
<<setScene>>
<<if $player.money.total > 0>>
<<if $player.money.base_rent > $player.money.total>>
<<set $scene.result = "minor_debt">>
<<elseif $player.money.total > $player.money.base_rent*2>>
<<set $scene.result = "easy_afford">>
<<else>>
<<set $scene.result = "afford">>
<</if>>
<<else>>
<<if $player.money.base_rent > -2*$player.money.total>>
<<set $scene.result = "gameover">>
<<elseif $player.money.base_rent > -$player.money.total>>
<<set $scene.result = "cripling_debt">>
<<else>>
<<set $scene.result = "minor_debt">>
<</if>>
<</if>>
<<set $player.money.total -= $player.money.base_rent>>
<<if (setup.checkVisibleClothingTag('female')>10)>>
<<set $npc_landlord.call_name = "Chica">>
<<set $scene.firstTimeChica = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_hallway_01.png" "./images/characters/npc_landlord.png">>
<div id="invframe" class="scrolltext">
It's that time again as <<=setup.getNpcName('npc_landlord', 'first')>> appears to collect the rent.<br>
<br>
<<if $scene.firstTimeChica>>
"@@.npc_landlord;Hola, <<=$npc_landlord.call_name>>. I like the new style, it suits your body well. Unfortunately I am here for less positive reasons. Once again the rent, she is due. This month's rent will be <<=$player.money.base_rent>>.@@"
<<else>>
"@@.npc_landlord;Hola, <<=$npc_landlord.call_name>>. This month's rent will be <<=$player.money.base_rent>>.@@"
<</if>>
<br><br>
<<switch $scene.result>>
<<case "gameover">>
Your heart sinks, you're already in debt up to your eyeballs there's literally no way you can afford any part of the rent payment.
<<case "cripling_debt">>
Authorizing the credit transfer you wince as you plunge even further into debt.<br>
<br>
Noticing your bank "balance" in the course of the transaction <<=setup.getNpcName('npc_landlord', 'first')>> comforts you while also delivering a warning. "@@.npc_landlord;Careful, <<=$npc_landlord.call_name>>. The bosses... they say if you no catch up and make proper cash payment they going to kick you out. I try argue but... they no know you like I do, they no care. So please, so what you can to be more prepared by next month.@@"
<<case "minor_debt">>
Once again plunging into debt you sigh as you make the payment. You've secured residency for another month but you really need to step things up with your money-making so you can start actually building up savings before something goes catastrophic.
<<case "afford">>
You wince a bit as you hand over the money as it wipes out most of your savings; though at least you can afford it without going into debt.<br>
<br>
"@@.npc_landlord;Gracias, <<=$npc_landlord.call_name>>.@@" He states with a nod.
<<case "easy_afford">>
You almost feel happy as you hand over your payment. It took some work to recover from being left on your own by your ex but you just paid off your rent with plenty left over. Whatever else is going on in your life you're finally back on firm financial footing.
<<default>>
ERROR unknown scene result: <<=$scene.result>>
<</switch>>
<br><br>
<<if $scene.result == "gameover">>
<<=setup.getNpcName('npc_landlord', 'first')>> sighs as you finally notice a pair of stern looking men standing behind him.<br>
<br>
"@@.npc_landlord;I am sorry, <<=$npc_landlord.call_name>>. I wish it was some other way but, well... the management say you no pay, you gone...@@"<br>
<br>
You try to object but it seems that <<=setup.getNpcName('npc_landlord', 'first')>> has no more say in the matter as it is explained that you have until the end of the day to move out or your things will be thrown away.<br>
<br>
[<<moveTo "gameover_rent" "Continue." 0>>]
<<else>>
You thank him for his time and he departs.<br>
<br>
[<<moveTo "room_foyer" "Go back to your apartment." 5>>]
<</if>>
</div>/*#
#desc: end of qualifying period without success
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $npc_manager.satisfaction > $npc_manager.anger>>
<<set $player.work.qualifyingperiod += 5>>
<</if>>
<<set $scene.first_extension = !$player.work.qualification_extension>>
<<if $scene.first_extension>>
<<set $player.work.qualification_extension = true>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Your workday over <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office bearing a stern frown.<br>
<br>
"@@.npc_manager;Come inside, <<=$player.first_name>>, we need to talk.@@"<br>
<br>
You gulp and follow as instructed, nervously watching as she walks around her desk and takes a seat.<br>
<br>
"@@.npc_manager;So, hazard a guess as to what today is?@@"<br>
<br>
<<if setup.getTotalValue("smart") >= 10 || setup.getTotalValue("smart") > setup.getTotalValue("bimbofication")>>
You nod, replying that it should be the scheduled "end" of your qualifying period.<br>
<br>
"@@.npc_manager;Not completely useless@@" she states, though there is hardly any warmth in her voice.
<<else>>
You shake your head, unable to think of what she might be refering to.<br>
<br>
"@@.npc_manager;So ditzy... today should be the end of your "qualifying" period as a SISSY secretary.@@"
<</if>>
<br><br>
She pauses to let things sink in before continuing.<br>
<br>
<<if $scene.first_extension>>
<<if $npc_manager.satisfaction > $npc_manager.anger>>
"@@.npc_manager;While your performance has been more satisfactory than not your progress has been quite... lacking. Since you do seem interested in performing your duties I am going to grant you a reprieve - an additional week. That means five working days, to see if you can get caught up to where I expect you to be... Good luck!@@"<br>
<br>
She smiles somewhat enigmatically, obviously expecting you to somehow figure out what "caught up" means. Unable to think of anything else you thank her for the favour and quickly head out.<br>
<br>
[<<moveTo "company_lobby" "Leave the Office." 120>>]
<<else>>
"@@.npc_manager;Unfortunately, from what I have seen, well... despite my best efforts you just do not seem suitable for this position. This is the whole purpose of a qualifying period, of course but I will not hide the fact that I am unhappy to come to the conclusion but, well... the data does not lie.@@"<br>
<br>
<<printThought $player "Oh no, I'm about to be fired!">><br>
<br>
[<<moveTo "event_manager_qualifier_ultimatum_reprieve" "Beg her to reconsider." 60>>]<br>
[<<moveTo "gameover_failed_trial" "Leave the Office." 0>>]
<</if>>
<<else>>
"@@.npc_manager;All this after I already gave you an extension... so very disappointing.@@"<br>
<br>
[<<moveTo "event_manager_qualifier_ultimatum_reprieve" "Beg her to reconsider." 60>>]<br>
[<<moveTo "gameover_failed_trial" "Leave the Office." 0>>]
<</if>>
</div>/*#
#desc: beg for an extension of qualifying period
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'submission' 16 'normal' $SEEN_FRIEND>>
<<set $player.work.qualifyingperiod += 5>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You throw yourself at her feet and her mercy, bowing and scraping and submissively imploring her to give you another chance. She remains unmoved as she considers your desperate plea, staring at you so hard it is like she is peering directly into your soul.<br>
<br>
You hold your breath as she finally opens her mouth to speak.<br>
<br>
"@@.npc_manager;Very well. A final chance. I will even give you a hint as to what it is that I desire. A proper SISSY secretary should be as beautiful as she is obedient, appearing as feminine as she can inside from her perfectly made up face down across her sweet outfit, from her lovely panties all the way to her properly caged clitty. She should fulfill every task put before her with joy and always be focused on making her superior's life easier. I will give you one more week to try and rise to this occasion... see that you do. Dismissed.@@"<br>
<br>
Trembling slightly at the intensity of her instruction you reflexively curtsey and hurry home, your mind thick with thoughts.<br>
<br>
<<printThought $player "Is this what I want? Am I willing to transform into that which she desires?">><br>
<br>
[<<moveTo "company_lobby" "Leave." 180>>]
</div>/*#
#desc: midway through qualification period, get warning
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Your workday at an end <<=setup.getNpcName('npc_manager', 'formal')>> pops out from her office.<br>
<br>
"@@.npc_manager;Just wanted to pop in and let you know that you there is barely a week remaining of your "qualification" period. There is still time to sort yourself out and prove your worthiness to be my SISSY secretary but well... you must not dawdle!@@"<br>
<br>
You thank her for the tip and she ducks back inside her office.<br>
<br>
<<set _text = 'Office of '+setup.getNpcName('npc_manager', 'formal')>>
[<<moveTo "room_office_manager" _text 10>>]<br>
[<<moveTo "company_lobby" "Leave the office" 120>>]
</div>/*#
#desc: call manager
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You try to call <<=setup.getNpcName('npc_manager', 'formal')>>. She does not answer her phone.
[<<moveTo $beforePhonecalllocation "Back" 1 "<<set $currentcall = false>>">>]
</div>/*#
#desc: manager calls you if you changed name not in her presence
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = "Phonecall">>
<<if $roomchange == true>>
<<set $npc_manager.call='Mistress'>>
<<set $npc_manager.title='Mistress'>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate to setup.setNextDate($now, 1, 9, 0)>>
<<case 5>>
<<set _nextDate to setup.setNextDate($now, 3, 9, 0)>>
<<case 6>>
<<set _nextDate to setup.setNextDate($now, 2, 9, 0)>>
<</switch>>
<<addWorkEvent 'admin_office_visit' '{"trigger":"morning","minTimeDiff":0,"type":"always","chance":100,"repeat":false,"priority":200}' '{"szene":"event_work_femalesecretary_1_0","length":"30"}' _nextDate>>
<</if>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You hesitantly answer your phone and listen to the businesslike yet... slightly excited voice of your <<=setup.getNpcName('npc_manager', 'manager')>>.<br>
<br>
"@@.npc_manager;Hello, my dear. I do hope I have the fortune of being the first to congratulate you on your new name - Sissy Secretary <<=$player.first_name>> <<=$player.last_name>>... yes, that has quite the ring to it.@@"<br>
<br>
You shiver slightly at the sound of your new name and how seductively feminine it sounds on her lips...<br>
<br>
"@@.npc_manager;Since you are so nicely coming into your true self I thought it would be a good time for you to begin addressing me in a more appropriate manner. Henceforth I expect you to refer to me properly, that means I expect to hear a Mistress in front of my name. This should be quite simple for you as it more accurately reflects what our relationship has always been, you using Mrs. was always unnatural and inappropriate so it is good that we can now move beyond that facade.@@"<br>
<br>
She pauses until you softly reply "Yes, <<=setup.getNpcName('npc_manager', 'formal')>>" you state, your voice trembling slightly.<br>
<br>
"@@.npc_manager;Lovely, just what I wanted to hear. Well, I have other things to be working on, I will see you at work, and do not forget my new title unless you want to be a very sorry Sissy Secretary...@@"<br>
<br>
She hangs up before you can get another word in edgewise.<br>
<br>
[<<moveTo "room_livingroom" "Put your phone away" 30>>]
</div>/*#
#desc: talk to manager about taking sissy pill
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<if $roomchange == true>>
<<addNpcTheme 'npc_manager' 'transformation_item' 'theme_manager_transformation_item_0'
0
'event_manager_theme_transformation_items'
true
'theme_manager_transformation_header'
>>
<<addItem "sissy_pill_mk1" 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Ah yes. The ominous pink pill you so readily accepted.
<<if $npc_manager.flags.seensissypilleffect>>
You have experienced its effect firsthand.
<<else>>
It seems as if you have experienced its effect firsthand.
<</if>>
But do not fret, the effects are neither permanent, nor do they leave any lasting side effects... yet. With this pill, as with many other things in life, it is the dose that makes the poison. But that hardly answers your question. The pill is a combination between hormonal and nano technology, which adjust parameters of your body to appear more feminine. These little babies@@", she explains, while holding a few of them in her hand, "@@.npc_manager;will be the next step in creating a world where everyone can be whatever they desire. For the right amount of money, of course. It is not like we are running a charity here.@@"<br>
<br>
"@@.npc_manager;As you might know, Social Interaction Service Syndicate Inc. is about much more than just Social Interaction Service Syndicate Inc. It is an umbrella corporation incorporating many smaller companies under a common vision. This synergy allows us to combine technologies in a very efficient way. And since the company had its roots in social networking, where we are still pretty big, we know what people want, even before they know it. And even if they are not yet aware of it, well, we are at the point where it is not that difficult to create demand where there was none before. That sort of innovative, boundary-pushing technology is why Social Interaction Service Syndicate Inc. to one of the seven Triple A multicorporate enterprises on this planet. To maintain that level of dominance requires innovation, discipline and long-term planning. Long story short, this product is only months away from release and has been thoroughly tested so no, you are not a guinea pig taking a product with unknown effects.@@"<br>
<br>
Again, you see a very sinister smile on her face.<br>
<br>
<<if $player.flags.contract.understoodcomplete>>
"@@.npc_manager;Well, I suppose in a way you are MY guinea pig for refining my managerial practice, but definitely not subject to R&D. And there is nothing in the contract that would allow something like this, as you already know.@@"
<<else>>
"@@.npc_manager;Well, I suppose in a way you are MY guinea pig for refining my managerial practice, but definitely not subject to R&D... Or maybe you are? It is all in the contract <<=$player.first_name>>, which I am sure you have already read to the end.@@"
<</if>>
<br><br>
"@@.npc_manager;Still, nothing was stopping you from asking more about the effects before using it, silly. Anyway, EAPAR has rated this new drug as safe. Our department has really nothing to do with its development at all since we are personnel management and not R&D, but a friend of mine gave me a few samples. For a simple pill it is really quite miraculous; your body gets a more feminine form and your breasts will visibly grow, while your voice gets more feminine as well. There might be mental changes as well, but in testing that varied from user to user. If you were a rather dominant person before taking these, you will keep these traits, but as the name suggests, if you have a rather submissive or feminine personality, those traits will be amplified. Of course, like any drug there are also some additional, rare side effects.@@"<br>
<br>
You gulp audibly.<br>
<br>
"@@.npc_manager;Do not worry your pretty little head about it <<=$player.first_name>>, the chances for those are almost zero, especially taking only one pill. Usage guidelines indicate you should normally wait until the effect is over before you take a new one. I also would not recommend to drink any alcohol within one our hour or so after consumption, this might change some of the parameters in an undesired way as well. And I would stay away from strong electromagnetic fields so long as long as there are still nanites in your body. Since they're really small, they are practically unshielded against electromagnetic pulses, and you don't want to see what happens if nanites go out of control. But they are biodegradable, so your body will absorb them once their time is up. I hope this answers most of your questions. And if you decide to behave yourself and do your job and other tasks I might even give you a few more, if that is what you truly desire... and you remember to ask nicely.@@"<br>
<br>
<<if setup.getTotalValue('feminization')>4 || setup.getTotalValue('submission')>5>>
<<printThought $player "These will make me more feminine? Is that what I want?">>
<<else>>
<<printThought $player "Taking more of these? I think not!">>
<</if>>
<br><br>
"@@.npc_manager;Here, take two, but do take care not go overboard with them!@@" she says to you while handing you a pair of the pink pills, "@@.npc_manager;Well, if that was all be a darling and close the door behind you on your way out.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office" 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: result of asking manager for more sissy pills
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set _manager_approval = ( ($npc_manager.satisfaction+$npc_manager.affection)>$npc_manager.anger )>>
<<if _manager_approval>>
<<addItem "sissy_pill_mk1">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if _manager_approval>>
"@@.npc_manager;So, this little technical and medical marvel seems to have really captured your interest. Well, you have been quite the good little sissy lately, so here you go. I believe I explained about the side effects, so don't overdo it. The last thing I need right now is to have to go search for yet another new secretary because you turned into some life size sex doll, a conscious onahole or something strange like that. Do I make myself clear?@@"<br>
<br>
<<printThought $player "I'm pretty sure she has to be exaggerating about those side effects... right?">><br>
<br>
She holds a pink pill in your direction. You hesitate for a moment but still accept the pill. After all it's your decision to take it or to simply ignore it anyway.
<<else>>
"@@.npc_manager;So, this little technical and medical marvel seems to have really captured your interest. But these pills are for good sissies. If you want more of them you need to diligently following my rules to the letter. Do we understand each other?@@"
<<if $npc_manager.stage >=2>>
<br><br>
"@@.npc_manager;Of course, if you continue to misbehave I have heard work is nearing completion for a different sort of pill... but it is quite a bit more potent, and it seems they have been forced to rework it to be administered via a slightly different orifice...@@"
<</if>>
<</if>>
<br><br>
[<<moveTo "room_office_after_work" "Leave the office" 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: purposefully misbehave after work to give manager an opportunity to punish you
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if !$npc_manager.flags.voluntary_spanking>>
<<set $npc_manager.flags.voluntary_spanking = true>>
<<addNpcTheme 'npc_manager' 'voluntary_punishment' 'theme_manager_voluntary_punishment'
0
'event_manager_theme_voluntary_spanking_1'
true
>>
<</if>>
<<set $npc_manager.stagevalues[$npc_manager.stage].frisky += 1>>
<<applyExperience 'bdsm' 7 'very' $SEEN_FRIEND>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'badbadsissy')>>
<<setThreshold 'submission' 'submissive_secretary' 'badbadsissy' true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
As <<=setup.getNpcName('npc_manager', 'formal')>> turns back towards her work you put on an innocent expression and brush past her desk, knocking a cup of pencils over and onto the ground.<br>
<br>
You express a sound of playful surprise as she looks up at the noise. You bend over to give her an unobstructed view of your raised ass, then hang out there, wiggling your bum as you slowly gather the scattered pencils.<br>
<br>
You hear the click of her heels as she walks around her desk, then feel, and hear, the loud smack of her hand on your ass.<br>
<br>
"@@.npc_manager;You clumsy girl! And what are you doing down there? You are just shuffling things around, you have not picked up a thing!! Hands! Behind your back!@@"<br>
<br>
You quickly obey, and leather cuffs are wrapped around each wrist. You tug and discover a short chain links the cuffs meaning that you have now effectively lost the use of your arms.<br>
<br>
"@@.npc_manager;There, that should keep you out of mischief!@@"<br>
<br>
As you test your new restraints she bends over to grab the pencil cup. Walking to the other side of the office she places it upright on a small side-table across the room from her desk. Sitting down on a chair next to the small table she nods in your direction.<br>
<br>
"@@.npc_manager;Alright, clean up your mess.@@"<br>
<br>
Blushing you try to hunker down over the spilled pencils and grope blindly behind with your hands only to look over to see her shaking her head.<br>
<br>
"@@.npc_manager;What do you think you are doing? Do you think squatting down like you are taking a dump is attractive? Get down on your knees and do what I told you to.@@"<br>
<br>
"Yes, <<=setup.getNpcName('npc_manager', 'formal')>>" you reply, lowering to your knees and then carefully leaning forward to pick up the first pencil with your teeth. Rising back to your feet you walk across the room and gently place it into the cup before turning to get the next pencil.<br>
<br>
"@@.npc_manager;Ah, ah!, not yet, turn around and bend over.@@", she commands.<br>
<br>
You do as ordered, your bound wrists sticking out just above your exposed bum.<br>
<br>
SMACK! her hand impacts your exposed rear and you let out a cute meep of pain.<br>
<br>
<<if setup.getTotalValue("submission") > 10 || setup.getTotalValue("bdsm") > 7>>
On reflex you immediately express your gratitude.<br>
<br>
"@@.npc_manager;Good girl!@@" She rubs your butt, assuaging the lingering sting of her slap. "@@.npc_manager;Alright, fetch another one.@@"
<<else>>
You start to stand only for her to land another blow on your ass and jerk your wrists up by their cuffs so as to pitch your torso back down.<br>
<br>
"@@.npc_manager;Come on, sissy, do you think this is JUST for my amusement? I am trying to educate you... what do you say?@@"<br>
<br>
SMACK!<br>
<br>
You whimper an expression of gratitude.<br>
<br>
"@@.npc_manager;Better. Now, fetch another one.@@"
<</if>>
<br><br>
Turning you walk back to the spilled pencils, dropping once more to your knees and leaning over to pick up another. Putting it back in the cup you bend over for another slap, thanking her once again.<br>
<br>
The process repeats until all dozen pencils have been placed in the cup, your bum stinging
<<if setup.getTotalValue("stamina") > 5>>
though you are in good enough shape not to be at all tired. You stand in front of her calmly.
<<else>>
and your thighs and lower back a little tired from the constantly standing and bowing. You stand in front of her catching your breath.
<</if>><br>
<br>
Placing a hand over your crotch she
<<if setup.getItemFromType("cage") == "">>
rubs your hard <<getWordMyPenis $player>> through your clothes. The feeling of <<=setup.getItemFromType("panties").name>> against your flesh is ecstatic agony.
<<else>>
grabs your cage through your clothes, giving your secured <<getWordMyPenis $player>> a squeeze and a tug that only accentuates your helpless imprisonment.
<</if>>
She pulls her hand back after a few moments, smiling up at you from her seat. Gesturing for you to turn around she removes your cuffs and gives your tender butt a final groping squeeze.<br>
<br>
"@@.npc_manager;Very good, you are dismissed.@@"<br>
<br>
You give a small curtsy and depart.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office" 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: offer to help reduce manager's stress and massage her feet
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("foot") > 0>>
<<applyExperience 'foot' 5 'normal' $SEEN_FRIEND>>
<<else>>
<<setThreshold 'foot' 'foot_massages' 'manager_help' true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Noting her obvious stress you ask if perhaps you could massage her feet or something else to help her relax.<br>
<br>
"@@.npc_manager;What a kind offer! Certainly, just crawl under here and get to work.@@"<br>
<br>
<<if setup.getTotalValue("foot") >= 15>>
Eagerly you rush across the room.
<<elseif setup.getTotalValue("foot") >= 10>>
You restrain yourself from looking too excited as you cross the room.
<<elseif setup.getTotalValue("foot") >= 5>>
You curtsy obediently and walk across the room.
<<else>>
You take a deep breath and walk across the room.
<</if>>
Crawling under her desk you find it surprisingly roomy, even after she rolls back in to bar your escape, almost like it was designed to accommodated someone back here. She presents her feet and you get to work.<br>
<br>
Drawing on your considerable skill you start by gently removing her sexy-steep heels,
<<if setup.getTotalValue("foot") >= 15>>
and start kissing her divine feet.
<<elseif setup.getTotalValue("foot") >= 10>>
and begin to lovingly massage her beautiful feet
<<elseif setup.getTotalValue("foot") >= 5>>
and start to massage her beautiful feet.
<<else>>
and start to massage her feet.
<</if>>
It is not long before she purrs in approval. "@@.npc_manager;Ooohhh, I needed that, keep it up and I might move where you sit to down there, you really have a gift...@@"<br>
<br>
<<if setup.getTotalValue("foot") >= 10>>
That would be just fine with you, but you remain silent and focus on your job.<br>
<br>
<</if>>
You have worked out every knot or kink in her feet and calves when she finally calls for a halt. Very carefully you slide her feet back into their heels, buckling them closed and finishing with a soft kiss on each toe.<br>
<br>
Rolling back she lets you out and back to your feet. She definitely looks more content and relaxed than before you went under.<br>
<br>
"@@.npc_manager;Mmm, very good, but you know what else I would like to do? Spank your cute butt. Yes, I know you have just been a VERY good sissy but... You do not know how wonderful it feels to spank that perfect ass of yours so... will you indulge your Mistress this gift?@@"<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
Just the mention of a spanking has your aroused.<br>
<br>
[<<moveTo "event_manager_theme_voluntary_spanking_2" "Turn around and present your bottom.">>]<br>
[@@.link_locked;You cannot pass up the opportunity for a spanking.@@]
<<elseif setup.getTotalValue("submission") > 10>>
The mere thought of denying her request does not even enter your thoughts.<br>
<br>
[<<moveTo "event_manager_theme_voluntary_spanking_2" "Turn around and present your bottom.">>]<br>
[@@.link_locked;You cannot deny the request of your <<=setup.getNpcName('npc_manager', 'title')>>.@@]
<<else>>
[<<moveTo "event_manager_theme_voluntary_spanking_2" "Agree to her request.">>]<br>
[<<moveTo "room_office_after_work" "Decline and leave" 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: voluntarily let your manager spank you
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<if $roomchange == true>>
<<applyExperience 'bdsm' 5 'very' $SEEN_FRIEND>>
<<set $npc_manager.flags.voluntary_spanked += 1>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'voluntary_spank')>>
<<setThreshold 'submission' 'submissive_secretary' 'voluntary_spank' true>>
<<else>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in delight at you agreeing to her offer, patting her lap for you to lay across it.<br>
<br>
Bending over across her legs you feel her caress your rear and pull your clothes down to expose your bare ass. <<if setup.getItemFromType('plug')!="">>With a single finger she teasingly wiggles the plug in your bum, then pulls her hand back.<</if>> With a loud SMACK the first blow impacts your tender flesh.<br>
<br>
<<if setup.getTotalValue("bdsm") >= 15>>
You let out a moan of desire, the pain blooming in your rear ecstatically pleasurable.
<<elseif setup.getTotalValue("bdsm") >= 10>>
You let out a cute meep, enjoying the stinging pain spreading across your rear.
<<elseif setup.getTotalValue("bdsm") >= 5>>
Squeezing your eyes closed you try to hold back from crying out at the pain of the spanking.
<<else>>
You let out a yelp of pain, panting as you try to endure the fire blooming across your bum.
<</if>>
<br><br>
<<if setup.getTotalValue("submission") > 10>>
"One, Mistress, thank you" you whisper in aroused gratitude.
<</if>>
She continues spanking.
<<if setup.getTotalValue("submission") > 10>>
You continue counting, thanking her for each <<if setup.getTotalValue("bdsm") >= 10>>wonderful<<else>>painful<</if>> blow.
<</if>>
Working randomly, but methodically, she turns your bum a nice even red before finally sliding you off her lap and back to your feet to admire her work.<br>
<br>
"@@.npc_manager;So cute, thank you for the use of your ass. It was a delight, as always. As fun as that was I had better get back to work, have a good evening!, if you have not already.@@"<br>
<br>
You blush and pull up your clothes, which stings just a bit scraping over your tender bum. Nonetheless you give a little curtsy of gratitude and head on your way.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office" 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: character profiles menu
#status: FINISHED 0.4.0.0
#*/
<div class="topMenu">
[[Options|goOpt]] |
[[Stats|goSta]] |
[[Inventory|goInv]] |
[[Tasks|goTas]]
<<if gotItemSpecific("smartphone")>>
| [[Phone|goPho]]
<</if>>
@@.textRightSide;Stats [[[back|$player.plocation]]]@@<br>
<hr>
</div><br>
<<if $npc_manager.profile>>
<<=setup.getNpcName('npc_manager', 'formal')>>, your
<<if $npc_manager.call=="Mrs.">>
new Boss.
<<else>>
<<if setup.getTotalValue('submission') > 3>>
<<switch setup.getTotalValue('submission')>>
<<case 4 5 6>>
demanding
<<case 7 8 9>>
controlling
<<case 10 11 12>>
wonderful
<<case 13 14 15>>
beloved
<<case 16 17 18>>
glorious
<<case 19 20>>
divine
<<default>>
ERROR: player submission <<=setup.getTotalValue('submission')>> out of bounds!
<</switch>>
<</if>>
Mistress.
<</if>>
[[[Show Profile|profile_Manager]]]<br>
<</if>>
<<if $npc_admin.profile>>
<<=setup.getNpcName('npc_admin', 'full')>>, a good Friend. [[[Show Profile|profile_Admin]]]<br>
<</if>>
<<if $npc_exgirlfriend.profile>>
<<=setup.getNpcName('npc_exgirlfriend', 'full')>>, a past lover. [[[Show Profile|profile_Exgirlfriend]]]<br>
<</if>>
<<if $npc_landlord.profile>>
<<=setup.getNpcName('npc_landlord', 'full')>>, your landlord/handyman. [[[Show Profile|profile_landlord]]]<br>
<</if>>
<<if $npc_ai.profile>>
<<=setup.getNpcName('npc_ai', 'first')>>, an Artificial Intelligence [[[Show Profile|profile_ai]]]<br>
<</if>>
<<if $npc_barkeeper.profile>>
<<=setup.getNpcName('npc_barkeeper', 'full')>>, owner of the "Usual Place." [[[Show Profile|profile_barkeeper]]]<br>
<</if>>
<<if $npc_barista.profile>>
<<=setup.getNpcName('npc_barista', 'nickname')>>, a... Barista? [[[Show Profile|profile_barista]]]<br>
<</if>>
<<if $npc_cook.profile>>
<<=setup.getNpcName('npc_cook', 'full')>>, of Nutritional Sustenance Distribution. [[[Show Profile|profile_cook]]]<br>
<</if>>
<<if $npc_shoestore_manager.profile>>
<<=setup.getNpcName('npc_shoestore_manager', 'full')>>, the manager of <<printShopName 'mall_shoe_store'>>, the shoe store in the mall. [[[Show Profile|profile_shoestore_manager]]]<br>
<</if>>
<<if $npc_shoestore_assistant.profile>>
<<=setup.getNpcName('npc_shoestore_assistant', 'full')>>, the <<printShopName 'mall_shoe_store'>> shop assistant and wife of <<=setup.getNpcName('npc_shoestore_manager', 'full')>>. [[[Show Profile|profile_shoestore_assistant]]]<br>
<</if>>
<<if $npc_technician.profile>>
<<=setup.getNpcName('npc_technician', 'full')>>, the resident Tech Wizard of Cloud Data Service. [[[Show Profile|profile_technician]]]<br>
<</if>>
<<if $npc_rpg_warlock.profile>>
<<=setup.getNpcName('npc_rpg_warlock', 'full')>>, one of <<=ps(setup.getNpcName('npc_technician', 'first'))>> friends that you RPG with, girlfriend of <<=setup.getNpcName('npc_rpg_dude', 'first')>>. [[[Show Profile|profile_rpg_warlock]]]<br>
<</if>>
<<if $npc_rpg_dude.profile>>
<<=setup.getNpcName('npc_rpg_dude', 'full')>>, one of <<=ps(setup.getNpcName('npc_technician', 'first'))>> friends that you RPG with, boyfriend of <<=setup.getNpcName('npc_rpg_warlock', 'first')>>. [[[Show Profile|profile_rpg_dude]]]<br>
<</if>>
<<if $npc_maid.profile>>
<<=setup.getNpcName('npc_maid', 'full')>>, one of the maids at Cafe Newtype, frenemy? of <<=setup.getNpcName('npc_technician', 'first')>>. [[[Show Profile|profile_maid]]]<br>
<</if>>
<<if $npc_psychiatrist.profile>>
<<=setup.getNpcName('npc_psychiatrist', 'full')>>, your therapist. [[[Show Profile|profile_Psychiatrist]]]<br>
<</if>>
<br>
[[[back|$player.plocation]]]/*#
#desc: manager profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_manager', 'formal')>><br>
<hr><br>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">><br>
Not yet Implemented /% TODOfuture %/
[[[back|goProfiles]]]/*#
#desc: psychiatrist profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_psychiatrist', 'formal')>><br>
<hr><br>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">><br>
Not yet Implemented /% TODOfuture %/
[[[back|goProfiles]]]/*#
#desc: admin profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_admin', 'full_formal')>><br>
<hr><br>
<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_admin.png">><br>
You met <<=setup.getNpcName('npc_admin', 'first')>> in college. He was always more a people person then you, with him being a Lieutenant in the Army, so he got a job sooner then you. With those skills came a sense of loyalty and he managed to secure a position for you as well within the same company: Cloud Data Service.<br>
<br>
[[[back|goProfiles]]]/*#
#desc: exgirlfriend profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_exgirlfriend', 'full_formal')>>
<hr><br>
<<createBGR "./images/locations/city_skyline.png" "./images/characters/npc_exgirlfriend.png">><br>
Not yet Implemented /% TODOfuture %/
[[[back|goProfiles]]]/*#
#desc: ai profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_ai', 'first')>><br>
<hr><br>
<<createBGR "./images/locations/city_skyline.png" "./images/characters/npc_ai.png">><br>
Not yet Implemented /% TODOfuture %/
[[[back|goProfiles]]]/*#
#desc: barista profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_barista', 'nickname')>><br>
<hr><br>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_barista.png">><br>
Not yet Implemented /% TODOfuture %/
[[[back|goProfiles]]]/*#
#desc: barkeeper profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_barkeeper', 'full')>><br>
<hr><br>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_barkeeper.png">><br>
Not yet Implemented /% TODOfuture %/
[[[back|goProfiles]]]/*#
#desc: cook profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_cook', 'full')>><br>
<hr><br>
<<createBGR "./images/locations/company_canteen.png" "./images/characters/npc_cook.png">><br>
Not yet Implemented /% TODOfuture %/
[[[back|goProfiles]]]/*#
#desc: shoestore manager profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_shoestore_manager', 'full')>><br>
<hr><br>
<<createBGR "./images/locations/mall_shoestore.png" "./images/characters/npc_shoestore_manager.png">><br>
You got to know <<=setup.getNpcName('npc_shoestore_manager', 'formal')>> when you were trying to learn how to walk in heels. Irrespective of her job managing a shoe store the fact that you've never seen her wearing less than twenty-centimeter platform heels means she's definitely the right resource. Even with the boost she's still well shorter than you, but makes up for it with an intense, friendly personality as well as what seems to be a real enthusiasm for film.<br>
<br>
[[[back|goProfiles]]]/*#
#desc: shoestore assistant profile
#status: FINISHED 0.4.0.0
#*/
<<=setup.getNpcName('npc_shoestore_assistant', 'formal')>><br>
<hr><br>
<<createBGR "./images/locations/mall_shoestore.png" "./images/characters/npc_shoestore_assistant.png">><br>
The wife and shop assistant of <<=setup.getNpcName('npc_shoestore_manager', 'first')>> is one of the tallest, and strongest, looking women you've ever met. Despite her intimidating stature she has been nothing but friendly and kind, presenting quite the contrast to her diminutive, but much more intense, spouse.<br>
<br>
[[[back|goProfiles]]]/*#
#desc: technician profile
#status: STUB 0.5.0.0
#*/
<<=setup.getNpcName('npc_technician', 'full')>><br>
<hr><br>
<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_technician.png">><br>
Not yet Implemented /% TODOfuture %/
<br>
[[[back|goProfiles]]]/*#
#desc: rpg_dude profile
#status: STUB 0.5.0.0
#*/
<<=setup.getNpcName('npc_rpg_dude', 'full')>><br>
<hr><br>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_dude.png">><br>
Not yet Implemented /% TODOfuture %/
<br>
[[[back|goProfiles]]]/*#
#desc: rpg_warlock profile
#status: STUB 0.5.0.0
#*/
<<=setup.getNpcName('npc_rpg_warlock', 'full')>><br>
<hr><br>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_warlock.png">><br>
Not yet Implemented /% TODOfuture %/
<br>
[[[back|goProfiles]]]/*#
#desc: maid profile
#status: STUB 0.5.0.0
#*/
<<=setup.getNpcName('npc_maid', 'formal')>><br>
<hr><br>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_maid.png">><br>
Not yet Implemented /% TODOfuture %/
<br>
[[[back|goProfiles]]]/*#
#desc: landlord profile
#status: STUB 0.5.0.0
#*/
<<=setup.getNpcName('npc_landlord', 'formal')>><br>
<hr><br>
<<createBGR "./images/locations/flat_hallway_01.png" "./images/characters/npc_landlord.png">><br>
Not yet Implemented /% TODOfuture %/
<br>
[[[back|goProfiles]]]/*#
#desc: visit psychiatrist for first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many recent strange ideas...">>
<<set _name = setup.getNpcName('npc_psychiatrist', 'full')>>
<<if $roomchange == true>>
<<if $npc_psychiatrist.flags.signednda>>
<<addItem 'plug_suit_red'>>
<<set $npc_psychiatrist.flags.nextsession = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.flags.signednda>>
You enter the office and close the door behind you. It seems like <<=setup.getNpcName('npc_psychiatrist', 'formal')>> was already awaiting your arrival, but this time she has a giant welcoming grin on her face, as if she knew you'd be back but has been very much looking forward to it.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, I cannot tell you how glad I am that we can continue our little investigation into the human mind. We talked about everything important the last time in great detail, so let's not waste any more time and move on with the agenda. If you would kindly follow me?@@", she says while standing up and walking towards a door. You could have sworn the door wasn't there when you were here for your therapy session. It does seem styled to match the wall, and that portion of the office is oddly unlit.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0' 'Follow after her' 180>>]
<<else>>
You enter the office and close the door behind you. It seems like <<=setup.getNpcName('npc_psychiatrist', 'formal')>> was already awaiting your arrival, as she greets you with an heartfelt smile.<br>
<br>
"@@.npc_psychiatrist;I am glad you could make yourself free for our little study on the human mind. Please, take a seat. Before we start our excursion into the subconscious, let me explain a few things. This first session is a test, to see how well your brain reacts to basic trance induction techniques. There won't be many changes after this first session. It's more like shaping a key to unlock your subconscious. Once we have your key future sessions can be devoted to exploring, and optimizing, what's inside that pretty little noggin' of yours.@@"<br>
<br>
There is a small pause for dramatic effect.<br>
<br>
"@@.npc_psychiatrist;The question of course is, does this key fit or will your lock reject it. I've seen this a few times and the literature in strong in supporting that even with voluntary hypnosis like this if the subconscious blocks it, it cannot happen. After all, hypnosis is not the almighty mind control tool the media sometimes wants it to be. It can only change or activate things you're subconsciously already okay with. So, if someone... just as an example, put you in a trance and commanded you to become gay and suck cock all night long... if you did do that, it would be because you were already a cockhungry whore deep down all along, and not because you were hypnotized.@@"<br>
<br>
<<printThought $player "What kind of example is that...">><br>
<br>
"@@.npc_psychiatrist;Again, for today's session all we are doing is finding out, what your subconscious desires and unlocking things a little. You cannot be forced to do something you didn't want to do in the first place. But, and this is one of the main purposes of therapy as a whole, you find out things about yourself you did not know. Since you have found out a few things about yourself these last few days in the course of becoming a secretary this is the perfect time to start this little experiment. Wouldn't you agree <<=$player.first_name>>?@@"<br>
<br>
You simply nod, not knowing how else to answer.<br>
<br>
"@@.npc_psychiatrist;Anyway, any session you attend after this one, if this works, will be a lot more effective. And if this one doesn't work... well, I doubt that will happen, but if it does and your subconscious does indeed reject the idea of being hypnotized and unlocked. Well then any further sessions would be a waste of time and money. Don't worry, you'll be paid for your first session no matter how it turns out.@@"<br>
<br>
<<printThought $player "Hmm... I could really use that money... And I am a bit curious about the whole thing.">><br>
<br>
"@@.npc_psychiatrist;One more thing. I'd need you to sign this non disclosure agreement. This is cutting edge exploratory research we conduct here. You seem very trustworthy, but I really can't risk any information about this leaking to the public before I have a chance to publish.@@"<br>
<br>
She hands you an agreement. Just like your contract with Social Interaction Service Syndicate Inc. this one has way too many pages. The contract must be at least 40 pages long and is written in a really small font.<br>
<br>
"@@.npc_psychiatrist;Don't worry, it's just a standard NDA. I can send you a copy to your email account, but if you want to join this experiment today I need you to sign this right now... If I hadn't forgotten to hand you this after you left our last session, you would have had enough time to read it, but alas, here we are. So... pretty please?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_sign' 'Sign the NDA.' 120>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_notsign' 'Refuse to sign the NDA.' 120>>]
<</if>>
</div>/*#
#desc: sign psychiatrist nda before first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<addItem 'plug_suit_red'>>
<<set $npc_psychiatrist.flags.signednda = true>>
<<set $npc_psychiatrist.flags.nextsession = true>>
<<set _name = setup.getNpcName('npc_psychiatrist', 'full')>>
<<addEmail $computer
_name
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_psychiatrist_01_h'
'mail_psychiatrist_01_t'
'{"name":"nda_vr_therapy.pdf","type":"event","data":{"event":"attachment_read_nda_signed"}}'>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You don't even bother reading, just flipping to the end and put your signature on the last page of the document.<br>
<br>
<<printThought $player "I really hope this does not bite me in the ass one day.">><br>
<br>
"@@.npc_psychiatrist;Yay! Very good. Ten points for our adventurous Bi... Boy. Now, if you would kindly follow me?@@", she says while standing up and walking towards a door. You could have sworn this door wasn't there a moment ago. Then again, it does look pretty much like the wall, and that part of the office isn't all that well lit.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_1' 'Follow her' 180>>]
</div>/*#
#desc: first hypnosis session introduced to VR plugsuit
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Please, come into my laboratory and take this,@@" she says while handing you a small, red case,"@@.npc_psychiatrist;This contains a VR Plug Suit, which does have two functions. Reading your Vital and Mental Data as well as providing your body with stimulus to intensify the immersion. Maybe one day we'll upgrade to one of these fancy <<=$player.flags.faultcompany>> immersion Chambers, but with our current budget we have to be a bit more judicious in spending.@@"<br>
<br>
You take the case and open it up. On one hand you're intrigued with all the new tech you're making contact with. Until now the best VR Tech you ever tried was one of some ancient VR Goggles from the last decade. On the other hand the suit looks less like the fancy haptic suits you've seen in advertisements and more like anime latex fetish cosplay.<br>
<br>
"@@.npc_psychiatrist;Ah yes. Another cost cutting measure, I apologise if it takes you a bit to... get used to the design. Real Stimuli Suits are very expensive so we were forced to create our own, and it turns out that, for short-term wear, a latex catsuit with integrated stimulators works very well indeed. Oh, perhaps I should mention that was originally a woman's catsuit; I hope you don't mind.@@"
<<if $npc_psychiatrist.flags.knowsyoucrossdress>>
"@@.npc_psychiatrist;Oh, what am I saying? I bet you probably prefer it this way.@@"
<<else>>
"@@.npc_psychiatrist;It might be a little bit tight in some regions, but your butt is pretty big. Given that snugness of fit has been clinically proven to correlate positive with effectiveness of treatment this design might suit you better anyway.@@"
<</if>>
<br><br>
<<if setup.getTotalValue('feminization')<5>>
<<printThought $player "Oh, come on!">>
<<else>>
<<printThought $player "Oh. Well, not like I'm not already getting used to wearing things with a more feminine cut...">>
<</if>>
<br><br>
"@@.npc_psychiatrist;Now, if you would kindly follow me into the changing booth? I can help you into the suit. Trust me, unless you're really into latex it can be trickier than you'd think!@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_1' 'Follow her' 180>>]
</div>/*#
#desc: refuse to sign nda at first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You refuse to put your signature on the document.<br>
<br>
<<printThought $player "No, I have had my fill of documents I did not read through thoroughly.">><br>
<br>
"@@.npc_psychiatrist;Oh,@@", she replies, all prior excitement draining from her face, "@@.npc_psychiatrist;You want to read it first, of course. Only I was really hoping to get started today... is there no way, I can... you know... like change your mind?@@"<br>
<br>
Her mood makes another 180. From really motivated to depressed to ... playful? By pulling her shoulders a little bit forward and crossing her hands under her well endowed breasts she frames their already impressive... stature. Playfully rolling one shoulder forward even more one of the shoulder straps of her dress slowly drifts down, revealing even more of her alabaster skin. Putting one finger on her lower lip and slowly stroking over it provocatively, she purrs at you "@@.npc_psychiatrist;I'd really make it worth your while. If. You. Know. What. I. Mean.@@"<br>
<br>
You gulp audibly and blush.<br>
<br>
<<printThought $player "No, I have to be reading this wrong, right? I am pretty sure this is against the ethics codes of all major mental health professionals...">><br><br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_sign' 'Give in.' 180>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_notsign_nope' 'Take a deep breath and decline once again.' 180>>]
</div>/*#
#desc: double down on refusing to sign nda for first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<addItem 'card_psychiatrist'>>
<<set _name = setup.getNpcName('npc_psychiatrist', 'full')>>
<<addEmail $computer
_name
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_psychiatrist_01_h'
'mail_psychiatrist_02_t'
'{"name":"nda_vr_therapy.pdf","type":"event","data":{"event":"attachment_read_nda"}}'>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You still refuse to put your sign on the document.<br>
<br>
<<printThought $player "Nope. Still not convinced.">><br>
<br>
"@@.npc_psychiatrist;Oh well. You can't say that I didn't try. I'll send you the NDA anyway, can you at least take a look at it?, so maybe we can get you a new appointment in the future? Here, take my card, you can contact me anytime if you're ready to start this experiment. I wish I could tell you more without the NDA but trust me what say I am sure you will be surprised and grateful by what you'll find out about yourself participating in this study.@@"<br>
<br>
You nod and take the card.<br>
<br>
"@@.npc_psychiatrist;Well, if there's no way to convince you otherwise, I think this means goodbye for now.@@"<br>
<br>
[<<moveTo 'room_psychiatrist_lobby' 'Leave the office.' 60 '<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: changing booth + strip for first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _femaleUnderwear = false>>
<<set _femaleClothing = false>>
<<set _notfullynaked = false>>
<<set _plugsuit = false>>
<<if setup.checkWornItem('plug_suit_red')>>
<<set $npc_psychiatrist.hypnosis = 1>>
<<set _plugsuit = true>>
<<if !$npc_psychiatrist.flags.session[0].bimbofication>>
<<set $npc_psychiatrist.flags.session[0].bimbofication=true>>
<<applyExperience 'bimbofication' 4 'normal' $SEEN_FRIEND>>
<</if>>
<<elseif setup.getIndecentValue($player)>25>>
<<set _notfullynaked = true>>
<<elseif (setup.checkVisibleClothingTag('female')>20)>>
<<if (setup.checkVisibleClothingTag('underwear')>20)>>
<<set _femaleUnderwear = true>>
<<if !$npc_psychiatrist.flags.session[0].sissyfication>>
<<set $npc_psychiatrist.flags.session[0].sissyfication=true>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set _femaleClothing = true>>
<<if !$npc_psychiatrist.flags.session[0].feminization>>
<<set $npc_psychiatrist.flags.session[0].feminization=true>>
<<applyExperience 'feminization' 7 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<if setup.getIndecentValue($player)==100>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_1_2'>>
<</if>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location to "Changing Room">>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if !_femaleUnderwear && !_femaleClothing && !_plugsuit && !_notfullynaked>>
You follow <<=setup.getNpcName('npc_psychiatrist', 'first')>> into the changing room, which seems rather spacious for a simple psychiatrist's office. You don't pay too much attention to these details, however, since you're immediately surprised with the next action you're supposed to do.<br>
<br>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, would you kindly strip naked. We have to rub this lotion onto your skin, to increase the connectivity to your suit. It also acts as a lubricant; that makes putting on the suit a lot easier, trust me.@@"<br>
<br>
You look at her in disbelief as she merely stares back in expectant anticipation, putting on latex gloves and preparing a tube of an unknown substance.
<<elseif _notfullynaked>>
You take off some of your clothes but then stop for some unknown reason. Looking at you for a few seconds up and down slowly, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> continues, "@@.npc_psychiatrist;Completely. Don't stop during it, right before we get to the good parts. I would go out if it would make you feel any better, but then I'd have to get in again, and help you wear that suit, so theres no gain in it for either of us.@@"
<<elseif _plugsuit>>
Ignoring the warnings you try to put on the plug suit by yourself and fail miserably, not even getting your feet in without almost falling on your face.<br>
<br>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, that's very nice. You're connecting with your inner Bimbo while acting very clumsy on purpose. Freeing one's mind can be very liberating, but why don't we use the VR Hypnosis therapy for that, since that is its purpose after all. Now, if you would kindly strip naked, we still need to rub this lotion onto your skin.@@"
<<elseif _femaleClothing>>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, that's very nice. You're connecting with your inner femininity. But if you would you kindly strip naked, we still need to rub this lotion onto your skin.@@"
<<elseif _femaleUnderwear>>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, that's very nice. You're exploring your submissiveness by becoming a sissy. Noted. But if you would kindly strip naked, we still need to rub this lotion onto your skin.@@"
<</if>>
</div>/*#
#desc: first hypnosis session, psychiatrist lubes you up for plugsuit
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkWornItem('plug_suit_red')>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_1_3'>>
<</if>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $event_psychiatrist_hypnosis_1_2_firstplugged = false>>
<<set $event_psychiatrist_hypnosis_1_2_plugged = false>>
<<set $event_psychiatrist_hypnosis_1_2_plug = "">>
<<set $event_psychiatrist_hypnosis_1_2_firstcaged = false>>
<<set $event_psychiatrist_hypnosis_1_2_caged = false>>
<<set $event_psychiatrist_hypnosis_1_2_cage = "">>
<<set $scene.ep1_cum = false>>
<<set $event_psychiatrist_hypnosis_1_2_plug = setup.getItemTypeName("plug")>>
<<if $event_psychiatrist_hypnosis_1_2_plug != "">>
<<set $event_psychiatrist_hypnosis_1_2_plugged = true>>
<<if !$npc_psychiatrist.flags.foundplug>>
<<set $event_psychiatrist_hypnosis_1_2_firstplugged = true>>
<<set $npc_psychiatrist.flags.foundplug = true>>
<</if>>
<</if>>
<<set $event_psychiatrist_hypnosis_1_2_cage = setup.getItemTypeName("cage")>>
<<if $event_psychiatrist_hypnosis_1_2_cage != "">>
<<set $event_psychiatrist_hypnosis_1_2_caged = true>>
<<if !$npc_psychiatrist.flags.foundplug>>
<<set $event_psychiatrist_hypnosis_1_2_firstcaged = true>>
<<set $npc_psychiatrist.flags.foundcage = true>>
<</if>>
<<set $player.timebased.horny = setup.changeHorny($player,10)>>
<<else>>
<<set $player.timebased.horny = setup.changeHorny($player,30)>>
<<if setup.canPlayerCum($player,1)>>
<<set $scene.ep1_cum=true>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location = "Changing Room">>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
After you strip naked <<=setup.getNpcName('npc_psychiatrist', 'first')>> starts to apply the slip connectivity enhancer to your whole body, excluding only your head.<br>
<br>
<<if $event_psychiatrist_hypnosis_1_2_caged>>
Having your nether regions lubed up by a woman as stunning as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> would normally cause an enormous reaction by your <<getWordMyPenis $player>>, but since it's locked up in the <<=$event_psychiatrist_hypnosis_1_2_cage>> it just strains in futility. Not that it doesn't try, it simply cannot. Your predicament is plainly, and embarrassingly, visible to <<=setup.getNpcName('npc_psychiatrist', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;What do we have here? Oh, a chastity device. Well, I don't think it will disturb the simulation, but let's make sure your balls are all lubed up at least.@@"
<<else>>
Which means your <<getWordMyPenis $player>> as well. You try to think of something that calms your mind, anything but a bombshell like her working your shaft up and down with a lube like substance. Unsurprisingly, you fail at a spectacular level.
<<if $scene.ep1_cum>>
<br><br>
The stimulus gets too much for your poor, erect <<getWordMyPenis $player>> and you cum right into the amazingly nimble hands of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. You are so embarrassed it almost causes you physical pain, but <<=setup.getNpcName('npc_psychiatrist', 'first')>> does not seem to be fazed in the slightest.<br>
<br>
"@@.npc_psychiatrist;Don't worry, this happens a lot, probably more often then you can imagine. You seem to be very ...sensitive down there.@@",she says while changing her latex gloves for a new set,"@@.npc_psychiatrist;Well, I'm sure you'll find a way to release your stress after the session, one way or another.@@"
<</if>>
<</if>>
<br><br>
<<if $event_psychiatrist_hypnosis_1_2_plugged==true>>
As she reaches around to your back and applies the lotion thoroughly on your buttcheeks, a faint "@@.npc_psychiatrist;Oh.@@" escapes her lips. Oh no. You forgot to remove your <<=$event_psychiatrist_hypnosis_1_2_plug>> from your anus.
<<if $event_psychiatrist_hypnosis_1_2_firstplugged>>
<br><br>
"@@.npc_psychiatrist;Already exploring your sexuality <<=$player.first_name>>? Well it won't have any influence on the therapy, so I suppose it can stay exactly where it is right now. Let me just double check that it's secure, wouldn't want it falling out mid-session.@@"<br>
<br>
Your rear clenches in anticipation as she wiggles the plug with her finger, your reaction only making the sensation of the intruding toy more intense.<br>
<br>
"@@.npc_psychiatrist;Yup, that seems nice and secure.@@"
<</if>>
<<else>>
As she continues up your back and applies the lotion thoroughly on your buttcheeks a faint "@@.npc_psychiatrist;Hmm.@@" escapes her lips.<br>
<br>
"@@.npc_psychiatrist;You have a very well figured bottom... for a man. Do you do Pilates?@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;Don't worry, <<=$player.first_name>>. I am, after all, a professional. It is not the first time I've seen or experienced something like this. Just relax. I think you're all greased up now, please put your feet into the plug suit.@@"
</div>/*#
#desc: first hypnosis session, psychiatrist helps you into plugsuit
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No! It took me long enough to put this damn thing on, I'm not taking it off until the session is over!">>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> slides the latex up your legs. Even with the slick lubrication of the gel it takes time and feels very tight. By the time the latex reaches your crotch you come to realise that this suit leaves not a single millimetre of space between you and its second skin-like latex material. You can feel the suit everywhere. On your <<getWordMyPenis $player>>, your testicles, your buttcheeks and between them as well.<br>
<br>
"@@.npc_psychiatrist;Please put your arms into the sleeves, through the wristcuffs and into the gloves.@@"<br>
<br>
You do as you're told. After your fingers are safe in the gloves she tightens the wrist cuffs and locks them with really secure looking digital locks.<br>
<br>
<<printThought $player "Wait, what are these for?">><br>
<br>
"@@.npc_psychiatrist;You seem confused about the locks. These are supposed to prevent you from freeing yourself through subconscious wriggling during the hypnosis session. Don't worry, I'll remove them once we're done. And since they're digital the timer is set for two hours in case I fall asleep or something happens during the experiment.@@"<br>
<br>
That does not really reassure you, especially as she locks another pair of cuffs to your ankles. Given that you've just been locked up maybe you don't have a choice but you decide to stick the session out anyway. After your arms are tight and snug within the suit <<=setup.getNpcName('npc_psychiatrist', 'first')>> goes behind you to pull the zipper on the back up, and secures the cuff round your neck with a security lock as well.<br>
<br>
"@@.npc_psychiatrist;Now would you kindly follow me to the laboratory. We have to get you into the VR Rig.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_4' 'Follow her' 600>>]
</div>/*#
#desc: first hypnosis session, enter VR room and put in chair
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location to "VR Laboratory?">>
<<createBGR "./images/locations/psychiatrist_laboratory.png" "./images/characters/npc_psychiatrist_side.png">>
<div id="invframe" class="scrolltext">
You enter a rather dim room. For some reason it reminds you of a dentist's office, but the dentist's chair as been modified with a rather strange-looking construct in the middle. It must be one of those hydraulic VR Chairs you've read about, which allow free movement within the Virtual Reality. Nice. <<=setup.getNpcName('npc_psychiatrist', 'first')>> starts a program on a datapad which seems to control the chair. The hydraulics in the construction start up and move back into a neutral position to make it easier to get in.<br>
<br>
"@@.npc_psychiatrist;Please, sit on the chair. Good. Now put your arms through these metallic tubes and put your fingers in the resting pans. Now just wait a moment while I secure these. Put your legs in these padded curved panels and your feet on the platforms below. Just let me shackle... errr... secure your legs and feet as well. Just a moment... Done. Now... we're almost ready to go. Just a small detail. Would you kindly open your mouth for me?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_5' 'Open your mouth.' 500>>]
</div>/*#
#desc: first hypnosis session, gagged and bound to chair, session starts
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Oh <<getWordGod $player>>. I'm trapped in Bondage gear!">>
<<if $roomchange == true>>
<<setThreshold 'bondage' 'pre_hypnosis_bondage' 'bondage_chair' true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location to "VR Laboratory?">>
<<createAnimatedBGR "./video/ballgag_size.mp4">>
<div id="invframe" class="scrolltext">
Too late, as usual, you realise that there's something wrong. A faint voice in your mind tried to warn you, but for some reason you were unable to object to any of <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> suggestions. Maybe there was something in the chocolate after all. But it's too late now, since you already reflexively complied with her request. <<=setup.getNpcName('npc_psychiatrist', 'first')>> takes advantage of the moment to secure a large, pink ball gag into your mouth, tighten it snugly and locking it with yet another security lock behind your head.<br>
<br>
"@@.npc_psychiatrist;This is so you don't bite your tongue during the session. Better safe then sorry. Now, listen carefully,@@" she says, while sliding a VR Headset over your head, "@@.npc_psychiatrist;There is a red button to your left, if you need abort the session. If you cannot reach the button for some reason, you can simply tell me to stop, okay? Good.@@"<br>
<br>
You start to panic, as the realization hits you. Your arms are cuffed and your fingers are secured on their resting pans. You can't move at all. And your mouth is permanently forced open with a ball gag to make speech impossible. She really wants you to undergo this session, doesn't she? And just now you understand that this chair does not move how you want to, you move how the chair wants you to. You're a puppet, shackled to a hydraulic abomination, unable to do anything save its bidding.<br>
<br>
As you try to wrap your head around being trapped in an position that would make it impossible to flee the chair slides into motion, putting your hands behind your back and bending your legs almost up to your ears, an extreme position which would expose your <<getWordMyPenis $player>> and anus, if it were not for the suit. And then the electroshocks began. Your nipples, your buttcheeks, your anus, get small, rhythmic shocks in synchronicity with the video that starts playing on the VR goggles... You cannot make out the video at first, identifying it merely as a collage of random pictures, but as the electric shocks get stronger the images get clearer and you start to make out details...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_6' 'Continue...' 180>>]
</div>/*#
#desc: first hypnosis session brainwashing (relax, obey, be passive, conset)
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Relax... Obey... Be passive... Consent...">>
<<if $roomchange == true>>
<<set $npc_psychiatrist.hypnosis = 1>>
<<setThreshold 'submission' 'hypnosis_submission' 'first_session' true>>
<</if>>
<<include enterroom_hypnosis>>
<<initRoom>>
<<set $player.location to "V... V... VR Wha...">>
<<createAnimatedBGR "./video/hypnosis_00.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Relax...</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.5s;">Obey!</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.0s;">Be passive...</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.5s;">Consent!</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">Stare...</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.5s;">Accept!</span><br>
</span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "What's that supposed to be?">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "Is this thing already working?" -10>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "It's so hard to focus..." -20>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "What is this trying to do?!" -30>></span>
<br>
<br>
<span id="hypnosis_1_6_continue" style="visibility: hidden;">
[<<moveTo 'event_psychiatrist_hypnosis_1_7' 'Obey...' 2700>>]
</span>
<<makeVisible 'hypnosis_1_6_continue' 15>>
/%<<videoLoop>>%/
</div>/*#
#desc: first hypnosis session wake up
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-20)>>
<</if>>
<<set $player.location to "Changing Room">>
<<if setup.getIndecentValue($player)==100>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_1_8'>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;<<=$player.first_name>>?@@" she snaps her fingers in front of you a few times, "@@.npc_psychiatrist;<<=$player.first_name>> are you in there?@@"<br>
<br>
A strange question to ask, of course you are in here. Who else should be in here? Gradually you start coming back to your senses. Hmm... that's strange. You thought you came here for the hypnosis therapy, but according to the clock mounted on the wall, you've been here for over an hour. Thinking harder you kind of remember starting to get into this strange suit....<br>
<br>
"@@.npc_psychiatrist;So, you seem to have enjoyed your first session. You never tried to stop the session once. How do you feel?@@"<br>
<br>
You feel ... relaxed. Really relaxed. Best you've felt in ages. Nice. You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> that you feel really fine, but for some reason you cant remember the Hypnosis Session at all.<br>
<br>
"@@.npc_psychiatrist;Of course not, silly. It's supposed to stay in your subconscious, to change you on a fundamental level without interfering or distracting you from your normal life. Don't worry too much about it, it's only liable to make your head hurt.@@"<br>
<br>
You nod slightly, though it still kind of bugs you. If nothing else you'd really like to check the VR Rig out, still dreaming of your own for gaming at home. You really concentrate and try to remember...<br>
<br>
<<glitchText "rememb...">><br>
<br>
<<glitchText "Obey... Consent... Accept...">><br>
<br>
Yeah, you really don't mind not thinking about it too much. Too much thinking is bad for your brain anyway. Could make you <<glitchText "smarter">>, Who'd want to do that anyway. It's not like brains are a desirable trait for a Bimbo.<br>
<br>
"@@.npc_psychiatrist;Now let me help you get out of this plug suit@@"
</div>/*#
#desc: first hypnosis session change back into normal clothes
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Changing Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Now please put on your normal clothes and place the plug suit back into its case while I go through these results. I'm quite excited; the livefeed looked very promising.@@"<br>
<br>
She leaves you alone in the changing room, going back to her office.<br>
<br>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Changing room">><<set $return_makeuproom="event_psychiatrist_hypnosis_1_8">><<set $makeuproom_image="./images/scenes/makeup_01.png">><<set $return_makeuproomtext="Return to the Changing room.">><<set $makeuproom_water=true>>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency($player)>>
<<if $player.flags.fem_style.makeup == "" && setup.getCurrentMakeup($player) != "" && setup.getCurrentMakeup($player) != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should take this off.@@]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_1_9' 'Leave the Changing Room' 180>>]
<</if>>
<<elseif setup.checkPlayerDressed($player)>>
<br>
Still a bit fuzzy from the "treatment" you glance at your reflection something seems off an inappropriate but you just shrug.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_9' 'Leave the Changing Room' 180>>]
<<else>>
[@@.link_locked;I really need to dress more appropriate to leave@@]
<</if>>
</div>/*#
#desc: first hypnosis session paid and leave
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at the psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<if $roomchange == true>>
<<deleteItem $player $now 'plug_suit_red'>>
<<set $npc_psychiatrist.free_sessions += 1>>
<<set $player.money.total+=40>>
<<include addHypnosisTask>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You leave the plug suit in its case back at the changing room and return to the office. <<=setup.getNpcName('npc_psychiatrist', 'first')>> is already sitting at her desk going through data sets, presumably from your session.<br>
<br>
"@@.npc_psychiatrist;...Yes..Prognosticated rejection was over 22% too high. Hmm... maybe we can enter phase two in two... maybe one.. Oh. You've finished dressing fast. Here you go.@@"<br>
<br>
She slides a credstick across the table towards you.<br>
<br>
"@@.npc_psychiatrist;40 Credits, as agreed upon. And I added another free counseling session to your account. As I expected the hypnosis session went very well, you are very well suited to these.... techniques and just perfect for my research. So, I'll simply put you into the system for the next session, okay? That would be Sunday, 19 o'clock. As usual, show up if you want to find out about your true potential.@@"<br>
<br>
<<printThought $player "What's that supposed to mean?">><br>
<br>
"@@.npc_psychiatrist;I'm not going to detain you any longer, so have a nice evening.@@"
You understand the cue and bid your farewell.<br>
<br>
[<<moveTo 'room_psychiatrist_lobby' 'Leave the office.' 60 '<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: arrive for second hypnosis session, overhear her complaining about things on phone
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<if $roomchange == true>>
<<addItem 'plug_suit_red'>>
<<set $npc_psychiatrist.hypnosis = 2>>
<</if>>
<<set $player.location to "Psychiatrist">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You enter the office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for another VR Hypnosis therapy. There are somewhere hints in your mind of what happened last time, like the hidden door and an unusual big changing room but anytime you try to focus on the session proper the memories seem to flit away. Whelp, better not dwell too much in the past, better to focus on the future. <<=setup.getNpcName('npc_psychiatrist', 'first')>> told you that your memory around the time of the hypnosis might be a little bit hazy - after all, it isn't targeted at your 'conscious' mind, is it? You are not sure, this is all quite strange, to be honest. What did you achieve here last time, anyway?
<<if $player.flags.gloryhole.handjob>0>>
You've made some questionable decisions since then, that's for sure, but was that really the hypnosis' doing? After all, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> said it couldn't make you do anything you weren't already inclined to...
<</if>>
You try to focus your <<glitchText "thoughts ...">><br>
<br>
<<printThoughtGlitch $player "Obey... Consent... Accept...">><br>
<br>
<<glitchText "Accept ...">> Accepting things that are out of your hands is part of growing up you suppose. How unusually mature of you to think that way.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> is on the phone when you enter her office and does not even appear to notice you.<br>
<br>
"@@.npc_psychiatrist;No! That is in no shape or form acceptable. This is the deal you offered...@@", she suddenly becomes very quite, as if the other person said something very harsh and continues a lot fainter "@@.npc_psychiatrist;Yes, of course I understand the consequences... But it has never been tested on a hum... Let's continue this conversation later, I have a client here. Yes. Of course. Good Day, sir.@@"<br>
<br>
Finally turning towards you she strokes her hair back into position with one of her hands. A moment later her rather unusual worried expression has disappeared in exchange for her usual smile.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, I didn't hear you come in. You really should learn to knock.@@"<br>
<br>
You explain to her that you did knock... twice.<br>
<br>
"@@.npc_psychiatrist;Well, next time knock louder. If you had walked into a conversation that had fallen under the confidentiality obligation, I could have gotten into some hot water. And I don't mean the cozy hot tub type. Anyway, thank you for coming to for another expedition into the human psyche. Oh, this will be awesome. Your test results are even better than expected.@@"<br>
<br>
You ask her what she means by that.<br>
<br>
"@@.npc_psychiatrist;Well I could bore you with the technical details, but how about I just round it up in layman's terms? Your subconscious is reacting very well to the stimuli of the simulation. There seems to be a lot of hidden desires within you... and they all want to be let out. You can imagine that this really makes you perfect for study. But don't worry, we're not aiming to make you a psychopath or something. The system aims to release positive qualities. For example, if you ever wanted to travel and see the world, but had a blockage in your subconscious. This blockage will be removed over time with the help of the system. Or if you ever wanted to have a same-sex relationship, but your rather... archaic upbringing prohibited such behaviour, that will be gone as well. So you can see that the system really just helps you become the version of yourself that would give you the most satisfaction, that way you can strive for greatness!@@"<br>
<br>
Those seemed like rather specific examples. You wonder if that was meant for you at all. She hands you a familiar box and continues, "@@.npc_psychiatrist;Well, I think we idled long enough with chatter, here is your plug suit. Let's get you inside it.@@"<br>
<br>
With the plug suit in your hand, you follow her though the inconspicuous door at the side of her office.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_1' 'Continue.' 180>>]
</div>/*#
#desc: strip for second hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _femaleUnderwear = false>>
<<set _femaleClothing = false>>
<<set _plugsuit = false>>
<<set _plug = false>>
<<if setup.checkWornItem('plug_suit_red')>>
<<set _plugsuit = true>>
<<if !$npc_psychiatrist.flags.session[1].bimbofication>>
<<set $npc_psychiatrist.flags.session[1].bimbofication=true>>
<<applyExperience 'bimbofication' 4 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if (setup.checkVisibleClothingTag('female')>20)>>
<<if (setup.checkVisibleClothingTag('underwear')>20)>>
<<set _femaleUnderwear = true>>
<<if !$npc_psychiatrist.flags.session[1].sissyfication>>
<<set $npc_psychiatrist.flags.session[1].sissyfication=true>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set _femaleClothing = true>>
<<if !$npc_psychiatrist.flags.session[1].feminization>>
<<set $npc_psychiatrist.flags.session[1].feminization=true>>
<<applyExperience 'feminization' 7 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<if setup.getIndecentValue($player)==100>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_2_2'>>
<</if>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location to "Changing Room">>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if !_femaleUnderwear && !_femaleClothing && !_plugsuit>>
"@@.npc_psychiatrist;<<=$player.first_name>>, would you kindly strip naked.
<<if $npc_psychiatrist.flags.foundplug>>
If you're still plugged that's okay. In fact, based on your earlier numbers I think it may be helping!
<</if>>
<<if $npc_psychiatrist.flags.foundcage>>
You can leave your chastity cage on, if you are wearing one right now. We'll simply lube up your balls like the last time.
<</if>>
Just like last time we have to rub this lotion onto your skin to increase connectivity to the suit.@@"<br>
<br>
You're having trouble recalling if you had to endure this during your first visit... there was something about the suit, something that makes you shudder in ... <<glitchText "in ...">><br>
<br>
<<printThought $player "Oh... latex feels kind of nice yet restricting on my skin. Wait, did I just think that?">><br>
<br>
<<glitchText " ... y ... yes ">>Yes, you remember now, the plug suit was important for biofeedback and to increase your immersion in the simulation. Plus it felt really nice. Yeah, nothing to worry about, everything is great.
<<elseif _plugsuit>>
<<if $npc_psychiatrist.flags.session[1].bimbofication>>
You think you know how to put a latex catsuit on all by yourself, ignoring all warnings from <<=setup.getNpcName('npc_psychiatrist', 'first')>>
<<if $npc_psychiatrist.flags.session[0].bimbofication>>
just as before, you fail miserably.
<<else>>
and fail miserably.
<</if>>
You get stuck in a way where it's not even possible to get out yourself, so you have to rely on assistance from <<=setup.getNpcName('npc_psychiatrist', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;Please <<=$player.first_name>>, really? Maybe I simply should leave you in there for a while to teach you a lesson. Now, don't look at me like that, we have a schedule to keep to I will help you out, but you should really learn to listen to others from time to time.@@"
<</if>>
<<elseif _femaleClothing>>
<<if $npc_psychiatrist.flags.session[0].feminization>>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> looks at you, slightly puzzled and pissed.<br>
<br>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, please... when my mouth forms the word "strip naked please," could you then... well, I don't know... how about... well here's an idea. You could strip naked. That would be... compared to what you did... the right choice of action.@@"
<<else>>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, that's very nice. You're connecting with your inner femininity. But if you would you kindly strip naked, since we still have to rub this lotion onto your skin.@@"
<</if>>
<<elseif _femaleUnderwear>>
<<if $npc_psychiatrist.flags.session[0].sissyfication>>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, don't stop with your undies. They have to go as well. I know you like to wear them, but you'll be wearing other things in the simulation. Promise!".@@"
<<else>>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, that's very nice. You're exploring your submissiveness by becoming a sissy. Noted. But if you would kindly strip naked, since we still have to rub this lotion onto your skin.@@"
<</if>>
<</if>>
</div>/*#
#desc: psychiatrist jerks you off or fingers your ass before second hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No! It took me long enough to put this damn thing on, I'm not taking it off until I'm done with the session!">>
<<if $roomchange == true>>
<<wearItem $player $now "plug_suit_red" true>>
<<set $npc_psychiatrist.flags.session[1].cum = false>>
<<set $player.timebased.horny = 0>>
<<setThreshold 'anal' 'psychiatrist_anal' 'fingered'>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
/%
<<if (setup.getItemFromType("cage")=="")>>
<<if $player.timebased.horny>50>>
<<set $npc_psychiatrist.flags.session[1].cum = true>>
<</if>>
<<set $player.timebased.horny = 0>>
<</if>>%/
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
Again <<=setup.getNpcName('npc_psychiatrist', 'first')>> snaps on a pair of tight latex gloves and rubs lotion all over your body. With as attractive as she is the full-body contact makes your imagination run wild.
<<if (setup.getItemFromType("cage")!="")>>
In a way you're rather happy that you're wearing your <<=setup.getItemTypeName("cage")>> right now, else you would have pretty much cum right in her hands, or worse.<br>
<br>
"@@.npc_psychiatrist;That's not good. Not good at all. You seem to be awfully tense today. Maybe it would be for the best if we remove that thing down there to free your penis, but I think I know a solution you'll like as well. <<=$player.first_name>>, please kneel on the bench on all fours. Don't worry, you don't have to be embarrassed, I've done this quite often with other test subjects as well. Well, most of them came when I put on the lotion, and don't wear chastity devices, so maybe not that many, but the principle is the same. Now relax and think of something beautiful, this will only take a few minutes.@@"<br>
<br>
<<if (setup.getItemFromType("plug")!="")>>
With a sudden yank, your plug is forcefully removed from your, now gaping, <<getWordAnus $player>> and before you're even finished gasping for air, you can feel a well lubed finger invading your sphincter,
<<else>>
You feel something strange circling around your sphincter,
<</if>>
<<if setup.getTotalValue('anal')==0>>
before you have time to figure out what's going on you can feel a lubed finger forcing its way into your virgin <<getWordAnus $player>>, curling towards your prostate.
<<else>>
<<switch setup.getTotalValue('anal')>>
<<case 1 2>>
followed by a second finger shortly after, which is pretty much your current limit. You audibly moan while they start to massage your prostate.
<<case 3 4>>
followed by a second finger shortly after, only to be assisted by a 3rd one, stretching your poor little <<getWordAnus $player>>, which makes you moan quite loud as they misuse your prostate.
<<case 5 6>>
followed by a second finger shortly after, only to be assisted by a 3rd one, which immediately calls backup from a 4th finger. You feel your poor little <<getWordAnus $player>> stretch quite a lot, which makes you moan loud while they take turns stimulating your prostate.
<<default>>
followed by a second finger shortly after, only to be assisted by a 3rd one, which immediately calls in backup from a 4th finger. Stretching your poor little <<getWordAnus $player>> quite a lot, which makes you moan loud. All the sudden all fingers are removed from your gaping <<getWordAnus $player>>, so you relax for a second and use the time to catch your breath, only to be invaded by the whole hand this time.<br>
<br>
"@@.npc_psychiatrist;Wow, so inviting. You've played quite a lot down there, haven't you? Too bad I need my other hand for something else, I'd love to find out how... spacious you really are. For science, of course.@@", <<=setup.getNpcName('npc_psychiatrist', 'first')>> casually explains to you while fisting your crying <<getWordAnus $player>>. Even as it has you gaping the pounding stimulation is intense, radiating through everything down there.
<</switch>>
<</if>>
Then she starts to gently massage your balls with her other hand, very gentle at first, but she starts to squeeze and push them stronger and faster after a while, getting faster and faster while doing this. Together with the invasion of your <<getWordAnus $player>>, you realise this is not supposed to be a fun, sexual experience, this is calculated to be as efficient as possible to make you ejaculate in the shortest period of time.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, I'm cumming!">><br>
<br>
With a grunt you ejaculate all over her hand. But not how you're used to, with the spastic convulsions that would normally shoot through your <<getWordMyPenis $player>>, but more like a constant stream. The realization hits you like a bucket of cold water. You have just been milked like a cow in the stables.<br>
<br>
"@@.npc_psychiatrist;There, your tension should go away in a few minutes, and that red colour in your face as well!@@"<br>
<br>
You don't know precisely what has happened, just that your face burns bright red with shame.
<<else>>
As she reaches your balls and your penis you try your best to not get aroused, and fail. Your raging erection twitches and bounces up and down.
<<if $npc_psychiatrist.flags.session[1].cum>>
and you cum right onto her hands.<br>
<br>
"@@.npc_psychiatrist;Don't worry <<=$player.first_name>>, I've expected a reaction like this. This is good, actually as now you can really relax while being hypnotized, not having to worry about other things, like a serious case of blue balls.@@"<br>
<br>
That last word was said while she still holds your ball in her hand and smiles at you. Your reaction is simply turning redder then red. It's like you reached realms beyond #ff0000.
<<else>>
and glistens with precum, but you manage to suppress the urge to cum right here, right now. Though you may have salvaged a touch of pride it is at the cost of leaving you with a serious case of blue balls.<br>
<br>
"@@.npc_psychiatrist;Oh.@@", <<=setup.getNpcName('npc_psychiatrist', 'first')>> looks at you with bewildered, "@@.npc_psychiatrist;That's not good. Not good at all. Normally it suffices that I massage the balls of my test persons to relive them of any ongoing tension or distraction. Nope, this will simply not suffice. <<=$player.first_name>>, please kneel on the bench on all four. Don't worry, you don't have to be embarrassed, I've done this quite often with other test subjects as well. Well, most of them came when I put on the lotion, but I shouldn't be surprised that you're special in more ways than one. Now relax and think of something beautiful, this will only take a few minutes.@@"<br>
<br>
<<if (setup.getItemFromType("plug")!="")>>
With a sudden yank, your plug is forcefully removed from your, now gaping, <<getWordAnus $player>> and before you're even finished gasping for air, you can feel a well lubed finger invading your sphincter,
<<else>>
You feel something strange circling around your sphincter,
<</if>>
<<if setup.getTotalValue('anal')==0>>
before you have time to figure out what's going on you can feel a lubed finger forcing its way into your virgin <<getWordAnus $player>>, curling towards your prostate.
<<else>>
<<switch setup.getTotalValue('anal')>>
<<case 1 2>>
followed by a second finger shortly after, which is pretty much your current limit. You audibly moan while they start to massage your prostate.
<<case 3 4>>
followed by a second finger shortly after, only to be assisted by a 3rd one, stretching your poor little <<getWordAnus $player>>, which makes you moan quite loud as they misuse your prostate.
<<case 5 6>>
followed by a second finger shortly after, only to be assisted by a 3rd one, which immediately calls backup from a 4th finger. You feel your poor little <<getWordAnus $player>> stretch quite a lot, which makes you moan loud while they take turns stimulating your prostate.
<<default>>
followed by a second finger shortly after, only to be assisted by a 3rd one, which immediately calls backup from a 4th finger. Stretching your poor little <<getWordAnus $player>> quite a lot, which makes you moan loud. All the sudden all fingers are removed from your gaping <<getWordAnus $player>>, so you relax for a second and use the time to catch your breath, only to be invaded by the whole hand this time.<br>
<br>
"@@.npc_psychiatrist;Wow, so inviting. You've played quite a lot down there, haven't you? Too bad I need my other hand for something else, I'd love to find out how big you really are.@@", <<=setup.getNpcName('npc_psychiatrist', 'first')>> casually explains to you while fisting your crying <<getWordAnus $player>>. Even as it has you gaping the pounding stimulation is intense, radiating through everything down there.
<</switch>>
Still pumping away at your <<getWordAnus $player>> she starts to gently massage your balls with her other hand then grabbing your now even stronger erection directly and starting to masturbate your <<getWordMyPenis $player>>. Though she begins slow and gentle, she soon speeds. Together with the invasion of your <<getWordAnus $player>>, you feel like this is not supposed to be a fun, sexual experience, this is calculated to be as efficient as possible to make you ejaculate in the shortest time possible.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, I'm cumming!">><br>
<br>
With a grunt you ejaculate all over her hand. You don't know how to feel about the fact that you're becoming used to cumming this way, the spastic convulsions that would normally shoot through your <<getWordMyPenis $player>>, but more like a constant stream. You shudder as your balls finish emptying, once again you have been milked like a cow in the stables.<br>
<br>
"@@.npc_psychiatrist;There, your tension should go away in a few minutes, and that red colour in your face as well!@@"<br>
<br>
You don't know what just happened, just that your face burns bright red with shame.
<</if>>
<</if>>
<</if>>
After that <<=setup.getNpcName('npc_psychiatrist', 'first')>> helps you get into the plug suit. You're baffled by the wrist and ankle cuffs, but you think you remember them from last time... what exactly happened last time... you were locked...<<glitchText "locked...">><br>
<br>
<<printThoughtGlitch $player "Obey... Consent... Accept...">><br>
<br>
<<glitchText "... O ... Obey...">> Refusing to obey <<=setup.getNpcName('npc_psychiatrist', 'first')>> would be stupid, now that you've come this far. It will be okay, that is a fact you can accept. After all you gave your consent, didn't you?<br>
<br>
"@@.npc_psychiatrist;Done. And I think we managed get through this quicker than last time. You're starting to get your head around on how to wear latex after all. Maybe next time... No, I think that will be too early, but maybe after that you could put it on yourself. Unless you want my help again? Now would you kindly follow me to the laboratory. The show is about to begin... again!@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_3' 'Follow her' 600>>]
</div>/*#
#desc: enter room and get in chair for second hypnosis
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location to "VR Laboratory?">>
<<createBGR "./images/locations/psychiatrist_laboratory.png" "./images/characters/npc_psychiatrist_side.png">>
<div id="invframe" class="scrolltext">
You enter a dimly lit chamber. You early feelings of recognition get cranked up into full deja vu, everything is familiar and yet strange all at the same time. The device in the middle seems to be the VR Chair. <<=setup.getNpcName('npc_psychiatrist', 'first')>> uses her datapad to put the device into a neutral position which should make it easier for you to get onto it. You can't explain why but without even being asked you sit down, putting your hands through the metal sleeves and your fingers on the resting pans.<br>
<br>
"@@.npc_psychiatrist;Well, someone seems to be eager to start this evening. Very well, give me a second to secure your arms and legs... okay, now the other side... and done. Now, ready to... oh, I've almost forgotten. How silly of me. Maybe you don't remember but would you kindly open these kissable lips of yours for me?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_4' 'Part your lips.' 500>>]
</div>/*#
#desc: gagged for second hypnosis session. She expresses cryptic regret and kisses you
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Well, one reason would be because I am trapped in Bondage gear... I mean obey, consent... etc.">>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location to "VR Laboratory?">>
<<createAnimatedBGR "./video/ballgag_size.mp4">>
<div id="invframe" class="scrolltext">
Again the realization that there's something off reaches your consciousness too slow, too late to do anything. The faint voice in your head warning you about what's to come, is getting fainter with every second. You snap back to reality after the ball gag has already filled your mouth, rendering you unable to express yourself in a reasonable manner.<br>
<br>
"@@.npc_psychiatrist;Very good, that should keep you from biting your tongue during the session. Thanks for being so cooperative!@@", comforts <<=setup.getNpcName('npc_psychiatrist', 'first')>>, as she yanks the straps behind your head even tighter to make sure you're unable to even turn your head as she continues,"@@.npc_psychiatrist;Now, as you might remember there are mechanisms in place that could be used to stop this session, if you feel uncomfortable with the changes we are trying to achieve. But just as last time I've made sure you're not going to be able to activate them, so, really, I don't even know why I bothered mentioning it. <<=$player.first_name>>, even though you won't remember any of this after this session I want you to know, that I was against the decision to test the system at these levels on a human subject.@@"<br>
<br>
You think you see a hint of anguish on her face.<br>
<br>
"@@.npc_psychiatrist;My benefactor has been quite exact with his directions and for some reason he has directed his gorgon-like stare at your cute butt. Maybe I can make this up to you in some shape or form later, but now that I have everything tuned to your psyche.... well it's time to unlock all your hidden desires.@@"<br>
<br>
Unable to comprehend everything <<=setup.getNpcName('npc_psychiatrist', 'first')>> told you now you simply stare at her with bewilderment as she wraps her luscious lips around your gag to press against yours.<br>
<br>
"@@.npc_psychiatrist;Sorry, I had to steal that one, before you start to put these cute lips who knows where. Anyway here we go!@@"<br>
<br>
After the VR Goggles and the headphones are secured on your head, you can feel the electric shocks starting. Even through your hazy memories you are certain they are stronger than the last time. Your nipples and <<getWordMyPenis $player>> get a content onslaught of electric shocks.
<<if (setup.getItemFromType("plug")=="")>>
The electric discharge makes your sphincter twitch, which makes your plug move up and down, stimulating your prostate further.
<</if>>
The stimuli builds and builds, stronger and more intense with each iteration. You're having trouble making out what's going on at first, but as the stimulation and stimulation continues the images and sounds start to get clearer, burning themself into your subconscious forever...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_5' 'Continue...' 240>>]
</div>/*#
#desc: second hypnosis brainwashing, heavy bimbo + sissification
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Brainwashing is good for me. My mind is happy, blank and empty.">>
<<if $roomchange == true>>
<<setThreshold 'penis' 'pre_hypnosis_penis' 'session_2' true>>
<<setThreshold 'bimbofication' 'hypnosis_bimbofication' 'session_2' true>>
<</if>>
<<include enterroom_hypnosis>>
<<initRoom>>
<<set $player.location to "V... V... VR Wha...">>
<<createAnimatedBGR "./video/hypnosis_01.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Brainwashing is good for me. My mind is happy, blank and empty</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.5s;">Good sissies practice every day.</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.0s;">Bimbos are my role models.</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.5s;">I act like a bimbo.</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">Practice until it becomes natural.</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.5s;">Brainwashing is good for me. My mind is happy, blank and empty</span><br>
</span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "What is happening to me?">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "No, I'm losing myself!" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "Please... my thoughts ... !" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Yay! Brainwashing is good for me!" 40>></span>
<br>
<br>
<span id="hypnosis_2_6_continue" style="visibility: hidden;">
[<<moveTo 'event_psychiatrist_hypnosis_2_6' 'My mind is happy, blank and empty...' 2700>>]
</span>
<<makeVisible 'hypnosis_2_6_continue' 15>>
<<videoLoop>>
</div>/*#
#desc: second hypnosis session hallucination, meet fem you, wake up
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _tmpStr = "... "+$player.first_name+" ... B... Brainw... is ... goo go god... fo mee...">>
<<set $h2_cameinsuit = false>>
<<if $roomchange == true>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-20)>>
<</if>>
<<set $player.location to "Changing Room">>
<<if setup.getIndecentValue($player)==100>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_2_7'>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<glitchText _tmpStr>> you feel like you've zoned out really bad, but for some reason you're unable to zone back in. It feels like you're floating in an endless black void, not even sure if you exist, since you're unable to feel yourself. What is self, anyway? Just because you're in the driver's seat, does this make you conscious, or are you just a system made of biological and chemical subcomponents, waiting to trigger always in the same manner? Your journey of existential angst is interrupted by a faint light far, far away. You try to move towards it, but it's not very simple.
<<if setup.getWillpower($player)>0>>
Focusing all of your attention you manage to direct your thoughts and steer them towards the light.
<<else>>
It's more a random act than controlled manoeuvring, but you managed to get closer somehow.
<</if>>
You think it's a person, glowing in the dark. You're still too far away to make out any details, but it seems like that person is bound by giant metal chains on their arms, legs, torso and head.
<<set _chainstatus = setup.getTotalValue('feminization') + setup.getTotalValue('submission') + setup.getTotalValue('bimbofication') + setup.getTotalValue('humiliation')>>
<<if _chainstatus>20>>
But a lot of the chain's links seem to be brittle, like they're barely holding together.
<<elseif _chainstatus>10>>
But a few of the chain's links seem to be brittle bearing telltale signs of corrosion.
<<else>>
You think you see a few brittle links on the chain, but it seems to be mostly intact.
<</if>>
The person chained up seems to be female, but before you can get a closer look, a voice is distracting you... like white noise, getting louder <<glitchText "... and">>... and... it's getting harder to concentr... <<glitchText "concentra... consent... obey... accept">><br>
<br>
You open your eyes, looking directly into <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> face as she pulls one of your eyes open, while shining a small flashlight into the other.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, are you okay? It took you longer than last time to get out of trance, so I wanted to make sure everything was all right.@@"<br>
<br>
The sorrowful look on her face dissipates into relief as you finally stand up. Looks like you were sleeping on the bench in the changing room.<br>
<br>
"@@.npc_psychiatrist;Anyway, besides the unusually long time for you to get out of trance, our second session seems to be a full success! How do you feel?@@"<br>
<br>
You feel ... light. Like a weight has been lifted from your shoulders. Nice. You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> that you feel pretty good, you don't remember anything from the hypnosis session. But for some reason your lips taste like strawberry. Strange.<br>
<br>
"@@.npc_psychiatrist;That is a feature, not a bug, as a software developer would say. All signs point towards the system working as intended. I'll admit having this discussion after every session is annoying but this is how it's designed, to specifically target and stay only in your subconscious. After all, if your conscious mind knew what you really wanted you wouldn't need this sort of therapy at all. Don't worry though, I'm sure you'll see soon enough if there have been any changes to your usual behaviour.@@"<br>
<br>
You nod, everything she says makes sense but it still bugs you, that you cant remember anything at all. You cannot accept that you've forgotten everything except ....<<glitchText "exce .... accept ... obey... consent... rem.. member... ">><br>
<br>
<<printThoughtGlitch $player "Brainwashing is good for me.">><br>
<<printThoughtGlitch $player "My mind is happy, blank and empty!">><br>
<<printThoughtGlitch $player "Bimbos are my role models.">><br>
<br>
<<glitchText "... Bimbo ...">>For some reason you no longer care to strain your brain on such issues. Brains are overrated anyway. As long as you accept the fact, that you gave your consent to obey, everything will be all right, won't it? See, now that's a good little Bimbo.<br>
<br>
"@@.npc_psychiatrist;Come on, now. Let's get you out of this plug suit@@"
</div>/*#
#desc: second hypnosis, change into normal clothes
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Changing Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;If you would kindly put the plug suit back into its case. I'll be in my office, reviewing these results. Wow... the tetra rank correlation coefficient between submission and bim... yes... these values are amazing.@@"<br>
<br>
You are left alone in the changing room as she disappears into her office. You clean it as best you can of sweat with the materials found in the changing room and put it back into the case.<br>
<br>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Changing room">><<set $return_makeuproom="event_psychiatrist_hypnosis_2_7">><<set $makeuproom_image="./images/scenes/makeup_01.png">><<set $return_makeuproomtext="Return to the Changing room.">><<set $makeuproom_water=true>>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency($player)>>
<<if $player.flags.fem_style.makeup == "" && setup.getCurrentMakeup($player) != "" && setup.getCurrentMakeup($player) != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should take this off.@@]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_2_8' 'Leave the Changing Room' 180>>]
<</if>>
<<elseif setup.checkPlayerDressed($player)>>
<br>
Still a bit fuzzy from the "treatment" you glance at your reflection something seems off an inappropriate but you just shrug.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_8' 'Leave the Changing Room' 180>>]
<<else>>
[@@.link_locked;I really need to dress more appropriate to leave.@@]
<</if>>
</div>/*#
#desc: paid and dismissed from second hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<if $roomchange == true>>
<<deleteItem $player $now 'plug_suit_red'>>
<<set $npc_psychiatrist.free_sessions += 1>>
<<set $player.money.total+=40>>
<<include addHypnosisTask>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You leave the plug suit in its case in the changing room and leave the fitting room through the door to re-enter the office proper. <<=setup.getNpcName('npc_psychiatrist', 'first')>> is already all over her workstation, talking to herself while she is reviews your data.<br>
<br>
"@@.npc_psychiatrist;...stupid test my ass. I don't care if it worked! I still think it was too early, look at these values! Nobody can predict the sideeff.... Oh. Hi. Finished already? Thanks again for your help tonight. Here you go.@@"<br>
<br>
She slides a credstick across the table.<br>
<br>
"@@.npc_psychiatrist;40 Credits, as agreed upon. And there's more where that came from if you show up to another hypnosis session with yours truly. Are you as excited for the next session as I am? That would be next
<<switch _day>>
<<case 0>>
Wednesday,
<<case 3>>
Sunday,
<</switch>>
at 19 o'clock. As usual, show up if you're feeling up to it. I'm not going to detain you any longer, so have a nice evening.@@"<br>
<br>
You catch the hint cue and bid her farewell.<br>
<br>
[<<moveTo 'room_psychiatrist_lobby' 'Leave the office.' 60 '<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: show up for third hypnosis session, shown new plugsuit
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<if $roomchange == true>>
<<set $hypnosis2 = {}>>
<<addItem 'plug_suit_red'>>
<<set $npc_psychiatrist.hypnosis = 3>>
<<set $npc_psychiatrist.flags.session[1].feminization = false>>
<<set $npc_psychiatrist.flags.session[1].sissyfication = false>>
<<set $npc_psychiatrist.flags.session[1].bimbofication = false>>
<</if>>
<<set $player.location to "Psychiatrist">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You enter the office again, trying your best to remember what happened the last time you joined <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for hypnosis therapy. You vaguely remember a plug suit and enter a dark room, and then... <<glitchText "there ... was ... a ... ch... chair...">><br>
<br>
<<printThoughtGlitch $player "Obey... Consent... Accept...">><br>
<br>
<<glitchText "..any ...anyw ...">>Anyway, everything seemed to be fine. Maybe you can get a better look at the VR rig this time. You look forward to it with anticipation and close the door behind you. <<=setup.getNpcName('npc_psychiatrist', 'first')>> seems to be preoccupied with some data on her computer. You walk to her desk and greet her, as she seems too focused to notice your entrance.<br>
<br>
"@@.npc_psychiatrist;Oh!@@" She exclaims with a start at your sudden appearance. You can see her minimize a window on her desktop computer, but you can't make out the details, "@@.npc_psychiatrist;Wow. You almost scared me witless. Is it already 7:00 pm? I was just going through the data of our last session and excited that you've decided to give it another try. Oh this is going to be so much fun!@@"<br>
<br>
Her girlish sqee is a little unsettling, but you assume it's simply her curiosity for science! She pulls a small box from one of the drawers of her desk and hands it to you.<br>
<br>
"@@.npc_psychiatrist;Here is your plug suit. I know it's still unseemly to wear, but don't worry. A substantial donation from a benefactor has made it possible to get newer Plug Suits for the VR Rig, and some new upgrades for the rig itself. These new additions will really allow us to penetrate your deepest... level of subconscious. Sadly it was not enough money to buy a immersion chamber, but hey, I'm happy for any help I can get. Of course the biggest help is having you as such a wonderful and willing test subject. Thanks again <<=$player.first_name>>.@@"<br>
<br>
You take the plug suit following her through the inconspicuous door at the side of her office and into the changing room.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_1' 'Continue.' 180>>]
</div>/*#
#desc: strip and remove anal plug for third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _femaleUnderwear = false>>
<<set _femaleClothing = false>>
<<set _plugsuit = false>>
<<set _plug = false>>
<<if setup.checkWornItem('plug_suit_red')>>
<<set _plugsuit = true>>
<<if !$npc_psychiatrist.flags.session[1].bimbofication>>
<<set $npc_psychiatrist.flags.session[1].bimbofication=true>>
<<applyExperience 'bimbofication' 4 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if (setup.checkVisibleClothingTag('female')>20)>>
<<if (setup.checkVisibleClothingTag('underwear')>20)>>
<<set _femaleUnderwear = true>>
<<if !$npc_psychiatrist.flags.session[1].sissyfication>>
<<set $npc_psychiatrist.flags.session[1].sissyfication=true>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set _femaleClothing = true>>
<<if !$npc_psychiatrist.flags.session[1].feminization>>
<<set $npc_psychiatrist.flags.session[1].feminization=true>>
<<applyExperience 'feminization' 7 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<if setup.getIndecentValue($player)==100>>
<<if setup.checkItemTypeWorn('plug')>>
<<set _plug = true>>
<<else>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_3_2'>>
<</if>>
<</if>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location to "Changing Room">>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if !_femaleUnderwear && !_femaleClothing && !_plugsuit && !_plug>>
"@@.npc_psychiatrist;<<=$player.first_name>>, would you kindly strip naked.
<<if $npc_psychiatrist.flags.foundplug>>
That means your little extra in your bum as well, if you happen to be wearing one right now.
<</if>>
<<if $npc_psychiatrist.flags.foundcage>>
You can leave your chastity cage on, if you happen to be wear one right now. We'll simply lube up your balls like before.
<</if>>
I am sure you recall, that we have to rub this lotion onto your skin, to increase connectivity to the suit, not to mention how much easier it makes putting the suit on.@@"<br>
<br>
You're having trouble recalling if you had to endure this during your previous visit... there was something about the suit, something that makes you shudder in ... <<glitchText "in ...">><br>
<br>
<<printThought $player "Yay! Latex, it's like being naked without being naked! Wait, did I just think that?">><br>
<br>
<<glitchText " ... y ... yes ">>Yes, you remember now, the plug suit was important for biofeedback and to increase your immersion in the simulation. Yeah, nothing to worry about.
<<elseif _plug>>
"@@.npc_psychiatrist;Yes <<=$player.first_name>>, that one@@", she points at your <<=setup.getItemTypeName('plug')>>, "@@.npc_psychiatrist;has to go as well.@@"
<<elseif _plugsuit>>
<<if $npc_psychiatrist.flags.session[1].bimbofication>>
Ignoring all
<<if $npc_psychiatrist.flags.session[0].bimbofication>>
warnings again,
<<else>>
warnings,
<</if>>
you try to put on the plug suit by yourself and fail miserably, not even getting your feet in by yourself.<br>
<br>
"@@.npc_psychiatrist;Please <<=$player.first_name>>, would it hurt that much to listen to me even once? Sometimes I hope your clumsiness is just an act that you use to surprise people with your whiz, but I'm having my doubts right now. Don't worry, a Bimbo Ditz such as yourself has his purpose in life. But please wait until we put you in the simulation before appearing. Now, if you would kindly strip naked, since we still have to rub this lotion onto your skin. Really, that disobedience is the personality trait that needs to be overwritten!@@"
<</if>>
<<elseif _femaleClothing>>
<<if !$roomchange && $npc_psychiatrist.flags.session[0].feminization>>
<<=setup.getNpcName("npc_psychiatrist", "first")>> looks at you, slightly puzzled and clearly annoyed.<br>
<br>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, when I ask you to strip naked, and you put on the female clothing you have with you for some unknown reason, what does this tell me about you? What? Please, enlighten me. If you want to dress like a woman, hell if you want to be a woman, a trans-female, a shemale, a sissy, a crossdresser on any other spectrum in between, that is fine. Really. 3rd age of enlightenment and stuff. Homophobia has dropped to an all time low and the valkyr units make sure most people stick to the law. But please, for all that is good and holy, read from my lips: Please. Take. Off. Your. Clothes. <<=$player.first_name>>. Really, I'm doing you a favour here, if you lose this disobedient streak.@@"
<<else>>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, that's very nice. You're connecting with your inner femininity. But if you would you kindly strip naked, since we still have to rub this lotion ALL over your skin.@@"
<</if>>
<<elseif _femaleUnderwear>>
<<if $npc_psychiatrist.flags.session[0].sissyfication>>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, don't stop with your undies. They have to go as well. I know you like to wear them, but you'll get to wear other things in the simulation. Promise!".@@"
<<else>>
"@@.npc_psychiatrist;Now <<=$player.first_name>>, that's very nice. You're exploring your submissiveness by becoming a sissy. Noted. But if you would kindly strip naked, since we still have to rub this lotion onto your skin.@@"
<</if>>
<</if>>
</div>/*#
#desc: helped into plugsuit for third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No! It took me long enough to put this damn thing on, I'm not taking it off until I'm done with the session!">>
<<if $roomchange == true>>
<<wearItem $player $now "plug_suit_red" true>>
<<set $player.timebased.horny = setup.changeHorny($player,20)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
Just like last time, <<=setup.getNpcName('npc_psychiatrist', 'first')>> puts the lotion on your skin, including your balls
<<if (setup.getItemFromType("cage")!="")>>
which are massaged thoroughly with the lubricant. Your <<getWordMyPenis $player>> twitches with excitement, but since it's tightly secured behind your <<=setup.getItemTypeName("cage")>>, merely crushing itself in the process.
<<else>>
and your <<getWordMyPenis $player>>. This makes it twitches with excitement due to the lack of attention it has gotten lately. From anyone besides you that is.
<</if>>
As <<=setup.getNpcName('npc_psychiatrist', 'first')>> helps you to get into the plug suit, you notice a change since the last time you wore it. There is now a double ended zipper going from the top of your butt cheeks and between your legs to the top of your pelvic bone. You're curious about the new modification, is this so you can use the bathroom without removing the suit? It hasn't been an issue yet but putting the plug suit on or off takes forever! You're puzzled by the wrist and ankle cuffs, though they haven't changed since last time, and the last time you were here was ... <<glitchText "it was ...">><br>
<br>
<<printThoughtGlitch $player "Obey... Consent... Accept...">><br>
<br>
<<glitchText "... a ... accept...">>, yeah it was acceptable, you think. You'll be fine being locked up in the suit, unable to remove it yourself, if you even wanted to. You find such restriction exciting to think about it.<br>
<br>
"@@.npc_psychiatrist;And done. That went a lot faster than last time. You could put it on yourself next time... Unless you want my help again. Now would you kindly follow me to the laboratory. The show is about to begin... again!@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_3' 'Follow her' 600>>]
</div>/*#
#desc: enter room + bound to chair for third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location to "VR Laboratory?">>
<<createBGR "./images/locations/psychiatrist_laboratory.png" "./images/characters/npc_psychiatrist_side.png">>
<div id="invframe" class="scrolltext">
You enter the dimly lit VR chamber. As you get closer to the chair that dominates the room, you are able to take a better look at it and note the company's name "Style Fetish Industries" in front of the floor bolts. The name is unfamiliar to you as you continue to scan the dimly lit device. It reminds you of some sort of medical chair, only re-purposed and refitted to be more secure. You find it hard to see in the dim light, and fail to make out all the details of the room. <<=setup.getNpcName('npc_psychiatrist', 'first')>> uses her datapad to put the chair into the neutral position, allowing you to easily get on.<br>
<br>
"@@.npc_psychiatrist;Good job mounting the chair without any hesitation. Now, you know the drill. Put your arms through these metallic sleeves and put your fingers in the resting pans. Now just wait a moment while I secure things. Put your legs in these padded curved panels and your feet on the platforms below. I'll just shackle your legs and feet as well. Just a moment... Done. Now... we're almost ready to go. You already know the last bit. Would you kindly open your cute lips for me?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_4' 'Open your mouth.' 500>>]
</div>/*#
#desc: gagged, plugged and "feeder" dildo for third hypnosis session, session starts
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Hmm... trapped in bondage gear!">>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.orgAnal = setup.getTotalValue('anal')>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<setThreshold 'anal' 'psychiatrist_anal' 'ems_plugged' true>>
<<addItem "analplug_medium_ems">>
<<plugItem $player $now "analplug_medium_ems" true>>
<<wearItem $player $now "plug_suit_red" true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location to "VR Laboratory?">>
<<createAnimatedBGR "./video/ringgag_01.mp4">>
<div id="invframe" class="scrolltext">
Again you realise that there is something off... like a faint voice in your head warning you against what is coming. But does it really matter? You're already bound to the chair, unable to free yourself, completely at <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> mercy. You snap back to reality as she forces a large, pink o-ring gag into your mouth. The ring locks, keeping your mouth open. Completing your helplessness she uses leather straps to fasten your head to the headrest, leaving your head completely immobile.<br>
<br>
"@@.npc_psychiatrist;Very good, that should keep you from moving and injuring yourself during your session. Thanks for being so cooperative!@@"<br>
<br>
You see <<=setup.getNpcName('npc_psychiatrist', 'first')>> tap away at her datapad as the chair spreads your knees as far apart as they can move. She then kneels down between your lags and pulls the back zipper around to the front, stopping at the perineum, leaving your anus exposed. You try to protest but it comes out as moans, drool leaking past the o-ring gagging your lips.
<br><br>
<<if $npc_psychiatrist.flags.foundplug>>
"@@.npc_psychiatrist;Now, since I know you're plugging your little hole up already it won't be new information for you that the male prostate is an erogenous zone. Stimulating it provides an additional avenue for therapy, plus being quite enjoyable in its own right.@@"
<<else>>
"@@.npc_psychiatrist;Now, this might be new information for you, but the male prostate is an erogenous zone. Stimulating it provides an additional avenue for therapy, plus being quite enjoyable in its own right.@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;So you can just consider this baby here a fresh, exciting way to fill you with new hopes and dreams.@@"<br>
<br>
While she's talking to you she comes up beside you to show off a medium sized metal butt plug.
<<if $npc_psychiatrist.flags.foundplug || $scene.orgAnal==0>>
<<if $scene.orgAnal<4>>
The realization washes over you that this is going to hurt more than you had anticipated.
<<else>>
The realization washes over you that this is going to be a bit more "fun" than you had anticipated.
<</if>>
The thought is confirmed as she snaps on a pair of latex gloves and lubes her index finger with a wickedly excited smile on her face.
<<else>>
"@@.npc_psychiatrist;Hmm, you feel pretty tight down here. No matter, once it's in I'm sure you'll love how it enhances the experience.@@"<br>
<br>
Ominously she snaps on a pair of latex gloves and lubes her index finger with a wickedly excited smile on her face. In your present state all you can do is watch.
<</if>>
<<if $scene.orgAnal==0>>
She walks back back between your legs and you feel something cool and slippery pressing on you sphincter then forcing its way in. Surprisingly, it does not hurt.<br>
<br>
"@@.npc_psychiatrist;That was only my finger applying the lube, you ditz. Now please, and I cannot even emphasise this enough; try to relax.@@"<br>
<br>
Her finger slides away and now you can feel something cold and metallic at your anus, trying to force its way in. Through the generously applied lube your sphincter hardly poses any resistance, but your untrained anus yet resists. Not being used to something like this makes this whole ordeal very painful for you. You'd clench your teeth together, but that is hardly an option right now, instead settling for clamping down on your gag and trying to relax your rapidly-spreading hole. You fail for the most part and a loud groan escapes your mouth, while an audible plop promulgates that the plug has now entered your anus.<br>
<br>
"@@.npc_psychiatrist;Okay, we got the first knob. Only three more to go! Yay!@@"<br>
<br>
<<printThought $player "What? The FIRST?">><br>
<br>
The pressure returns, this time with reinforcements, forcing your anus more and more open. Another pop and you're sure you're about to be split in half.<br>
<br>
"@@.npc_psychiatrist;Second one in, only two more to go. Come on, who's a good little bimbo? You can take this, like the whore you're going to be! Yay!@@"<br>
<br>
This is the point, where your thoughts would normally narrate something, but your brains feel like they're leaking out alongside the drool seeping past your gag. Too busy not getting fried by all those feelings dashing trough your body like pinball balls caught between a lot of bumpers. Another pop and your anus is surely stretched beyond repair. But besides hurting like a butt-load of hell, it also makes you horny like you've never been before. Well, not exactly like you've never been before.... Like the first time you got spanked really hard.<br>
<br>
"@@.npc_psychiatrist;Come on my slutty bimbo, you want to be happy, don't you? Yes, you do. Now this will make you happy!@@"<br>
<br>
And with a final push it is done. The plug has slid fully into your anus which happily closes its gates as narrow as it can around the base of the plug. You shudder in your restraints. Even as you body adjusts to the massive intruder you know removing it will hurt as much as well.<br>
<br>
<<elseif $scene.orgAnal<4>>
She walks back between your legs and you feel something cold pressing into your sphincter then forcing its way in. It feels small, your practice such that it does not hurt at all.<br>
<br>
"@@.npc_psychiatrist;That was only my finger applying the lube, you ditz. Now please, and I cannot even emphasise this enough, try to relax.@@"<br>
<br>
You can feel something cold and metallic at your rear entryway, trying to force its way in. Through the generously applied lube, your sphincter hardly poses any resistance, but your anus is, since it is not used to a plug of this size. Not being used to something like this makes this whole ordeal very painful for you. You'd clench your teeth together, but that is hardly an option right now, and try to relax. You fail and a loud groan escapes your mouth, while an audible plop promulgates that the plug has entered your anus.<br>
<br>
"@@.npc_psychiatrist;Okay, we got the first knob. Only three more to go! Yay!@@"<br>
<br>
<<printThought $player "What? The FIRST?">><br>
<br>
The pressure returns and it brought reinforcement with it, forcing your anus more and more open. Another pop and you're sure you're about to be split in half.<br>
<br>
"@@.npc_psychiatrist;Second one in, only two more to go. Come on, who's a good little bimbo? You can take this, like the whore you're going to be! Yay!@@"<br>
<br>
This is the point, where your thoughts would normally narrate something, but your brains feel like they're leaking out alongside the drool seeping past your gag. Too busy not getting fried by all those feelings dashing through your body like pinball balls caught between a lot of bumpers. Another pop and your anus is surely stretchered beyond repair. But besides hurting like a butt-load of hell, it also makes you horny like you've never been before. Well, not exactly like you've never been before.... Like the first time you got spanked really hard.<br>
<br>
"@@.npc_psychiatrist;Come on my slutty bimbo, you want to be happy, don't you? Yes, you do. Now this will make you happy!@@"<br>
<br>
And with a final push it is done. The plug has slid fully into your anus which happily closes its gates as narrow as it can round the bottom of the plug. You shudder in your restraints. Even as you body adjusts to the massive intruder you know removing it will hurt as much as well.<br>
<br>
<<else>>
You feel the lube being applied to your anus.<br>
<br>
"@@.npc_psychiatrist;Hmm... looks like you've had your share of fun down there already. Well relax, because here we go!@@"<br>
<br>
You can feel as the plug slides in without much resistance at all, barely noting each of its four graduated knobs spreading you wider in turn.
<</if>>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> secures a leather strap around your groin area, pulling it tight so that there is no way you could push the plug out, carefully connecting the short wire "tail" at the base of the plug with another wire leaving the chair. You recognise the connector as the same type used by your suit.<br>
<br>
"@@.npc_psychiatrist;You see, this plug is not only another sensor but an electronic stimulator as well. Alright, I bet you're eager to go but there's still one last thing before we can start this session. Are you ready? Of course you are!@@"<br>
<br>
She moves behind the chair and comes back with a strange looking machine in her hand. At first it seems like it's floating, since she's only pushing it in front of her. Straining against your bonds to get a closer look reveals that it's actually connected to the chair on an hydraulic arm. It looks like one of these industrial strength fucking machines with an impressive dildo at its front. There are multiple cables snaking through the arm to the mounted dildo. Presumably some of them are for sensory, energy supply, and hydraulics but the last one is see-through vinyl tubing, filled with some unknown, yet unsettlingly familiar, off-white fluid connected to a container at the top of the room. As the dildo wobbles moving into position it drips several drops of the viscous liquid from the hole of the centre of the dildo.<br>
<br>
"@@.npc_psychiatrist;Only the best for my favourite guinea pig... err, I mean client. You know, I thought of using an artificial liquid because you can replicate the taste and texture pretty easy, but a friend of mine who works at the local sperm bank made a donation, so this is all 100% pure, right from the source. I couldn't stand the thought of you getting thirsty during this therapy session.@@"<br>
<br>
She moves the machine closer to your face and threads the tip of the penis through your ring gag.
<<if $player.swalloeddowncum || $player.swallowedothercum>>
<<if setup.getTotalValue('cum')>3>>
On instinct your tongue automatically seeks the tip of the dildo, only to confirm what you've expected. Your eyes flit towards the container hanging above. That's a lot of <<getWordCum $player>>. You enjoy this a lot, since it is thick and gooey and there is already quite a lot of it dripping out of the dildo since every time you lick it away from the artificial urethral orifice a little bit more trickles out. You quite enjoy licking it up, each drop moistening your tongue and throat and filling your mouth with its yummy flavour. You love how it feels moving around in your mouth and enjoy the rich taste it leaves there.
<<else>>
Even though you don't want to, your tongue seeks the tip of the dildo, only to confirm, what you've expected. that's a lot of <<getWordCum $player>>. You enjoy this a lot more then you should, since it is thick and gooey and theres quite a lot of it dripping out of the since every time you lick it away from the artificial urethral orifice, a little bit more trickles out. Despite that voice in the back of your head you find yourself continuing to lick, each drop moistening your tongue and throat and filling your mouth with its flavour. You are surprised at the rich taste, the interesting way it feels moving around in your mouth.
<</if>>
<<else>>
<<getWordGod $player>>, she cannot be serious. Is that really <<getWordCum $player>>? You try not to bring your tongue in contact with the dildo, but there is not really a lot of space to work with, so you get some good taste of it. It is thick and gooey and there's quite a lot of it dripping out of the since every time you lick it away from the artificial urethral orifice a little bit more trickles out. Despite yourself you find yourself appreciating the way it tastes, quenching your thirst and sloshing interestingly around your mouth.
<</if>>
<br><br>
"@@.npc_psychiatrist;Now, this is the part where I would explain how to stop a session if you're uncomfortable with its content. Shall we skip that part? You're looking pretty happy to me, and it's not like you're physically able to hit the emergency stop anyway. Okay, good! Well, then, have fun my sweet little bimbo!@@"<br>
<br>
With that final note of encouragement whispered into your ear she slides the VR Goggles and the stereo headset over your head, cutting you off from the real world yet again. You can feel the humming of the hydraulics in the fucking machine springing to life, making the dildo force its way through your throat. It isn't deep enough to make you gag, but definitely enough to simulate the feeling to go down on the real deal. In and out, over and over again. It is fucking your mouth. The dildo seems to be made of something different then latex, it feels way too real. Maybe one of those new synthetic skin material for augmentation, or 2nd gen cyberskin. It's so realistic, you can feel the warmth emanating from it, and the veins pulsing, making it twitch a little bit, before it unloads the first wave of <<getWordCum $player>> into your mouth.
<<if setup.getTotalValue('cum')>3>>
Even if your head wasn't bound, the dildo still threaded through your gag, you would not act differently, eagerly gulping down the thick load like the cumslut you are.
<<else>>
Head fixed in position and the dildo remaining threaded through your gag your only choices are swallow or drown. You swallow.
<</if>>
You can feel the electrics shocks starting, they seem to be stronger than the last time. Your nipples and <<getWordMyPenis $player>> are like on fire, but that's nothing compared to the thunder-hammer that's tearing up your ass right now. The electric discharge makes your sphincter twitch, which makes the plug move up and down like a jackhammer, stimulating your prostate like there's no tomorrow. And as all these stimuli get better, stronger, faster and harder, the headset finally comes alive, bombarding you with random images. You're having trouble making out what's going on at the beginning but as the simulation and stimulation continues the images and sounds start to get clearer, burned into your subconscious forever...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_5' 'Continue...' 240>>]
</div>/*#
#desc: third hypnosis session brainwashing, faggot cocksucker
#status: FINISHED 0.4.0.0
#*/
<<if $fetish.slurs>>
<<set $player.cutscene.reason = "I am a faggot. I love to suck cock!">>
<<else>>
<<set $player.cutscene.reason = "I am a sissy cumslut. I love to suck cock!">>
<</if>>
<<if $roomchange == true>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-20)>>
<<set $sceneVisibility = $EXPOSED>>
<<if(setup.getTotalValue('oral')==0)>>
<<setThreshold 'oral' 'hypnosis_oral' 'session_3' true>>
<<else>>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<</if>>
<<if(setup.getTotalValue('cum')==0)>>
<<setThreshold 'cum' 'pre_hypnosis_cum' 'session_3' true>>
<<else>>
<<applyExperience 'cum' 12 'very' $EXPOSED>>
<</if>>
<<applyExperience 'penis' 18 'little' $EXPOSED>>
<<applyExperience 'bimbofication' 16 'little' $EXPOSED>>
<</if>>
<<include enterroom_hypnosis>>
<<initRoom>>
<<set $player.location to "I... I am...">>
<<if $fetish.slurs>>
<<createAnimatedBGR "./video/hypnosis_02.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Have you ever thought about ... sucking a cock?</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.2s;">Yes. You have.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Does this thought of putting on makeup make you excited?</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.6s;">Yes it does. Do you know what that means?</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">That means you are a <<if $fetish.slurs>>faggot<<else>>sissy<</if>>!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.0s;">Come on, say I am a <<if $fetish.slurs>>faggot<<else>>sissy<</if>>. I am a <<if $fetish.slurs>>faggot<<else>>sissy<</if>>.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">I am a <<if $fetish.slurs>>faggot<<else>>sissy<</if>>. I am a <<if $fetish.slurs>>faggot<<else>>sissy<</if>>!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.4s;">Tell me, that you're a <<if $fetish.slurs>>fag<<else>>sissy<</if>>!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">Tell me, that you are a <<if $fetish.slurs>>fag<<else>>sissy<</if>>!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.8s;">Say, I am a <<if $fetish.slurs>>fag<<else>>sissy<</if>>... and I like to suck cock!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">I am a <<if $fetish.slurs>>fag<<else>>sissy<</if>>... and I like to suck cock!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.2s;">Say, I am a <<if $fetish.slurs>>faggot<<else>>sissy cumslut<</if>> and I love to suck cock!</span><br>
</span>
<span class="makeVisible" style="webkit-animation-delay: 2.4s;">
<span class="shining" style="-webkit-animation-delay: 2.4s;">I love to suck cock!</span><br>
</span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "What is happening to me?">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "I am a <<if $fetish.slurs>>faggot<<else>>sissy<</if>>!" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "I am a <<if $fetish.slurs>>faggot<<else>>sissy<</if>>, and I like to suck cock!" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Yay! I love to suck cock!" 40>></span>
<br>
<br>
<span id="hypnosis_3_6_continue" style="visibility: hidden;">
[<<moveTo 'event_psychiatrist_hypnosis_3_6' 'I am a <<if $fetish.slurs>>faggot<<else>>sissy cumslut<</if>>, and I love to suck cock!' 2500>>]
</span>
<<makeVisible 'hypnosis_3_6_continue' 15>><br>
<br>
<<if $fetish.slurs>>
<a target="_blank" href="http://emperor-hypnos.tumblr.com/">(EXT/NSFW) Special Thanks to EmperorHypnosis</a>
<</if>>
</div>/*#
#desc: third hypnosis session hallucination - self as sexdoll, wakeup to psychiatrist comforting you
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _tmpStr = "... "+$player.first_name+" ... Th ... That is m ...">>
<<set $h2_cameinsuit = false>>
<<if $roomchange>>
<<if setup.canPlayerCum($player,setup.getTotalValue('cum')+setup.getTotalValue('penis'))>>
<<set $h2_cameinsuit = true>>
<<set _tmpItem = setup.getItemFromType('outfit')>>
<<changeItemStatus _tmpItem 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<<set $player.location to "Changing Room">>
<<if setup.getIndecentValue($player)==100>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_3_7'>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<glitchText _tmpStr>>You think you can hear someone saying your name really far away, the word somehow echoing through this empty, dark void. You're floating, but you cannot feel your body at all, it's more like you're a spectator, a disembodied being of thought. With the voice seeming to come from all directions and everything else featureless you can't really tell where to go, instead floating aimlessly through the darkness until you spot a pinprick of light, far, far in the distance. Even beyond being the only thing of interest in the void you are drawn towards the thin shaft of light, like a moth to the flame.<br>
<br>
Moving closer you realise that there is something in the middle of the light, the silhouette sharpening until you recognise it as a person. The closer you get the more details you can make out. It ... she ... it seems to be a woman, floats in an upright position. But something seems off. Her proportions are way off. Her breasts are enormous, twin giant melons hanging from her petite frame, at least G or H, you would say. Her waist, on the other hand, is very thin, a perfect hourglass connection from her oversized chest down to her hips, lush and prolific. Flowing from her head her hair is platinum blond, and her big, voluptuous lips are red and glistening. Her skin is clean, like way too clean. It looks more artificial then natural, utterly even and perfect, like a model with too much photoshop.<br>
<br>
The more you look at her the more she reminds you of a life-sized sex doll, not a human being. As you fly past you catch a glimpse from a slightly different angle and discover that your feeling that something was odd crystallises. A penis, even if its a rather small one, barely protrudes from between her legs. Moving even closer now you take a good long look at her face. Her eyes are open, and yet empty, and as you get closer and closer all you can see is your own reflection cast back from her blank expression, staring off into nothingness. What startles you is the fact that as your reflection comes into focus... it looks like her. It takes you a while, but then you realise you are not looking into empty eyes, but at your own reflection in a mirror floating before you.<br>
<br>
<<printThoughtGlitch $player "... <<=$player.first_name>> ... I .. I am..">><br>
<br>
Suddenly there is a flash of light and you can see <<=setup.getNpcName('npc_psychiatrist', 'first')>> pulling one of your eyes open with one hand while shining a flashlight down. You snap back to reality. There was something. A woman, or was she even a woman? You can remember her in bits and pieces, like a dream you've just woken up from, exaggerate caricature of femininity... you re... re... <<glitchText "remember">><br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, are you okay? It took way longer to get you out of the trance this time.@@"<br>
<br>
She looks at you with a hint of sadness on her face. her pretty face the only thing even remotely in focus, you feel the desire to cheer her up and flash a smile causing her face to instantly light up.<br>
<br>
<<printThought $player "Hmmm... my mouth tastes funny. And my butt hurts. Otherwise I feel all right, good even.">><br>
<br>
Your eyes starting to adjust to light you open them completely and become aware that you're lying on something like a massage bench. Your head rests on something rather ... wait a second. Your head is resting on <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> lap! You sit up fast, unable to look at her, an embarrassed smile on your lips.<br>
<br>
"@@.npc_psychiatrist;So, besides the unusual long time for you to get out of trance, our second session seems to be a complete success! How do you feel?@@"<br>
<br>
You feel ... good. Like the weight of the world is slowly taken from your shoulders. Like there might be a future, where you don't have to worry so much. You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> that you feel great, but again, though you momentarily seemed to remember some details of the hypnosis, they seem to have slipped your mind now that you're fully awake.<br>
<br>
"@@.npc_psychiatrist;That's intended. Like I've told you before, it's supposed to stay in your subconscious, to change you on a fundamental level without interfering with your normal life ... in ways you don't like. Maybe when I have time one day I can show you the VR Rig without a Hypnosis Program running on it, have you run through a program without any additional distractions, let you test it for its ... fun value, okay?@@"<br>
<br>
You appreciate and accept the proposal. Still, it irks you that you can't remember anything at all. You concentrate rigorously and try to remember... <<glitchText "rem.. member... ">><br>
<br>
<<printThought $player "I love to suck cock!" 40>><br>
<br>
<<glitchText "... cock ...">>For some reason you really feel thirsty right now. Something to wet your tongue would be really nice. Maybe something creamy. That would hit the spot. It's not like thinking too hard about anything could solve this problem right now, thinking could make you <<glitchText "smarter">>, now that's not really a trait a bimbo like yourself would need, ain't that right my little ditz?<br>
<br>
"@@.npc_psychiatrist;Now that you're back with us how about we get you out of this plug suit?@@"
</div>/*#
#desc: remove plugsuit after third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Changing Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Please put the plug suit back into its case while I check on these amazing results. Hmm... yes... this might change everything...@@"<br>
<br>
She leaves you alone in the changing room, staring intently at her tablet as she walks back to her office.
<<if $h2_cameinsuit>>
Just now you become aware that you creamed that suit like really good. You clean it as best you can with the materials found in the fitting room and put the suit back into the case.<br>
<<else>>
You clean the suit as best you can of sweat with the materials found in the fitting room and put the suit back into the case.<br>
<</if>>
<br>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Changing room">><<set $return_makeuproom="event_psychiatrist_hypnosis_3_7">><<set $makeuproom_image="./images/scenes/makeup_01.png">><<set $return_makeuproomtext="Return to the Changing room.">><<set $makeuproom_water=true>>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency($player)>>
<<if $player.flags.fem_style.makeup == "" && setup.getCurrentMakeup($player) != "" && setup.getCurrentMakeup($player) != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should take this off.@@]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_3_8' 'Leave the Changing Room' 180>>]
<</if>>
<<elseif setup.checkPlayerDressed($player)>>
<br>
Still a bit fuzzy from the "treatment" you glance at your reflection something seems off an inappropriate but you just shrug.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_8' 'Leave the Changing Room' 180>>]
<<else>>
[@@.link_locked;I really need to dress more appropriate to leave@@]
<</if>>
</div>/*#
#desc: paid + leave after third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<if $roomchange == true>>
<<deleteItem $player $now 'plug_suit_red'>>
<<set $npc_psychiatrist.free_sessions += 1>>
<<set $player.money.total+=40>>
<<include addHypnosisTask>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You leave the plug suit in its case in the changing room, walking through the door and making the turn back into the office. <<=setup.getNpcName('npc_psychiatrist', 'first')>> doesn't notice you at first, hovering over her workstation, muttering while she analyses the data.<br>
<br>
"@@.npc_psychiatrist;... No ... These levels are way too high... There has to be a... Hmm... what's this... this should not be there. What are you? That would explain that strange reaction at the end of the session. Has someone tampered with the... Oh. Hey. You're done already? Anyway, thanks for your help tonight. Here you go.@@"<br>
<br>
She puts an credstick onto the table for you.<br>
<br>
"@@.npc_psychiatrist;40 Credits, as agreed upon. And another free session with yours truly. Are you as excited for the next session as I am? That would be next
<<switch _day>>
<<case 0>>
Wednesday,
<<case 3>>
Sunday,
<</switch>>
at 19 o'clock. As usual, show up if you're feeling up to it. I'm not going to detain you any longer, so have a nice evening.@@"<br>
<br>
You understand the cue and bid her farewell.<br>
<br>
[<<moveTo 'room_psychiatrist_lobby' 'Leave the office.' 60 '<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: setup scene variables and pass through to hypnosis 4_1
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now. Maybe later...">>
<<set $npc_psychiatrist.flags.foundplug = true>>
<<set $npc_psychiatrist.hypnosis = 4>>
<<set $hypnoSession = {}>>
<<set $hypnoSession.plugsuit = false>>
<<set $hypnoSession.theme = "">>
<<useClothSetPush 'hypnosis3'>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_4_1'>>/*#
#desc: show up for fourth (repeatable) hypnosis session, shown VR helmet
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<addItem 'plug_suit_red'>>
<<setScene>>
<<set $scene.spendWillpower = false>>
<<set $scene.spendFatigue = false>>
<<set $scene.changedMaxWillpower = false>>
<<set $scene.gainedWillpower = false>>
<<set $scene.threshold_triggered = false>>
<<set $scene.valueChanged = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
Once again you've decided to attend a VR supported hypnosis session, even though you have no idea what it's doing to you.
<<if setup.getWillpower($player)>0 && setup.getTotalValue('smart')>7>>
Somewhere back in your mind, where a spark of resistance exists, thoughts are formed, connecting the hypnosis session to some of your strange behaviour lately.
<<else>>
You try to focus on what's wrong with you, but every time you think you've got something, you end up with a blank thought, like a slate wiped clean.
<</if>>
<br><br>
As you enter the office, your concerns are scattered by the radiant smile of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. As usual she is working on her computer. She glances up with a wide grin on her face; whether prompted by you or the data she's analyzing you are unsure.<br>
<br>
<<if $npc_psychiatrist.hypnosis==4>>
"@@.npc_psychiatrist;Ah!@@", she smiles "@@.npc_psychiatrist;You're finally here <<=$player.first_name>>.@@"<br>
<br>
<<printThought $player "Well, this is certainly different then the last time.">><br>
<br>
"@@.npc_psychiatrist;I've got fantastic news. Here, take a look at this@@"<br>
<br>
<image src="./images/others/vr_gear.png"></image>
<br>
She shows you a futuristic looking kind of headgear. The letters "SISSY" are boldly engraved on the side.<br>
<br>
<<printThought $player "Oh, you've got to be fucking kidding me... Wait a second.">><br>
<br>
It takes you a moment to recognise the logo of the company you work for. You were unaware that Social Interaction Service Syndicate Inc. was developing things like this.
<<if $npc_manager.flags.talkedsissypill>>
Then again, you were unaware that they developed pills for body modification as well; you don't really know much about what the company ACTUALLY does, come to think of it.
<</if>>
<br><br>
"@@.npc_psychiatrist;This is called the "IROI-1", which stand for Inherent Reality Override Interface or something like that. I know it looks pretty spiffy but it's technically a prototype, it should be the next big step in home entertainment once its released. Unlike conventional VR goggles, this nifty piece of hardware has been equipped with an Indirect Brain Interface. this allows it to stimulate ALL of your senses without, as the name suggests, actually needing a direct connection to your brain as more traditional "hard-wired" like they use in the military do. And look at the size of this thing. It is tiny compared to those enormous full sensory tanks <<=$player.flags.faultcompany>> developed!@@"<br>
<br>
Her enthusiasm is infectious, and you find yourself feeling quite excited for the new technology.<br>
<br>
"@@.npc_psychiatrist;Gone are the days of faulty, imprecise VR Controllers, now your mind is the controller and you can feel if you touch something. These levels of immersion will be so much more intense then anything we had until now. Oh I'm just so excited, I think I'll cream my panties! Oh, I am sorry, that was inappropriate on a professional level.@@"<br>
<br>
You say you don't mind at all.
<<if $npc_psychiatrist.flags.blowjob>0>>
Outbursts like these are nothing between the two of you. After all, you had her <<getWordLadyPenis $player>> in your mouth for quite a while, until she filled the same up with her hot <<getWordCum $player>>. Its little things like that which rises levels of intimacy quite a lot.
<<elseif $npc_psychiatrist.flags.handjob>0>>
Outbursts like these are nothing between the two of you. After all, you already jerked her of some time ago. Its little things like that which rises levels of intimacy quite a lot.
<</if>>
Besides, you're pretty excited about such a nifty piece of hardware as well.<br>
<br>
"@@.npc_psychiatrist;Well then,@@" beams <<=setup.getNpcName('npc_psychiatrist', 'first')>>, while putting the familiar box containing the plug suit in your hand "@@.npc_psychiatrist;what are you waiting for. As soon as you're dressed, we have to adjust the system to your brain. Since everyones brain is mapped differently, we have to adjust the unit to yours as well. Fortunately we have a great baseline from your earlier sessions, and I've already already tested the new interface... thoroughly.@@"<br>
<br>
Her cheeks start to glow in a bright red tone during these last few words for some reason. You wonder what her "test" involved.
<<else>>
"@@.npc_psychiatrist;Oh!@@", she smiled "@@.npc_psychiatrist;You're already here <<=$player.first_name>>! Very good. Well, let's get you changed and plug you into the system.@@"
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_2' 'Enter the Changing Room.' 120 '<<set $scene.plug = setup.getItemFromType("plug")>>'>>]
</div>/*#
#desc: change into plugsuit for fourth hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<if setup.getIndecentValue($player)==100>>
<<if setup.getItemFromType("plug") == "">>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_3_3'>>
<</if>>
<</if>>
<<if $roomchange == true>>
<<removeEverything $player $now>>
<<wearItem $player $now "plug_suit_red" true>>
<<addItem 'vr_helmet'>>
<<wearItem $player $now "vr_helmet" true>>
<</if>>
<<set $player.location to "Changing Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;<<=$player.first_name>>, would you kindly strip naked? Completely naked. That means anything in your cute bum, if you happen to have anything occupying your tush at the moment. I'm sure you recall that we have to rub this lotion onto your skin, to increase connectivity to the suit, not to mention how much easier it makes putting the suit on.@@"<br>
<br>
You vaguely remember something like this from your last treatment session. The plug suit was important for biofeedback and to increase your immersion in the simulation. You think... <<glitchText " thi.. t...">>.
<<if ($npc_psychiatrist.flags.session[0].feminization&&$npc_psychiatrist.flags.session[1].feminization)||($npc_psychiatrist.flags.session[0].sissyfication&&$npc_psychiatrist.flags.session[1].sissyfication)||($npc_psychiatrist.flags.session[0].bimbofication&&$npc_psychiatrist.flags.session[1].bimbofication)>>
<<glitchText "Free will overruled due to conflict #0251">>.
<</if>>
You decide it's best to follow her instructions like you're supposed to be and take off your clothes. After you get lubricated with the lotion you put on the plugsuit.<br>
<br>
"@@.npc_psychiatrist;Very good <<=$player.first_name>>. Now if you would kindly follow me into the VR Laboratory.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_4' 'Follow her into the VR Laboratory.' 120>>]
</div>/*#
#desc: choose topic for fourth/repeatable hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/vr01.mp4">>
<div id="invframe" class="scrolltext">
You enter the dimly lit VR chamber. Stepping in the room seems to unlock some of your memories as you recall the re-purposed VR Chair from Style Fetish Industries. Still, a strange choice, you think <<glitchText " thi.. t... Assuming Position now.">>. The sight of this device triggers something inside you and you get onto it without being asked, putting your arms through the metallic sleeves and your fingers on the resting pans.<br>
<br>
"@@.npc_psychiatrist;Well, well. Someone seems to be very eager to start with the session. Such a lust for science! I am quite inclined to grant this wish.@@" she approved, while locking you into place.
<<if $npc_psychiatrist.hypnosis==4>>
Then she puts the new VR Goggles, the IROI-1, over on your head covering your eyes and ears.<br>
<br>
"@@.npc_psychiatrist;Even though the device can stimulate your brain directly to create stimulations not really there like touch and warmth, it is still kind of hazy, like in a dream. BUT! if we combine with additional stimulation from the chair and your suit the immersion levels are much higher; sometimes even making it feel more real than real. That's why we still need the chair for the best possible results. Now please give me a moment to connect everything up, then we can create a new profile for your brain patterns.@@"<br>
<br>
<<=$npc_psychiatrist.first_name>> works swiftly to hook everything up, your vision going dark for a moment before everything seems to contract slightly in activation.<br>
<br>
You are dropped into an rather retro looking 3d environment. At least at first it's retro. With each passing moment the picture gets clearer and you start to gain feeling over "your" body within the simulation. A sort of tutorial starts up, simulation giving you simple tasks like walk there, kneel, jump, touch this, and so on. With every task the simulation feels more real, until you're controlling your body just like you would in real life and your low poly looking avatar is replaced with a realistic simulacrum of it.<br>
<br>
"@@.npc_psychiatrist;Fun fact: When I look at the raw simulation data you still look like a half life character. The system actually uses your own imagination to render the graphics. In a way your own brain is now part of the GPU. In many ways it's like a lucid dream, but you can only control yourself while the system controls the environment. Who ever came up with that idea is either mad or a genius. Maybe both. Most likely both. Okay, looks like the system finished mapping your brain. Hmm... That went surprisingly fast, you just continue to be the perfect guine- study subject.. Okay, let me load the test environment. Here's the kicker; this is an active participation simulation, yet another way it's more powerful and effective than what you've done before. There will be items or maybe even people for you to interact with. Depending on what you interact with different hypnosis routines will be triggered, stimulating and enhancing different parts of your personality. I know it sounds confusing but just think of it like a game, a game where you get to level up your own mind! You'll get the hang of it soon enough.@@"<br>
<br>
With these words you are suddenly lifted up by an enormous mouse cursor and dragged out of the test environment. The sensation of being carried like this is quite strange, you feel quite helpless. It doesn't last long, however before you are dropped into a simple simulation of a house. You look around. If <<=setup.getNpcName("npc_psychiatrist", "first")>> made this herself she really has to up her 3d skills. Textbook case of developer graphics.<br>
<br>
<<printThought $player "Did I just experience Drag and Drop firsthand?">><br>
<br>
<<else>>
As the system starts you're back in a crudely rendered desert. After a few moments you establish the neural link and the graphics start to get realistic again. And as usual a giant mouse cursor appears out of thin air, carrying you helplessly off to place you into the strange house once again.
<</if>>
You see a door that leads to what you think might be the restroom. There are several random items lying about the room. There's a rather old school looking joystick connected to an retro TV set. A pair of high heels sits next to another door leading out of the room. A bottle containing a whitish fluid stands labeled "Drink me" is on the coffee table next to you. You can see a black rope hanging on a hook at the wall. Next to the rope is what looks like a dog collar and leash. There are some other items in here as well, but they seem kind of blurry to you. Even trying to interact with them has your hand passing through without any sensation.<br>
<br>
<<if setup.getTotalValue('penis')>0>>
[<<moveTo "event_psychiatrist_hypnosis_4_penis" "Touch the joystick.">>]<br>
<</if>>
<<if setup.getTotalValue('cum')>0>>
[<<moveTo "event_psychiatrist_hypnosis_4_cum" "Drink from the bottle.">>]<br>
<</if>>
<<if setup.getTotalValue('foot')>0>>
[<<moveTo "event_psychiatrist_hypnosis_4_foot" "Examine the heels.">>]<br>
<</if>>
<<if setup.getTotalValue('bondage')>0>>
[<<moveTo "event_psychiatrist_hypnosis_4_bondage" "Take the rope from the wall.">>]<br>
<</if>>
<<if setup.getTotalValue('bdsm')>0>>
[<<moveTo "event_psychiatrist_hypnosis_4_bdsm" "Pick up the collar and leash.">>]<br>
<</if>>
<<if $fetish.piss && setup.getTotalValue('piss')>0>>
[<<moveTo "event_psychiatrist_hypnosis_4_piss" "Enter the restroom">>]<br>
<</if>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism start (play with joystick)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "a Playroom?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/game_01.mp4">>
<div id="invframe" class="scrolltext">
You kneel on the floor and take the joystick in your hand. As soon as you wrap your hand around it a TV comes into focus and turns itself on. It seems to be some kind of video game, but like really old school, like late 80's from the last millennium. It starts innocent enough, just a simple collection of small arcade games like the Wario Ware games. Even though you consider yourself a gamer it takes you a while to get used to the joystick, since you're used to gamepads or motion controls. Still, after a short initial adjustment period working on the joystick becomes like second nature to you. You get pretty good at the game, but the longer you play, the stranger the whole game gets.<br>
<br>
At first the sexual content is subtle, like the developers were seeing what they could sneak past the censors; a penis hidden in the background, things like that. But after a while its becomes more and more blatant until the game wants you to thrust the joystick up and down. At first you think, that's impossible, but as you look down on your joystick, it has transformed into a full fledged <<getWordPenis $player>>. Not a dildo, but a real <<getWordPenis $player>>, precum oozing from its tip as your hand moves up and down on it.<br>
<br>
<<if setup.getTotalValue('penis')<5>>
<<printThought $player "I am not going to ride this <<getWordPenis $player>>, am I? Oh, it's pulsating in my hands...">><br>
<<else>>
<<printThought $player "It's time for plug and play!">><br>
<</if>>
<br>
It's as if you've unlocked a "new" level and now the game demands even more commitment from you. You should kiss it, caress it, stroke it. Take it in your mouth like its the most important thing in your life. And then you come to the "bonus score stage" where the game tells you to raise your butt and thrust down unto it, finally becoming one with your stick of joy.<br>
<br>
<<HypnosisSession4Options $player 'penis'>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism accept enthusiastically suck and self-fuck
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'penis'>>
<<HypnosisSession4Accept $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Playroom!">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/game_01.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">One, two, three, four, I'll suck your cock and beg for more!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Five, six, seven, eight, licking cock is really great!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Eight, seven, sex, five, sucking cock just makes me thrive.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">Four, three, two, one, fuck my ass it's really fun!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">One, three, five, nine, need a hole? Please use mine!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">Two, four, six, eight, my lust for cock I'll never sate!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.4s;">One, three, six, nine, both holes filled is really fine!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.8s;">One, two, three, four, I'm nothing but a Sissy WHORE!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 3.2s;">Five, six, seven, eight, fuck me now, don't make we wait!</span>
</span>
<br><br>
<span id="mid_visible" style="visibility: hidden;">
You lower your head down until your lips are only a few millimetres away from the <<getWordPenis $player>> while still holding it firm. Knowing exactly what to do, a feeling overcomes you, that you're not doing this for your own pleasure. It was never about your pleasure. Doing this, to provide the best possible delight to this throbbing <<getWordPenis $player>> is what it has all been about. Just like instructed, a kiss. Precum moisten your lips. Oh. You've unlocked the cockwhore bonus. Very Nice. Your tongue is licking up and down the meaty shaft in the rhythm provided by the game until its finally time to use your mouth as the fuckhole its supposed to be. Even though you choke a little at the beginning, you manage to keep up the pace of the game while you suck on this beautiful <<getWordPenis $player>>. Getting better with each and every iteration, building your cocksucker bonus and then triggering the face-fuck multiplier. Finally, after pushing yourselves to new levels of oral pleasuring, the game indicates that it is time for the grand finale. You get up and place your butt over the <<getWordPenis $player>>, parting your asscheeks. You can feel the tip probing your sphincter and with a final thrust...<br>
<br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "Wh... What am I doing?">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "Is that all I exist for?" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "To pleasure <<getWordPenis $player>>?" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Oh... look at this beautiful <<getWordPenis $player>>! It deserves to be idolized!" 40>></span>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spentWillpower>>
You let out an imaginarily held breath, the stress of pushing yourself to this new height fading away.
<<if $scene.changedMaxWillpower>>
It took an act of will but you did it, though it was mentally tiring you feel that pushing yourself to achieve your goal as served to bolster your overall mental state.
<<else>>
Though you have pushed yourself to such limits before it replenishes your mental reserves to know that you are still capable of striving to meet your destiny.
<</if>>
<<elseif $scene.spendFatigue>>
Though it is tiring to push yourself so hard you feel your mental reserves replenished by your accomplishment.<br>
<br>
<</if>>
<<if $scene.threshold_triggered>>
You feel like you might have been a bit aggressive to so enthusiastically embracing the simulation. You have definitely learned a lot, and you wonder if you could even go back to "before"... if you would even want to?
<<else>>
It is hard to believe that what you just enjoyed would have once horrified you. How far you have come... but you have come too far to hesitate, you need to find other activities in the real world, discover more about yourself as you race further down this wonderful road of depravity.<br>
<br>
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism decline, fuck and suck
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'penis'>>
<<HypnosisSession4Decline $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Playroom?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/game_01.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">One, two, three, four, I'll suck your cock and beg for more!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Five, six, seven, eight, licking cock is really great!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Eight, seven, sex, five, sucking cock just makes me thrive.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">Four, three, two, one, fuck my ass it's really fun!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">One, three, five, nine, need a hole? Please use mine!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">Two, four, six, eight, my lust for cock I'll never sate!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.4s;">One, three, six, nine, both holes filled is really fine!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.8s;">One, two, three, four, I'm nothing but a Sissy WHORE!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 3.2s;">Five, six, seven, eight, fuck me now, don't make we wait!</span><br>
</span>
<br>
<span id="mid_visible" style="visibility: hidden;">
You refuse to play the games... game. You follow the instruction to a certain point, but do things your way, to have fun. You lower your head down until your lips are only a few millimetres away from the <<getWordPenis $player>> while still holding it firm with your hand. You know exactly what you have to do. Theres no point in doing something like this if it's not possible for both participants to have fun. And you have to admit, the thought of providing the best possible delight to this throbbing <<getWordPenis $player>> makes you pretty horny. With that thought you plant a kiss onto the <<getWordPenis $player>>. You feel the precum moisten your lips. Oh, the cockwhore bonus has been unlocked. Nice. Your tongue licks up and down the shaft in the rhythm provided by the game until its finally time to use that mouth of yours. You have trouble at first keeping up the pace of the game while sucking on this beautiful <<getWordPenis $player>>, but you get better with every iteration, building your cocksucker bonus and then triggering the face-fuck multiplier. After that the game becomes irrelevant. It's your pace that counts. after a while of pleasuring it you get up and place your butt over the <<getWordPenis $player>>, parting your asscheeks. You can feel the tip probing your sphincter. Your spit and the precum acting as lubricant. And with a final thrust...<br>
<br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "I refuse to play by the rules!">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "I am not some sex toy for others to enjoy!" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "I want to have fun myself doing this!" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Oh... look at this beautiful <<getWordPenis $player>>! I just want to wrap my lips around it!" 40>></span>
<br><br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.
<</if>>
<br><br>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("penis") >= 10>>
It is odd to think that something this sexual could be considered "holding back" but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, but you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("penis") >= 7>>
As fun as the simulation is you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism reject, glitch out and abort
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<HypnosisSession4Reject $player $scene 'penis'>>
<<set $hypnoSession.theme = 'reject'>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF > One, two, three, four, I'll suck your cock and beg for more!">><br>
<<glitchText "#_REINF > Five, six, seven, eight, licking cock is really great!">><br>
<<glitchText "#_REINF > Eight, seven, sex, five, sucking cock just makes me thrive.">><br>
<<glitchText "#_REINF > Four, three, two, one, fuck my ass it's really fun!">><br>
<<glitchText "#_REINF > One, three, five, nine, need a hole? Please use mine!">><br>
<<glitchText "#_REINF > Two, four, six, eight, my lust for cock I'll never sate!">><br>
<<glitchText "#_REINF > One, three, six, nine, both holes filled is really fine!">><br>
<<glitchText "#_REINF > One, two, three, four, I'm nothing but a Sissy WHORE!">><br>
<<glitchText "#_REINF > Five, six, seven, eight, fuck me now, don't make we wait!">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("penis") >= 5>>
As your mind adjusts to the jarring break in the simulation you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</div>/*#
#desc: hypnosis session 4 - piss fetishism intro, work as human toilet
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "a Restroom?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/piss_pov_01.mp4">>
<div id="invframe" class="scrolltext">
As you enter the restroom your vision starts to blur, your conscious mind getting foggy as you fall into a state of trance. Your mind gets filled with sounds and images while your body gets stimulated by the suit. At first you feel like you're standing in a warm spring rain, but for some reason the water has a rather strange... flavour, for lack of a better word. You are unable to move due some unseen restraints. As you open your eyes you realise that you're wearing a white see through bodysuit, and from the tight feeling over your face you suppose you wear a similar mask as well.<br>
<br>
Looking down there appears to be a logo on your chest. It is hard to make out from your point of few, but it looks kind of like the symbol for an unisex toilet. Looking around you realise you are kneeling, your legs bolted to the floor while your arms are restrained behind your back. The room you're inside is white tile, like a restroom though there are no toilets to be seen. From all the information you've gathered there seems only one conclusion to draw - you are the urinal. A thought which should cause you a lot more distress then you're currently showing for some unknown reason. Your assumption becomes reality as a well dressed gentleman enters the restroom and unzips his fly to unpack his <<getWordPenis $player>>. Without a word he drives his soft cock into your open mouth.<br>
<br>
<<if setup.getTotalValue('piss')<5>>
<<printThought $player "He is going to use me like a toilet. Is that, what I am? Just a toilet to be used by others?">><br>
<<else>>
<<printThought $player "Let me swallow his tasty <<getWordPiss $player>>, like the toilet slave I am supposed to be!">><br>
<</if>>
<br>
A torrent of piss fills your mouth to the brim until the <<getWordPiss $player>> trickles out the sides of your mouth as you sputter and cough. It seems that if you do not want to drown in <<getWordPiss $player>> you will have to swallow. Peeking past your first client your eyes go wide as you realise a long line has started to form. Persons both male and female have queued up behind the gentleman, who is still filling your mouth. Your mouth near full to the brim as you have not swallowed anything yet you can taste the bitter <<getWordPiss $player>> on your tongue.
<br><br>
<<HypnosisSession4Options $player 'piss'>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism accept, eagerly guzzle urine and embrace binge a human urinal
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'piss'>>
<<HypnosisSession4Accept $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Restroom!">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/piss_pov_01.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Speak this truth out loud.</span>
</span>
<br>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">I am not a Person. I am a Toilet.</span>
</span>
<br>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Yes. I am not a Person. I am a Toilet.</span>
</span>
<br>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">Repeat this mantra after me.</span>
</span>
<br>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">I have no desires but to be a Toilet Slave.</span>
</span>
<br><br>
<span id="mid_visible" style="visibility: hidden;">
You try your best to gulp it down like you're supposed to, but the endless torrent of piss raining down on you turns out to be more than you can handle.
<<if setup.getTotalValue('piss')<5>>
You're still repulsed by the taste and shudder with every ounce that flows down your throat, thinking about the humiliation you're currently enduring. You are being used as a toilet, theres no other way to put it. And still... with every new client coming up, using you, it becomes easier, more natural, your acceptance of the whole situation rises.
<<elseif setup.getTotalValue('piss')<10>>
It's still bitter, but you got used to the taste. You know, this is what you're supposed to do. This humiliation is your purpose. Some of the clients even allow you to lick their <<getWordPenis $player>> or pussy clean after a job well done, and you think... you think you start to enjoy your new position in life.
<<else>>
And you hate it. Every ounce of yummie <<getWordPiss $player>> trickling out of your mouth is a wasted drop. You're supposed to drink it all like the good, obedient little toilet slave you are. After all, you're not a person. You are a toilet. For your Master... your Mistress... whoever wants to use your dirty little mouth is permitted to do as they like.
<</if>>
Your uniform gets splattered by everything that gets spilled or dribbles past your chin. Towards the end some people simply piss at you... the warmth of it makes it feel like a warm spring rain splattering against your artificial second skin. You have lost count of how many persons used you. Your mind becomes calmer with each "client" served and after awhile you are unable to form any thoughts besides thoughts a toilet would have, if a toilet could think, that is.<br>
<br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "No! I am a person!">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "I... I am a person?" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "But why do they use me like a toilet?" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "I am not a Person. I am a Toilet. Please bless me with your golden showers!" 40>></span>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spentWillpower>>
You let out an imaginarily held breath, the stress of pushing yourself to this new height fading away.
<<if $scene.changedMaxWillpower>>
It took an act of will but you did it, though it was mentally tiring you feel that pushing yourself to achieve your goal as served to bolster your overall mental state.
<<else>>
Though you have pushed yourself to such limits before it replenishes your mental reserves to know that you are still capable of striving to meet your destiny.
<</if>>
<br><br>
<<elseif $scene.spendFatigue>>
Though it is tiring to push yourself so hard you feel your mental reserves replenished by your accomplishment.<br><br>
<</if>>
<<if $scene.threshold_triggered>>
You feel like you might have been a bit aggressive to so enthusiastically embracing the simulation. You have definitely learned a lot, and you wonder if you could even go back to "before"... if you would even want to?
<<else>>
It is hard to believe that what you just enjoyed would have once horrified you. How far you have come... but you have come too far to hesitate, you need to find other activities in the real world, discover more about yourself as you race further down this wonderful road of depravity.
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - piss fetishism decline, try not to drink, but give in
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'piss'>>
<<HypnosisSession4Decline $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Restroom?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/piss_pov_01.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Say this truth out loud.</span>
</span>
<br>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">I am not a Person. I am a Toilet.</span>
</span>
<br>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Yes. I am not a Person. I am a Toilet.</span>
</span>
<br>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">Repeat this mantra after me.</span>
</span>
<br>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">I have no desires but to be a Toilet Slave.</span>
</span>
<br><br>
<span id="mid_visible" style="visibility: hidden;">
You close your mouth, not accepting any of the golden <<getWordPiss $player>> that comes down like rain onto your face and body. You try to focus your thoughts, but the onslaught of voices trying to convince you that it is in your best interest to accept the golden gift from above makes your mental defence crumble. It is only a matter of time until you give in. Your lips part and though you refuse to swallow you let them piss in your mouth, spitting it out and letting it run down your chin and over your chest.
<<if setup.getTotalValue('piss')<5>>
You're repulsed by the taste and shudder with every ounce that somehow manages to make it down your throat. All you can think of is the humiliation you're currently enduring. You are being used as a toilet. There is no other way to put it. And still... with every new client coming up, using you, your acceptance of the whole situation rises.
<<elseif setup.getTotalValue('piss')<10>>
It's still bitter, but you got used to the taste. You know this is what you're supposed to do. This humiliation is your purpose. Some of the clients even allow you to lick their <<getWordPenis $player>> or pussy clean after a job well done, and you think... you think you are starting to enjoy your new position in life.
<<else>>
But after a while you start swallowing all of it, since it is, after all a golden gift, from above. Every ounce of yummie <<GetWordPiss $player>> trickling out of your mouth is a wasted drop. You're supposed to drink it all like the good, obedient little toilet slave you are. After all, you're not a person. You are a toilet. For your Master... your Mistress... whoever wants to use your dirty little mouth is permitted to do as they like.
<</if>>
Your uniform gets splattered by everything that gets spilled or dribbles past your chin. Towards the end some people simply piss at you... the warmth of it makes it feel like a warm spring rain splattering against your artificial second skin. You have lost count of how many persons used you. Your mind becomes calmer with each "client" served and after awhile you are unable to form any thoughts besides thoughts a toilet would have, if a toilet could think, that is.
</span>
<br><br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "No! I refuse to accept this! I am a person!">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "No way I am going to open my mouth for this!" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "But they all seem so happy using me...?" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Okay, I'll open my mouth for them. But just this once... " 40>></span>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue || $scene.spendWillpower>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("piss") >= 10>>
It is odd to think that something this sexual could be considered "holding back" but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, but you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("piss") >= 7>>
As fun as the simulation is you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<<else>>
You don't feel like this had any lasting impact on your psyche.
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism reject, glitch out of being a human toilet
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<HypnosisSession4Reject $player $scene 'piss'>>
<<set $hypnoSession.theme = 'reject'>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_COM > Say this truth out loud:">><br>
<<glitchText "#_REP > I am not a Person. I am a Toilet.">><br>
<<glitchText "#_REINF > I am not a Person. I am a Toilet.">><br>
<<glitchText "#_COM > Repeat this mantra after me:">><br>
<<glitchText "#_REP > I have no desires but to be a Toilet Slave.">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information.
<<if $scene.changedMaxWillpower>>
But not today! You steel your thoughts and refuse to let them in.<br>
<br>
<<printThoughtWill $player "I refuse to accept this reality!">><br>
<br>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!
<<else>>
Since you already refused this reality you cannot feel your willpower strengthening this time.
<</if>>
<br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("piss") >= 5>>
As your mind adjusts to the jarring break in the simulation you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</div>/*#
#desc: hypnosis session 4 - cum fetishism intro, served glass of cum
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "a Bar?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/cum_drink.mp4">>
<div id="invframe" class="scrolltext">
You take a sip from the bottle, not even tasting what is in it before your vision swirls. Blinking you find yourself walking into a bar where you take a seat on one of the stools. It is strange, though you are not alone you cannot seem to focus on any of the other patrons, only vaguely aware that it appears to be a mix of male and female.<br>
<br>
You wave down the bartender who stands in front of you, still out of focus, yet somehow familiar.<br>
<br>
"The usual" you state and the bartender nods.<br>
<br>
"@@.npc_gloryhole;Another one? Of course, just give me a second@@", he says, while putting a rather large martini glass on the bar. Then he pulling down his zipper, freeing an enormous <<getWordPenis $player>>, like its the most natural thing to do. Starting to massage his giant <<getWordPenis>> you can see the precum dripping from the rosy tip, dripping into the glass, while more and more patrons join in, pulling out their dicks and masturbate until they shoot thick strings of <<getWordCum $player>> into the glass. After a while the whole spectacle is over and you realise that everyone at the bar stopped doing whatever they were doing and started to stare at you, while the bartender puts the glass right in front of you.<br>
<br>
"@@.npc_gloryhole;Here you go, cumslut.@@"<br>
<br>
Full with a milky liquid you still can't quite identify it as you bring the glass to your lips.<br>
<br>
<<if setup.getTotalValue('cum')<5>>
<<printThought $player "Do I really have to drink this?">>
<<else>>
<<printThought $player "Ooh... I look forward to taste this on my tongue!">>
<</if>>
<br><br>
<<HypnosisSession4Options $player 'cum'>>
</div>/*#
#desc: hypnosis session 4 - cum fetishism accept, drink cum -> bukkake scene, lick it all up
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'cum'>>
<<HypnosisSession4Accept $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Bar!">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/cum_drink.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Cum is love...</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Cum is life...!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Give me that creamy goodness.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">I love cum.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">Jizz brings me joy.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">Semen is scrumptious.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.4s;">Feed me cum.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.8s;">Cover me in cum.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 3.2s;">Drown me in dick milk.</span><br>
</span>
<br>
<span id="mid_visible" style="visibility: hidden;">
You tilt your head back to drain your glass of every thick drop, licking your lips as you place it back on the bar with a smile. The bartender smiles back.<br>
<br>
"@@.npc_gloryhole;Another?@@"<br>
<br>
You smile wider and nod. Picking up your glass from the bar the bartender does not refill it, instead motioning behind you. Turning around you are presented with a joyous sight - the other patrons of the bar are all facing you, pants lowered and skirts raised to present a vast array of dicks of all kinds, big and manly to petite and sissy, smooth and feminine to hairy and rough, all hard and all full of cum...<br>
<br>
Sliding off the stool you drop to your knees, a bowl appearing in your hands as the first couple of patrons approach. Holding the bowl just in front of your chin you watch in rapt attention as they jerk off into the bowl, thick ropes of semen-y goodness splashing into the bowl with a little spraying onto your face. Eagerly you tilt the bowl back, swallowing and licking it clean of every delectable drop.<br>
<br>
By the time you are done a fresh set of "customers" has appeared, spraying more and more semen into the bowl and onto your face. You drink more and more, each drink bringing with it a fresh layer of cum splashed across your face. Not once does a "customer" touch you, nor do you touch them. This isn't about sex, it's about cum, filling you, coating you... lovely, delicious, wonderful cum...<br>
<br>
You drink and drink and drink, until you are alone in the bar, collapsed on the floor, your bowl licked clean, your belly full. Idly scraping semen off your face and licking your fingers clean you purr in contentment...<br>
<br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "Why am I so thirsty?">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "How does cum taste so good?" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "Please... I need more cum..." 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Drown me in cum!" 40>></span>
<br><br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spentWillpower>>
You let out an imaginarily held breath, the stress of pushing yourself to this new height fading away.
<<if $scene.changedMaxWillpower>>
It took an act of will but you did it, though it was mentally tiring you feel that pushing yourself to achieve your goal as served to bolster your overall mental state.
<<else>>
Though you have pushed yourself to such limits before it replenishes your mental reserves to know that you are still capable of striving to meet your destiny.
<</if>>
<<elseif $scene.spendFatigue>>
Though it is tiring to push yourself so hard you feel your mental reserves replenished by your accomplishment.
<</if>>
<br><br>
<<if $scene.threshold_triggered>>
You feel like you might have been a bit aggressive to so enthusiastically embracing the simulation. You have definitely learned a lot, and you wonder if you could even go back to "before"... if you would even want to?
<<else>>
It is hard to believe that what you just enjoyed would have once horrified you. How far you have come... but you have come too far to hesitate, you need to find other activities in the real world, discover more about yourself as you race further down this wonderful road of depravity.
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - cum fetishism decline, surprise snowball-kissed then bukkake'd
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'cum'>>
<<HypnosisSession4Decline $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Bar?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/cum_drink.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Cum is love...</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Cum is life...!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Give me that creamy goodness.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">I love cum.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">Jizz brings me joy.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">Semen is scrumptious.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.4s;">Feed me cum.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.8s;">Cover me in cum.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 3.2s;">Drown me in dick milk.</span><br>
</span>
<br>
<span id="mid_visible" style="visibility: hidden;">
You refuse to drink cum, gently spitting out the small amount you had tasted and placing the glass back on the bar.<br>
<br>
The bartender pauses, frowning slightly at your rejection. Before you can move someone appears next to you at the bar, stealing the drink and pounding it back before grabbing you by the head.<br>
<br>
You barely recognise the beautiful female before your lips are pressed against hers in a kiss, her hands holding your head in place as her lips part, leaking bitter, salty semen into your mouth.<br>
<br>
You imagine you can feel each little sperm migrating from her mouth to yours, swimming over your tongue, down your throat... infiltrating you.<br>
<br>
When she finally ends the long, sensuous kiss you are glassy-eyed, thirsty for more.<br>
<br>
You drop to your knees as she pulls up her skirt to reveal a juicy cock. You open your mouth obediently as she starts to stroke, moments away from thick, juicy ropes of <<getWordCum $player>> spraying fresh from the source...<br>
<br>
Her feminine load shoots straight between your O-shaped lips, the tasty juices splashing over your tongue. By the time you swallow another cock is in front of you... make that two, three...<br>
<br>
The whole bar seems to have lined up before you, a bowl appearing in your hand to catch whatever spills from your face as they take turns spraying your with semen. Thirstier than if you were in the middle of a desert you drink every load, licking the bowl clean at the end and using your fingers to clean off your face, sucking up every last drop...<br>
<br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "I am not a cum-drinker!">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "I am not thirsty of semen!" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "I just like the taste!" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Mmmm... this is so delicious... drown me in cum!" 40>></span>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.
<</if>>
<br><br>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("cum") >= 10>>
It is odd to think that something this sexual could be considered "holding back" but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, but you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("cum") >= 7>>
As fun as the simulation is you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - cum fetishism reject, glitch out
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<HypnosisSession4Reject $player $scene 'cum'>>
<<set $hypnoSession.theme = 'reject'>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF4">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF >Cum is love...">><br>
<<glitchText "#_REINF >Cum is life...!">><br>
<<glitchText "#_REINF >Give me that creamy goodness.">><br>
<<glitchText "#_REINF >I love cum.">><br>
<<glitchText "#_REINF >Jizz brings me joy.">><br>
<<glitchText "#_REINF >Semen is scrumptious.">><br>
<<glitchText "#_REINF >Feed me cum.">><br>
<<glitchText "#_REINF >Cover me in cum.">><br>
<<glitchText "#_REINF >Drown me in dick milk.">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("cum") >= 5>>
As your mind adjusts to the jarring break in the simulation you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</div>/*#
#desc: hypnosis session 4 - bondage fetishism intro, rope harness yourself, then raised in suspension
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "a Dungeon?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/bondage_suspension.mp4">>
<div id="invframe" class="scrolltext">
You reach up and take the rope off the hook. You start practicing tying and untying knots with it, gradually weaving a harness around your body. Playing with the rope is almost meditative and when you finally look around again you realise that you are no longer in the room in which you started.<br>
<br>
Dark and difficult to make out the only thing clearly visible in your surroundings is a mirror reflecting your appearance back at you - your naked body entwined with rope, black lines crossing back and forth in a karada, or rope harness over your body.<br>
<br>
You stare at your reflection, admiring how the rope frames and highlights your naked form. As well you enjoy how the rope feels against your flesh, tight and erotic, yet the mere harness is not actually restrictive...<br>
<br>
You look around again, more rope uncoiling from the ceiling, pre-tied loops ready to bind your limbs and more if you just accept the silent invitation...<br>
<br>
<<if setup.getTotalValue('bondage')<5>>
<<printThought $player "Do I really want to surrender to bondage?">><br>
<<else>>
<<printThought $player "Mmm, floating in suspension would feel so nice...">><br>
<</if>>
<br>
The ropes dangle, tantalizing and... are they moving towards you? No, they are merely swaying slightly, the idea that anything is closing in is just a trick of perspective and an overactive imagination...<br>
<br>
<<HypnosisSession4Options $player 'bondage'>>
</div>/*#
#desc: hypnosis session 4 - bondage fetishism accept, full suspension bondage + blindfold and ballgag
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'bondage'>>
<<HypnosisSession4Accept $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Dungeon!">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/bondage_suspension.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Bondage is bliss.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Restriction is rapture.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Freedom is a burden.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">I want to be tied.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">I want to be bound.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">I want to surrender control.</span><br>
</span>
<br>
<span id="mid_visible" style="visibility: hidden;">
You extend an arm through a nearby loop, pulling until it gently closes around your wrist, tight, but not painful. A firm jerk confirms that the knot is now secure, no longer tightening now that it is holding your wrist.<br>
<br>
Emboldened you look for another loop to repeat the exercise with your other hand. This time once you are secured things start to change. The ropes retract, lifting you into the air as more ropes move in to encircle your ankles, your thighs.... Moving like snakes and weaving in with your harness you can only watch as the ropes lift you into a full bondage suspension, each of your limbs tightly bound leaving you dangling in midair.<br>
<br>
Swaying in your helpless suspension a feeling of calm bliss washes over you. This is what you want, to be tied, to be restricted, to be bound...<br>
<br>
From the darkness a blindfold appears, robbing you of your sight. Next comes something in your mouth... something round? As the strap tightens around your head you recognise it as a ball gag. You purr in contentment, blind and mute, floating in silence, savoring every delicious feeling of the multitudinous ropes binding you, holding you, loving you.<br>
<br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "Wh... What is this feeling?">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "How can helplessness feel so good?" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "Is freedom a burden?" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "I should be bound more often..." 40>></span>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spentWillpower>>
You let out an imaginarily held breath, the stress of pushing yourself to this new height fading away.
<<if $scene.changedMaxWillpower>>
It took an act of will but you did it, though it was mentally tiring you feel that pushing yourself to achieve your goal as served to bolster your overall mental state.
<<else>>
Though you have pushed yourself to such limits before it replenishes your mental reserves to know that you are still capable of striving to meet your destiny.
<</if>>
<<elseif $scene.spendFatigue>>
Though it is tiring to push yourself so hard you feel your mental reserves replenished by your accomplishment.
<</if>>
<br><br>
<<if $scene.threshold_triggered>>
You feel like you might have been a bit aggressive to so enthusiastically embracing the simulation. You have definitely learned a lot, and you wonder if you could even go back to "before"... if you would even want to?
<<else>>
It is hard to believe that what you just enjoyed would have once horrified you. How far you have come... but you have come too far to hesitate, you need to find other activities in the real world, discover more about yourself as you race further down this wonderful road of depravity.
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - bondage fetishism decline, accidentally tie yourself up, then blindfold and ballgag
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'bondage'>>
<<HypnosisSession4Decline $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Playroom?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/bondage_suspension.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Bondage is bliss.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Restriction is rapture.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Freedom is a burden.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">I want to be tied.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">I want to be bound.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">I want to surrender control.</span><br>
</span>
<br>
<span id="mid_visible" style="visibility: hidden;">
Taking a nearby rope you decide to experiment with how it would feel to tie your legs. Your arms are free so you can untie yourself at any time, besides, your rope harness would look better continuing down your body...<br>
<br>
Several meditative minutes later woven bondage covers you from the shoulders down, your legs tightly, but comfortably roped together, only your arms and head free of the black tendrils.<br>
<br>
Taking another rope in hand you start to wind it around your left wrist, you're still just experimenting, your right hand is still free so you could easily untie yourself if you wanted to... you just don't want to.<br>
<br>
Your left arm traced with rope and tied behind your back to the rope around your waist you leave another loop... Looking at your reflection one last time you put your right arm out of the way to keep its bareness from contrasting with the rest of your rope-entwined reflection.<br>
<br>
You try to bring your hand back in front of your body only to discover that you can't. You have threaded your right hand through the loop at the small of your back, your wrist now tightly bound and no matter how you twist your fingers seem to brush uselessly against your bonds.<br>
<br>
Rocking in your self-inflicted restraints you look around to see ropes unfurling from above, weaving through your restraints and then tightening, slowly lifting you into the air until you are in helpless suspension. A leather blindfold floats in front of your face, wrapping your head followed by a round ball gag pressed past your lips. Both straps tightened snug you are blind and mute as you hang in silence, a final rope weaving through the straps of your final restraints to gently pull your head back and support it as you hang helplessly... blissfully...
<br><br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "I want to be free...">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "But I chose to be bound..." 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "Maybe restraints are the real freedom?" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Yes, being bound feels much better, bondage is good, bondage is bliss..." 40>></span>
<br>
<span id="exit_visible" style="visibility: hidden;"><br>
<br>
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("bondage") >= 10>>
It is odd to think that something this sexual could be considered "holding back" but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, but you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("bondage") >= 7>>
As fun as the simulation is you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - bondage fetishism reject, glitch out
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<HypnosisSession4Reject $player $scene 'bondage'>>
<<set $hypnoSession.theme = 'reject'>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF5">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF > Bondage is bliss.">><br>
<<glitchText "#_REINF > Restriction is rapture.">><br>
<<glitchText "#_REINF > Freedom is a burden.">><br>
<<glitchText "#_REINF > I want to be tied.">><br>
<<glitchText "#_REINF > I want to be bound.">><br>
<<glitchText "#_REINF > I want to surrender control.">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("bondage") >= 5>>
As your mind adjusts to the jarring break in the simulation you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</div>/*#
#desc: hypnosis session 4 - foot fetishism intro, put on high heels, they transform into extreme thigh highs
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "a Shoe Store?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/foot_fetish.mp4">>
<div id="invframe" class="scrolltext">
From the moment you pick up the high heels you can tell that they are very high quality. In a classic stiletto style they sport modest 5cm heels in polished black patent leather. Admiring your distorted reflection in the mirror-polished surface you can't help but lean over and slip them on.<br>
<br>
To say they are your size would be an understatement. It is as if they were moulded specifically for your feet, more comfortable than anything you have worn, even with the heel. Speaking of the heel as you think about it is the heel... rising?<br>
<br>
Looking over at a conveniently appearing mirror confirms that yes, the heels are getting longer and thinner, looking to be past 6cm and still growing steeper. Out of the corner of your eye it seems that you are now standing in some sort of shoe store changing isle, but your attention remains fixated on the reflection of your new heels. In addition the once court-shoes have started creeping up over your ankles, the tight patent leather past ankle-boot level and rising even faster than your heels.<br>
<br>
Tingles of pleasure run from your toes up your legs in time with the rising boots and you start to teeter as the heels pass 8cm with you up to calf-boots. You manage to steady yourself as you watch in rapturous awe as they keep growing. By the time you have full over-the-knee boots your heels are approaching 12cm, your feet pitched steeply forward as you start to grow platforms under your toes.<br>
<br>
Finally, as your boots rise to full thigh-highs and nearly 20 cm heels you finally pitch forward, landing on your hands and knees as the stunning footwear finally become too much for you. Catching your breath as your body adjusts to the intense, erotic footwear perfectly fitted all the way up your legs you look up from the floor to find a pair of heel'd feet standing in front of you...<br>
<br>
<<HypnosisSession4Options $player 'foot'>>
</div>/*#
#desc: hypnosis session 4 - foot fetishism accept, foot/shoe massage/worship
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'foot'>>
<<HypnosisSession4Accept $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Shoe Store!">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/foot_fetish.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">I love heels.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Higher is better.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Steeper is sweeter.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">Wear the heels, worship the heels.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">Kiss the toes.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">Rub the heels.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.4s;">Massage the arches!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.8s;">At someone's feet it where I belong...</span><br>
</span>
<br>
You eagerly start kissing the high-heel'd foot before you. Steep and shiny and red the heels scream sex and poise and you enthusiastically polishing them with your tongue before lovingly massaging the ankle and calf above. When you finally lean back to take a breath the figure before you turns, walking smartly away with another person walking up to take their place.<br>
<br>
This time you are faced with knee high chunk heels but you set to work with the same gusto. But this time your "customer" removes their feet from her shoes, they're wrapped in delicate nylons. And from the fragrance she must have worn them all day long. You take your time massaging and worshipping them, until the wearer is satisfied and turns away to be replaced with your next client...<br>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "Wh... What am I doing?">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "Is that all I exist for?" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "To worship feet?" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Oh... look at this beautiful shoes! These caress-worthy feet! They deserve to be idolized!" 40>></span>
<br><br>
<span id="mid_visible" style="visibility: hidden;">
Pumps, sandals, clean feet, feet both clean and dirty, boots ranging from ballet-fetish to heavy combat each new pair of shod feet is a fresh excitement for your foot-addled mind. Male or female, large or small you worship all in kind, massaging and kissing, debasing yourself and occasionally looking back with aroused lust at the erotically steep heels upon your own feet, your every thought filled them...<br>
</span>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spentWillpower>>
You let out an imaginarily held breath, the stress of pushing yourself to this new height fading away.
<<if $scene.changedMaxWillpower>>
It took an act of will but you did it, though it was mentally tiring you feel that pushing yourself to achieve your goal as served to bolster your overall mental state.
<<else>>
Though you have pushed yourself to such limits before it replenishes your mental reserves to know that you are still capable of striving to meet your destiny.
<</if>>
<br><br>
<<elseif $scene.spendFatigue>>
Though it is tiring to push yourself so hard you feel your mental reserves replenished by your accomplishment.<br>
<br>
<</if>>
<<if $scene.threshold_triggered>>
You feel like you might have been a bit aggressive to so enthusiastically embracing the simulation. You have definitely learned a lot, and you wonder if you could even go back to "before"... if you would even want to?
<<else>>
It is hard to believe that what you just enjoyed would have once horrified you. How far you have come... but you have come too far to hesitate, you need to find other activities in the real world, discover more about yourself as you race further down this wonderful road of depravity.
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 14>>
</div>/*#
#desc: hypnosis session 4 - foot fetishism decline, foot massaging
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'foot'>>
<<HypnosisSession4Decline $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Playroom?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/foot_fetish.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">I love heels.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Higher is better.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Steeper is sweeter.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">Wear the heels, worship the heels.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">Kiss the toes.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">Rub the heels.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.4s;">Massage the arches!</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.8s;">At someone's feet it where I belong...</span><br>
</span>
<br>
<span id="mid_visible" style="visibility: hidden;">
While you can't help but admire the candy red pumps and the legs stretching up from them you see no reason to do anything else... At first. One foot is extended towards you and it would be rude not to make some gesture of appreciation... right?<br>
<br>
Gently kissing the toes the polished material feels warm and tastes... good? A soft kiss turns into more passionate affection and before you know it your hands are part of the party as well, massaging and stroking each heel'd foot in turn until their own seems satisfied, turning sharply away.<br>
<br>
You console yourself that you were just having a bit of fun, that it didn't really MEAN anything... and then another set of legs step in front of you. Steep patent over the knee boots loom before you, it really wouldn't be fair not to show them the same appreciation as the last set...<br>
<br>
Almost without thought you repeat your massaging affection, then again for a third "client" and a fourth. Sandals, pumps, boots from ballet steep to combat heavy male and female and unknown your existence becomes a constant stream of shod feet, each in need of your "special" appreciation.<br>
<br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "I refuse to play by the rules!">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "I am not a foot-washing slave!" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "I just like wearing heels!" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "Oh... look at these beautiful shoes! They need to be worshipped!" 40>></span>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("foot") >= 10>>
It is odd to think that something this sexual could be considered "holding back" but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, but you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("foot") >= 7>>
As fun as the simulation is you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - foot fetishism reject, glitch out
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<HypnosisSession4Reject $player $scene 'foot'>>
<<set $hypnoSession.theme = 'reject'>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF > I love heels.">><br>
<<glitchText "#_REINF > Higher is better.">><br>
<<glitchText "#_REINF > Steeper is sweeter.">><br>
<<glitchText "#_REINF > Wear the heels, worship the heels.">><br>
<<glitchText "#_REINF > Kiss the toes.">><br>
<<glitchText "#_REINF > Rub the heels.">><br>
<<glitchText "#_REINF > Massage the arches!">><br>
<<glitchText "#_REINF > At someone's feet it where I belong...">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("foot") >= 5>>
As your mind adjusts to the jarring break in the simulation you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</div>/*#
#desc: hypnosis session 4 - bdsm fetishism intro, collar + leash, leash pulled, fall to the floor and ordered to obey
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "a Playroom?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/spanking.mp4">>
<div id="invframe" class="scrolltext">
You take the leash and dog collar from the wall and examine them. All made of leather the leash looks sturdy, but unremarkable, the collar thick and padded looking both formidable and... comfortable? Experimentally you bring the collar to your throat, finding it perfectly sized for your neck and before you know it it is buckled around your neck, sending a shiver down your spine.<br>
<br>
Adjusting to the stern feel of the collar you lose track of your surroundings until there is a sudden tug on your leash, the surprising force sending you flailing forward to land on your hands and knees.<br>
<br>
You look up at a shadowy figure, you cannot even tell their gender only that they are holding your leash in one hand, and that they radiate raw dominance.<br>
<br>
"@@.npc_manager;You are a slave. A slave obeys.@@" The figure commands, the voice itself is indistinct and yet each word is somehow perfectly, crystal clear.<br>
<br>
<<if setup.getTotalValue('bdsm')<5>>
<<printThought $player "Am I really going to accept this unquestioningly?">>
<<else>>
<<printThought $player "I... I must follow your every command!">>
<</if>>
<br><br>
<<HypnosisSession4Options $player 'bdsm'>>
</div>/*#
#desc: hypnosis session 4 - bdsm fetishism accept, bound on Saint Andrews Cross and flogged, then crop'd through slave positions
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'bdsm'>>
<<HypnosisSession4Accept $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Dungeon!">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/spanking.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">I exist to serve.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Obedience is my greatest pleasure.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Control should be surrendered.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">To be collared and claimed is my goal.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.4s;">I was meant to be owned.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">I love being a slave!</span><br>
</span>
<br>
<span id="mid_visible" style="visibility: hidden;">
You nod slowly before averting your gaze from your owner to stare at the floor. Who-, or whatever holds your leash seems satisfied with your obsequience, gently tugging on your leash to signal you to follow.<br>
<br>
Crawling forward the floor changes below you and when you finally look around you find yourself in some sort of sex dungeon.<br>
<br>
The walls done in leather bedecked with a dizzying array of whips and floggers a variety of intimidating instruments ranging from a bondage chair to a cage to a Saint Andrew's Cross and other, scarier things are scattered throughout the room.<br>
<br>
You glance nervously at each device you pass only to be led to a low bench. Lifting yourself on top straps are affixed over your hips and shoulders, your wrists and ankles slipping into cuffs attached to the bondage bench and in moments you are totally restrained.<br>
<br>
You start to cry out only for a gag to be pressed past your parted lips, completing your restraints as your captor plucks a flogger from the wall and moves behind you.<br>
<br>
Though you brace yourself in anticipation the first blow still lands hard and fast but you cannot escape, your only response to let out a muffled moan that barely escapes past your jaw-stretching gag.<br>
<br>
The only sounds in the dungeon are your gasps and moans intermingled with the crack and snap of the flogger, the beating continuing until your rear and thighs are surely a solid red from pain.<br>
<br>
Eyes squeezed shut it takes you several moments to recognise that the beating has stopped. Your cuffs snap open and fall aside, though the gag and collar remain in place, as another tug at your leash signals for you to wincingly dismount the bench and crawl after.<br>
<br>
You note that your captor holds what looks like a crop in the hand opposite your leash, using it to point for your to take a position in the centre of the room.<br>
<br>
No sooner have you come to a stop than the commands start. "Kneel, present, curtsey, attention, nadu, display" one at a time the positions are called out. Some are obvious while others you have no idea what to do at first but the crop provides ample encouragement, a painful tap on this limb or that indicating for you to move, giving you no choice but to react as if a mindless doll. You shift until you have satisfactorily assumed the position, holding it for a few seconds before it is on to the next, the sequence repeated randomly over and over until you, despite the pain from numerous admonishments, you assume each instantly after being commanded.<br>
<br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "Wh... What am I doing?">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "Is that all I exist for?" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "To follow commands? To present myself for another?" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "If this is my owner's desire, surely it is what is best for me..." 40>></span>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spentWillpower>>
You let out an imaginarily held breath, the stress of pushing yourself to this new height fading away.
<<if $scene.changedMaxWillpower>>
It took an act of will but you did it, though it was mentally tiring you feel that pushing yourself to achieve your goal as served to bolster your overall mental state.
<<else>>
Though you have pushed yourself to such limits before it replenishes your mental reserves to know that you are still capable of striving to meet your destiny.
<</if>>
<br><br>
<<elseif $scene.spendFatigue>>
Though it is tiring to push yourself so hard you feel your mental reserves replenished by your accomplishment.<br>
<br>
<</if>>
<<if $scene.threshold_triggered>>
You feel like you might have been a bit aggressive to so enthusiastically embracing the simulation. You have definitely learned a lot, and you wonder if you could even go back to "before"... if you would even want to?
<<else>>
It is hard to believe that what you just enjoyed would have once horrified you. How far you have come... but you have come too far to hesitate, you need to find other activities in the real world, discover more about yourself as you race further down this wonderful road of depravity.
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - bdsm fetishism decline, forcibly bound to Saint Andrew's Cross and flogged, then cropped through slave positions
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $hypnoSession.theme = 'bdsm'>>
<<HypnosisSession4Decline $player $scene $hypnoSession.theme>>
<</if>>
<<set $player.location to "a Dungeon?">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/spanking.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">I exist to serve.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.4s;">Obedience is my greatest pleasure.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.8s;">Control should be surrendered.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.2s;">To be collared and claimed is my goal.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.4s;">I was meant to be owned.</span><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.6s;">I love being a slave!</span><br>
</span>
<br>
<span id="mid_visible" style="visibility: hidden;">
After your initial tumble you rise back to your feet. Though you cannot make out features your controller appears... amused? Either way they turn away, tugging on your leash for you to follow. For a moment you resist, but... you are curious, and you can always unclip the collar and flee if you want.<br>
<br>
Following behind your still indistinct captor you are led into a different room... a dungeon. Moving past the Saint Andrew's cross and the cage with a gulp you consider fleeing as your gaze drifts over a dizzying selection of floggers and whips decorating the leather walls.<br>
<br>
In spite of your misgivings you continue to put one foot in front of the other until you are led to a bench, guided to lay face down it is only when you are in position on the comfortably upholstered device that a series of restraints practically snap out at you, binding you to the device at wrist, ankle, thigh and shoulders.<br>
<br>
You try to protest, straining uselessly against your bonds. Your objections cut off as a large gag is shoved into your opened mouth and buckled tightly around your head.<br>
<br>
Thrashing harder your restraints give not a millimetre, frantic thoughts of your predicament shattered as the first blow of a flogger lands hard across your unprotected ass.<br>
<br>
You cry out, your complaint muffled severely by the gag as your captor continues, raining down blow after blow that echo through the dungeon as your rear and thighs turn red with pain.<br>
<br>
When you are finally released from the bench you slide meekly off. Still gagged you are led to the middle of the room where your captor uses a crop to teach you a series of "slave" positions.<br>
<br>
"Kneel, present, curtsy, attention, nadu, display." Each position is called out and then sharp taps of the crop are used to indicate which part of your body is out of position, once "mastered" you hold a position for a few seconds and then move on to the next. The sequence repeats over and over in random order, until the positions burn themselves into your memory and you shift swiftly and perfectly, as if on instinct, even as your body aches from repeated admonishing blows.
<br>
</span>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "I don't want to play by the rules!">></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "I am not an object to be ordered about!" 13>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "I don't want to be forced to do these things!" 26>></span>
<br>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "If this is my owners desire, surely it is what is best for me..." 40>></span>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("bdsm") >= 10>>
It is odd to think that something this sexual could be considered "holding back" but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, but you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("bdsm") >= 7>>
As fun as the simulation is you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - bdsm fetishism reject, glitch out
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<HypnosisSession4Reject $player $scene 'bdsm'>>
<<set $hypnoSession.theme = 'reject'>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF >I exist to serve.">><br>
<<glitchText "#_REINF >Obedience is my greatest pleasure.">><br>
<<glitchText "#_REINF >Control should be surrendered.">><br>
<<glitchText "#_REINF >To be collared and claimed is my goal.">><br>
<<glitchText "#_REINF >I was meant to be owned.">><br>
<<glitchText "#_REINF >I love being a slave!">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("bdsm") >= 5>>
As your mind adjusts to the jarring break in the simulation you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 2700>>]
</div>/*#
#desc: hypnosis session 4 aftermath, wake up
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<include addHypnosisTask>>
<<removeItem $player $now 'plug_suit_red' true>>
<<deleteItem $player $now 'plug_suit_red'>>
<<removeItem $player $now 'vr_helmet' true>>
<<deleteItem $player $now 'vr_helmet'>>
<<useClothSetPop 'hypnosis3' $player $now>>
<<if $scene.plug != "">>
<<wearItem $player $now $scene.plug true>>
<</if>>
<<set $npc_psychiatrist.free_sessions += 1>>
<<set $player.money.total+=40>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $hypnoSession.theme=='reject'>>
You slowly open your eyes. Everything around you is dark. But then you feel like someone is touching your head and after a few seconds, you can see <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> face as she removes the IROI-1 from your head. She is wearing a rather concerned expression.<br>
<br>
"@@.npc_psychiatrist;Hey, are you still in there <<=$player.first_name>>?@@"<br>
<br>
<<printThought $player "What a strange thing to ask.">><br>
<br>
"@@.npc_psychiatrist;I mean, are you okay? The system just threw a rather odd exception and then crashed without warning. The log files before the crash are corrupted, so I'm not getting any information from there. Do you remember anything that happened?@@"<br>
<br>
You have no recollection of anything that happened after you entered the simulated room. It is strange, you feel drained, and yet also more focused then lately.<br>
<br>
"@@.npc_psychiatrist;Okay, I will have to check the data afterwards to figure out what happened here. The whole system is a prototype, so errors are bound to crop up here and there. Let me help you out of the harness.@@"<br>
<br>
Released from the chair you return to the changing room where you remove the plug suit and put your clothes back on. After that you return to <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> Office where she's already hard at work trying to figure out what went wrong.<br>
<br>
"@@.npc_psychiatrist;Well that's top bad. The simulation started quite promising. Don't worry, though, this incident is hardly your fault.@@"
<<else>>
You're still half in trance as you open your eyes. Like a zombie your body moves on its own, staggering into the changing room and peeling off the plug suit. You drift in and out of this state only to see your hands put on your clothes without any input from your side, like you're watching a movie. Only after you've left the changing room and re-entered <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office do you finally come fully to your senses.
<<if $npc_psychiatrist.hypnosis==4>>
At least you remember parts of the hypnosis today. Wait... no. You remember the part before the hypnosis, when you entered the VR Simulation with the new headgear, and adjusting the system. And then the room. You are pretty sure there was a room, but after that... your <<glitchText "mind is blank...">>
<<else>>
As usual you remember the part where you entered the room, but after that... your <<glitchText "mind is blank...">>
<</if>>
<<switch $hypnoSession.theme>>
<<case 'penis'>>
Hmm..you feel strange, like there's something missing. Something you need inside you?<br>
<br>
"@@.npc_psychiatrist;Hmm... deep in thought? It seemed like something in the simulation sparked your interest. No, don't look at me that way. I cannot tell you what happened, that might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that. For the both of us!@@"
<<case 'piss'>>
Hmm..you feel thirsty somehow. Maybe you should go fetch a drink on your way home. But your thirst is kind of strange. You crave something... bitter?<br>
<br>
"@@.npc_psychiatrist;Hmm... an interesting choice you made in the simulation today. No, don't look at me that way. I cannot tell you what happened, that might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that.@@"
<<case 'bondage'>>
You feel stiff, as if you held your limbs in one position for a long time. What is strange is that even as you work out the stiffness you feel off... Almost like you want to be held, as if being physically restricted in your movement would be somehow... better?<br>
<br>
"@@.npc_psychiatrist;How captivating... Oh, sorry, never mind. I cannot tell you what happened, that might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that.@@"
<<case 'cum'>>
Hmm... you feel thirsty, and a little hungry? Like you want something creamy and filling to swish around your mouth...<br>
<br>
"@@.npc_psychiatrist;Hmm... an interesting, but unsurprising, choice you made. No, don't look at me that way. I cannot tell you what happened, that might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that.@@"
<<case 'foot'>>
Odd, you seem to be having trouble flattening your feet, they naturally want to perch on the balls of your toes in an arched state...<br>
<br>
"@@.npc_psychiatrist;Very interesting, fascinating, really... No, don't look at me that way. I cannot tell you what happened, that might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I am sure of that.@@"
<<case 'bdsm'>>
You feel strange, as if you are waiting for an order to do something... but what? And why would you need to be ordered to do it?<br>
<br>
"@@.npc_psychiatrist;Astounding, I did not realise you were already so... Oh, sorry, never mind. I cannot tell you what happened, that might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that.@@"
<</switch>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Here is your 40 Credits, and I'll add another free therapeutic session to your list. I'll put you into the system for the next VR session as well, is that okay?@@"<br>
<br>
As usual that is not a question but more a statement. Someone should really explain the difference between those two things to to her one day. Not you, though, and not today you think as she continues without losing even a single second.<br>
<br>
"@@.npc_psychiatrist;That would be
<<if setup.getUTCDay($now) == 0>> /% sunday -> wednesday %/
next Wednesday,
<<else>> /% wednesday -> sunday %/
next Sunday,
<</if>>
19 o'clock. Show up if you want to unlock everything hiding deep within your mind.@@"<br>
<br>
<<printThought $player "Why does she always have to be so cryptic?">><br>
<br>
"@@.npc_psychiatrist;I'm not going to detain you any longer, so have a nice evening.@@"
You take your cue and bid her farewell.<br>
<br>
[<<moveTo 'room_psychiatrist_lobby' 'Leave the office.' 60 '<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
</div><<if $scheduleHypnoToday>>
<<set _tmpDate to setup.setNextDate($now, 0, 19, 0)>>
<<unset $scheduleHypnoToday>>
<<else>>
<<set _day = $now.getUTCDay()>>
<<switch _day>>
<<case 0>>
<<set _tmpDate to setup.setNextDate($now, 3, 19, 0)>>
<<case 1>>
<<set _tmpDate to setup.setNextDate($now, 2, 19, 0)>>
<<case 2>>
<<set _tmpDate to setup.setNextDate($now, 1, 19, 0)>>
<<case 3>>
<<set _tmpDate to setup.setNextDate($now, 4, 19, 0)>>
<<case 4>>
<<set _tmpDate to setup.setNextDate($now, 3, 19, 0)>>
<<case 5>>
<<set _tmpDate to setup.setNextDate($now, 2, 19, 0)>>
<<case 6>>
<<set _tmpDate to setup.setNextDate($now, 1, 19, 0)>>
<</switch>>
<</if>>
<<set _taskCondition = setup.getConditions(_tmpDate, ['atPsychiatrist'])>>
<<switch $npc_psychiatrist.hypnosis>>
<<case 0>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_1",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<set _taskDest = 'task_psychiatrist_endless_hypnosis_1'>>
<<case 1>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_2",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<set _taskDest = 'task_psychiatrist_endless_hypnosis_1'>>
<<case 2>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_3",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<set _taskDest = 'task_psychiatrist_endless_hypnosis_1'>>
<<case 3>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_4",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<set _taskDest = 'task_psychiatrist_endless_hypnosis_4'>>
<<case 4>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_4",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<set _taskDest = 'task_psychiatrist_endless_hypnosis_4'>>
<<default>>
ERROR: unknown hypnosis level: <<=$npc_psychiatrist.hypnosis>>
<</switch>>
<<addTask 'psychiatrist_endless_hypnosis_1'
$now
'npc_psychiatrist'
'task_psychiatrist_endless_hypnosis_1'
_taskCondition
_taskDone
_taskFailed>>/*#
#desc: triggered event for failing to show up to hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<setScene>>
<<set $npc_psychiatrist.hypnosis_missed += 1>>
<<if $npc_psychiatrist.hypnosis>0>>
<<set _tmpLvl = Math.max(1,Math.min(10,$npc_psychiatrist.hypnosis_missed-$npc_psychiatrist.hypnosis))>>
<<switch _tmplLvl>>
<<case 0>>
<<applyExperience 'bimbofication' 3 'insignificant' $INCOGNITO>>
<<case 1>>
<<applyExperience 'bimbofication' 3 'slightly' $INCOGNITO>>
<<case 2>>
<<applyExperience 'bimbofication' 3 'little' $INCOGNITO>>
<<case 3>>
<<applyExperience 'bimbofication' 3 'almost' $INCOGNITO>>
<<case 4>>
<<applyExperience 'bimbofication' 3 'normal' $INCOGNITO>>
<<case 5>>
<<applyExperience 'bimbofication' 3 'very' $INCOGNITO>>
<<case 6>>
<<applyExperience 'bimbofication' 3 'terrible' $INCOGNITO>>
<<default>>
<<applyExperience 'bimbofication' 3 'unbelievable' $INCOGNITO>>
<</switch>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are being called by <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Hey <<=$player.first_name>>. I assume you won't make it to our appointment today. Don't worry, no harm done. Would you kindly reconsider appearing to the next one? I can rebook you another appointment right now, if you would like?@@"<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_failed_rebook" "Agree to rebook" 60 "<<set $scene.rebook=true>>">>]<br>
[<<moveTo "event_psychiatrist_hypnosis_failed_rebook" "Say you would like to leave the study" 60 "<<set $scene.rebook=false>>">>]
</div>/*#
#desc: rebook hypno session over the phone
#status: FINISHED 0.6.0.0
#*/
<<set $player.location to "Call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<if $roomchange == true>>
<<if $scene.rebook>>
<<include addHypnosisTask>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.rebook>>
You apologise for missing the appointment and ask if you can rebook.<br>
<br>
"@@.npc_psychiatrist;Certainly, I will just put you down for
<<if setup.getUTCDay($now) == 5>> /% friday -> sunday %/
next Sunday
<<elseif setup.getUTCDay($now) == 0>> /% sunday -> wednesday %/
next Wednesday
<<else>> /% wednesday -> sunday %/
next Sunday
<</if>>
at 19 o'clock, okay?@@"<br>
<br>
You reply that sounds fine.<br>
<br>
<<if $npc_psychiatrist.hypnosis > 0>>
"@@.npc_psychiatrist;Thank you very much for your continued participation in my study. This will help me a lot to advance this field of science!@@"
<<else>>
"@@.npc_psychiatrist;I would really appreciate it, if you would find the time to help me in this endeavour. Thank you in advance.@@"
<</if>>
<br><br>
<<if ($npc_psychiatrist.hypnosis_missed<2) || ($npc_psychiatrist.hypnosis == 0)>>
<<printThought $player "Well, I am kind of curious about the whole thing... maybe I'll go next time.">>
<<elseif ($npc_psychiatrist.hypnosis_missed<5)>>
<<printThought $player "I... I really want to go... I feel like I'm losing a part of myself if I don't go.">>
<<elseif ($npc_psychiatrist.hypnosis_missed<10)>>
<<printThought $player "I... I really should go... for like science and stuff...">>
<<else>>
<<printThought $player "...">><br>
<<printThought $player "Brainwashing is good for me, my mind is happy, blank and empty." 40>>
<</if>>
<<else>>
You politely ask to be removed from the study. She is quiet for a moment before replying sounding sad... and maybe a bit strangely fearful?<br>
<br>
"@@.npc_psychiatrist;Oh, I am so sorry to hear you say that. I feel like there was so much more that could be done to help you... I mean, for you to help with the study. Well, if you ever change your mind just talk to me after one of your therapy sessions and I can get you booked right up!@@"
<</if>>
<br><br>
[<<moveTo $beforetasklocation "Put your phone away">>]
</div>/*#
#desc: re-enroll in hypno if things glitched
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scheduleHypnoToday = true>>
<<include addHypnosisTask>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You thank her for the offer and say that yes, you would like to re-enroll in her hypnosis study.<br>
<br>
"@@.npc_psychiatrist;Oh, how wonderful! I am just so looking forward to you advancing further... Further advancing the cause of science, I mean.@@"<br>
<br>
She smiles and you feel a strange fuzziness in the back of your mind.<br>
<br>
"@@.npc_psychiatrist;I have a slot open later today, see you at seven this evening! Oh, I cannot wait to continue helping clean up that cute little mind of yours; I just know you're going to be so, so happy when we're finished...@@"<br>
<br>
<<if $npc_psychiatrist.hypnosis >= 2>>
<span class="shining" style="-webkit-animation-delay: 0.0s;">Brainwashing is good for me. My mind is happy, blank and empty</span>
<<else>>
<<printThought $player "What an odd way to phrase that, but she has my best interests at heart, right?">>
<</if>>
<br><br>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_psychiatrist_lobby" "Thank her and leave the office." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist lobby generic
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_psychiatrist_lobby')>>
<<set $player.location to "Psychiatrist">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_anteroom.png">>
<div id="invframe" class="scrolltext">
You enter the nicely furnished lobby of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> private practice. The waiting room is pleasant and mostly empty, decorated in soft pastels, pink and white and quite soothing.
<<if _nextdate == null>>
You currently have no appointments scheduled.
<<elseif setup.compareDay($now,_nextdate)>>
You have an appointment today at <<=setup.shortTime(_nextdate)>>.
<<else>>
You have no appointment today. Your next appointment is on <<printDate _nextdate>>.
<</if>>
<br><br>
<<include thoughts_current>><br>
<br>
<<if _nextdate == null>>
<<elseif setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondstoDate($now,_nextdate)+1>>
[<<moveTo "room_psychiatrist_lobby" "Announce your arrival to the receptionist and wait for your appointment." _tmpSeconds>>]<br>
<</if>>
[<<moveTo "room_citymap" "City Centre" 300>>]
</div>/*#
#desc: mux to route result of calling psychiatrist
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $call_psychiatrist={}>>
<<initRoom>>
<<if ($now.getUTCHours() >= 7) && ($now.getUTCHours() < 17)>>
<<moveTo 'room_call_psychiatrist_1'>>
<<else>>
<<moveTo 'room_call_psychiatrist_no_ordination'>>
<</if>>
<</if>>/*#
#desc: psychiatrist voicemail
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Hello, this is <<=setup.getNpcName('npc_psychiatrist', 'other')>> speaking. Unfortunately, you reached us outside the office hours. Please call between the time of seven o'clock and seventeen o'clock every day.@@"<br>
<br>
[<<moveTo $beforePhonecalllocation "Put down the phone." 1 "<<set $currentcall = false>>">>]
</div>/*#
#desc: phone call with psychiatrist
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if !$npc_psychiatrist.flags.nextsession && $npc_psychiatrist.flags.signednda>>
<<set $call_psychiatrist.call = "nextsession">>
<<set $npc_psychiatrist.flags.nextsession = true>>
<<set _tmpName to setup.getNpcName('npc_psychiatrist')>>
<<if (setup.getUTCDay($now) >= 3) && (setup.getUTCDay($now) != 0)>>
<<set _tmpDate to setup.setNextDate($now, 7-setup.getUTCDay($now), 19, 0)>>
<<else>>
<<set _tmpDate to setup.setNextDate($now, 3-setup.getUTCDay($now), 19, 0)>>
<</if>>
<<set _taskCondition = setup.getConditions(_tmpDate, ['atPsychiatrist'])>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_1",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<addTask 'psychiatrist_endless_hypnosis_1'
$now
'npc_psychiatrist'
'task_psychiatrist_endless_hypnosis_1'
_taskCondition
_taskDone
_taskFailed>>
<<elseif !$npc_psychiatrist.flags.signednda>>
<<set $call_psychiatrist.call = "nda">>
<<elseif $npc_psychiatrist.stage>1>>
<<else>>
<<set $call_psychiatrist.call = "nothing">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch $call_psychiatrist.call>>
<<case "nextsession">>
"@@.npc_psychiatrist;Hello <<=$player.first_name>>. I see you sent me the NDA back signed and all. Very good. Very good indeed. I assume I can interest you in a new appointment for the VR Hypnosis Therapy?@@"<br>
<br>
You affirm and ask when the next possible appointment could be.<br>
<br>
"@@.npc_psychiatrist;Let's see... that would be next
<<if (setup.getUTCDay($now) >= 3) && (setup.getUTCDay($now) != 0)>>
Sunday at 19 o'clock.
<<else>>
Wednesday.
<</if>>
Oh, I'm getting all tingly from excitement! This is going to be great! You won't regret it <<=$player.first_name>>!@@"<br>
<br>
[<<moveTo $beforePhonecalllocation "Say goodbye." 1 "<<set $currentcall = false>>">>]
<<case "nda">>
You pick up the phone and think about calling <<=setup.getNpcName('npc_psychiatrist', 'first')>>, but without signing the NDA first there's not really a lot to talk about.
<br><br>
<<printThought $player "I'll call her if I decide to sign that NDA.">><br>
<br>
[<<moveTo $beforePhonecalllocation "Put down the phone." 1 "<<set $currentcall = false>>">>]
<<case "nothing">>
You pick up the phone and think about calling <<=setup.getNpcName('npc_psychiatrist', 'first')>>, but you have no idea what to talk about.<br>
<br>
<<printThought $player "Maybe, once I know what to talk about...">><br>
<br>
[<<moveTo $beforePhonecalllocation "Put down the phone." 1 "<<set $currentcall = false>>">>]
<</switch>>
</div>/*#
#desc: wait for first psychiatrist session, see npc_boss, called for your session
#status: FINISHED 0.4.0.0
#*/
<<if $player.flags.fem_style.unisex != "" && !$player.locations.sexstore>>
<<addEvent 'sexstoreOpeningEvent'
'{"trigger":"always","type":["next"],"location":"room_mall","priority":100}'
'{"szene":"event_mall_sexstore_opening"}'
>>
<</if>>
<<set $psy_session = {}>>
<<set $psy_session.first_changeclothes = false>>
<<set $psy_session.maxTag = "">>
<<set $psy_session.handjob = false>>
<<set $psy_session.blowjob = false>>
<<set $psy_session.cum = false>>
<<set $psy_session.deepthroat = false>>
<<set $psy_session.struggledeepthroat = false>>
<<set $npc_psychiatrist.sessions += 1>>
<<set $talkThemes = 0>>
<<if $npc_psychiatrist.sessions>1>>
<<if !$npc_psychiatrist.flags.changeclothes>>
<<set $npc_psychiatrist.flags.changeclothes = true>>
<<set $psy_session.first_changeclothes = true>>
<</if>>
<<initRoom>>
<<moveTo 'event_psychiatrist_1stsession_1'>>
<<else>>
<<moveTo 'event_psychiatrist_1stsession'>>
<</if>>/*#
#desc: wait for first psychiatrist session, see npc_boss, called for your session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 7)>>
<</if>>
<<set $player.location to "Lobby of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_anteroom.png" "./images/characters/npc_boss.png">>
<div id="invframe" class="scrolltext">
You wait a while in the lobby for your appointment. Since you have nothing else to do and can't find a magazine that sparks your interest you drift off to sleep. After a while, you don't know how long you've dosed off, you awaken, since your head started to slide off the chair. It seems like the receptionist of <<=setup.getNpcName('npc_psychiatrist', 'formal')>> has left the office in the meantime... maybe to get some office supplies, you guess. Looking at the wall-mounted clock you realise that your appointment was supposed to start several minutes. You're about to get up to find out what's going on when a tall, handsome gentleman opens the door leading to the office. Maybe in his late 40's or early 50's he is dressed in a perfect fitting pinstripe suit looking quite professional. His cold blue eyes scan the room like a predator, resting on you for a fraction of a second before he starts moving towards you with long, confident strides. You rise to shake his hand, assuming it is <<=setup.getNpcName('npc_psychiatrist', 'formal')>> welcoming you in since the receptionist is missing. Instead he brushes past you without bothering to even make eye contact, walking straight out the door and leaving the building. For a brief moment before he opened the glass door to the outside you could swear you saw his reflection smiling.<br>
<br>
As you stand there in the room with your still outstretched arm, looking like you've ordered and not picked up, you hear a feminine voice from the still open door leading into the office.<br>
<br>
"@@.npc_psychiatrist;<<=$player.call>> <<=$player.last_name>>? <<=$player.call>> <<if $player.flags.fem_style.name != "">><<=$player.original_first_name>><<else>><<=$player.first_name>><</if>> <<=$player.last_name>>? Could you please come into my office? Thank you!@@"<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_1" "Enter the Office." 120>>]
</div>/*#
#desc: meet psychiatrist for first time, offered chocolates
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<if $roomchange == true>>
<<set $npc_psychiatrist.profile = true>>
<<set $scene.startstress = $player.timebased.stress>>
<<storeVisual $player $npc_psychiatrist>>
<<if setup.getItemFromType("shoes") == "pink_thigh_highs" && setup.getItemFromType("corset") == "pink_satin_corset" && setup.getItemFromType("earring") == "gold_hoop_earrings" && !$npc_psychiatrist.flags.react_full_uniform_upgrade>>
<<set $npc_psychiatrist.flags.react_full_uniform_upgrade = true>>
<<setScene>>
<<set $scene.react_full_uniform = true>>
<</if>>
<</if>>
<<set $chocolate = "none">>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.sessions==1>>
You enter the office and close the door behind you. It is quite spacious, but not as vast as <<=ps(setup.getNpcName('npc_manager', 'formal'))>>. You see a large, heavy looking desk made of dark wood. You're no specialist when it comes to wood, but it sure looks expensive. The leather chair behind the table is empty. But on your left side you see a comfortable looking corner with a couch and a pair of heavy overstuffed leather chairs with a small table between them. The chairs are faced toward each other and one of the chairs is faced that it could be sideways to the couch. Sitting in one of the chairs is a young woman wearing attire better suited for a ball or another high society event than the office of a doctor of psychiatry. She is showing
<<if setup.getTotalValue('bimbofication')<4>>
quite a lot of cleavage by your standards.
<<else>>
a lot of cleavage.
<</if>>
<br><br>
She points her hand at the other chair.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "male">>
"@@.npc_psychiatrist;Have a seat Mr. <<=$player.last_name>>. I am <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>, but please, call me <<=setup.getNpcName("npc_psychiatrist", "first")>>. Let me start by saying that I am delighted to make your acquaintance.@@"
<<case "unisex">>
"@@.npc_psychiatrist;Have a seat ...errr... Mister. Mister. Excuse me, if I may be somewhat blunt about this matter, but do you prefer the pronoun Mister, Misses or something different?@@"<br>
<br>
You are puzzled for a moment, but then again, your clothes don't really give much indication about your preferred gender at the moment. You explain to her that Mister is okay for the time being.<br>
"@@.npc_psychiatrist;Very well Mr. <<=$player.last_name>>. I am <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>, but please, call me <<=setup.getNpcName("npc_psychiatrist", "first")>>. Let me start by saying that I am delighted to make your acquaintance.@@"
<<case "female">>
"@@.npc_psychiatrist;Have a seat Mister... Oh. I am terribly sorry, but according to my documents I was expecting a male.@@"<br>
<br>
She puts her non existent glasses back into place, focusing her sight onto a computer monitor on the side of her table.<br>
<br>
<<if $player.flags.fem_style.name != "">>
"@@.npc_psychiatrist;Oh, look, there's an addendum, it seems things were changed recently... Your name... not your gender.@@""
<<else>>
"@@.npc_psychiatrist;Of course name and gender says nothing about a preferred clothing style.@@""
<</if>>
<br><br>
"@@.npc_psychiatrist;Anyway, you should feel safe here, you can be whatever, or whoever you want while you're inside these walls. I am <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>, but please, call me <<=setup.getNpcName("npc_psychiatrist", "first")>>. Let me start by saying that I am delighted to make your acquaintance.@@"
<</switch>>
<br><br>
<<printThought $player "THAT is <<=setup.getNpcName('npc_psychiatrist', 'formal')>>?">><br>
<br>
She reaches a hand across the table for you to shake. You hesitate for a second, sorting your thoughts and give her a firm handshake.<br>
<br>
"@@.npc_psychiatrist;What I've gathered from your hesitation and your reaction from earlier, I assume you've expected something different, am I right? Is it my gender? Perhaps the way I dress?@@"<br>
<br>
You shake your head and explain, you're simply surprised by how young looking she is. If you had to guess you would put her somewhere between 24 and 26 years old.<br>
<br>
"@@.npc_psychiatrist;Well <<=$player.first_name>>... can I call you by your first name? I think the informality helps build a certain trust between a psychiatrist and their client.@@"<br>
<br>
You nod and tell her it's okay to call you by your first name.<br>
<br>
"@@.npc_psychiatrist;Well <<=$player.first_name>>, I can reassure you, I have plenty of years of experience to show for. How about this. I tell you a little bit about myself and then you tell me a little bit about yourself. Nothing too personal. Just a little bit of smalltalk to ease the tension.@@" <<=setup.getNpcName('npc_psychiatrist', 'first')>> says while extending a box filled with white, pink and brown chocolate morsels towards you. "@@.npc_psychiatrist;Here, take one.@@"<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a white one." 120 '<<set $chocolate = "white">><<set $npc_psychiatrist.flags.chocolate.white += 1>>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a pink one." 120 '<<set $chocolate = "pink">><<set $npc_psychiatrist.flags.chocolate.pink += 1>>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a brown one." 120 '<<set $chocolate = "brown">><<set $npc_psychiatrist.flags.chocolate.brown += 1>>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2_repeat" "Refuse to take one." 120>>]
<<else>>
You wait in the lobby until the receptionist calls your name and directs you to enter the office. On the inside waits <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, smiling at you. As you get closer to the desk she reaches her hand across to shake yours.
<<if $npc_psychiatrist.hypnosis>1>>
Her demeanour appears quite different, compared to the VR Hypnosis sessions, for some reason.
<</if>>
<<if $scene.react_full_uniform>>
From the moment she lays eyes on you <<=setup.getNpcName('npc_psychiatrist', 'first')>> looks at you with a lusty smile. <<if $npc_psychiatrist.flags.blowjob > 0 || $npc_psychiatrist.flags.handjob > 0 || $npc_psychiatrist.flags.analsex > 0>>Since she is sitting out in the open rather than behind her desk there no mistaking the aroused bulge between her legs.<<else>>She is standing only off-angle from you, though you cannot put your finger on why.<</if>>
<br><br>
"@@.npc_psychiatrist;Wow, you mentioned the different options for "enhancing" your uniform but I never thought they would come together this well. There is no denying that you are becoming quite the head-turning, scratch that, whiplash-inducing, secretary. Congratulations!@@"<br>
<br>
"@@.npc_psychiatrist;Now, then; would you kindly take a chocolate?@@"<br>
<br>
<<else>>
"@@.npc_psychiatrist;Have a seat <<=$player.call>> <<=$player.last_name>>. I am delighted to see you again. Please,@@" she says while handing you a box of chocolates, "@@.npc_psychiatrist;would you kindly take one. You know I won't take no for an answer.@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a white one." 120 '<<set $chocolate = "white">><<set $npc_psychiatrist.flags.chocolate.white += 1>>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a pink one." 120 '<<set $chocolate = "pink">><<set $npc_psychiatrist.flags.chocolate.pink += 1>>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a brown one." 120 '<<set $chocolate = "brown">><<set $npc_psychiatrist.flags.chocolate.brown += 1>>'>>]<br>
<</if>>
</div>/*#
#desc: eat chocolate at start of session, psychiatrist comments on clothing, start session proper
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.sessions==1>>
You take a <<=$chocolate>> chocolate from the box and put it into your mouth. It tastes like
<<switch $chocolate>>
<<case 'white'>>white chocolate filled with cheesecake flavour.
<<case 'pink'>>white chocolate filled with strawberry flavour.
<<case 'brown'>>chocolate filled with nougat cream and hazelnut.
<</switch>>
It's really tasty.<br>
<br>
<<printThought $player "Hmm... Yummie!">><br>
<br>
"@@.npc_psychiatrist;See, it's that kind of expression I've wanted to see. Chocolate makes everything better.@@"<br>
<br>
You ask her, what's with the chocolate and if it's a part of the evaluation.<br>
<br>
"@@.npc_psychiatrist;Well, no. The white one is filled with a truth serum, the pink one with a giant dose of estrogen and the brown one with a dose of testosterone.@@"<br>
<br>
<<printThought $player "WHAT?!">><br>
<br>
"@@.npc_psychiatrist;Relax, I'm just joking. No, it's simply that chocolate produces happiness hormones. It gives you a happy high, so to speak. That's all. Plus I like chocolate a lot. Like really a lot.@@" she says to you while grinning from one ear to the other.<br>
<br>
With the ice broken you're surprised at how easily you start talking about some things you're both interested in, like gaming. You are more on the retro side of the spectrum, like classic games from the early two-thousands, she is more into modern Virtual Reality Games, especially with the new system from Songa and <<=$player.flags.faultcompany>>. You shudder for a short moment, as this word meets your ears. After a short talk between the two of you she hands you a datapad with a multiple choice test.<br>
<br>
"@@.npc_psychiatrist;I think you're ready now <<=$player.first_name>>. This is your mandatory corporate evaluation. Whatever you answer here will only be between the two of us. It is a set of standardized questions regarding your loyalty towards Social Interaction Service Syndicate Inc. My job is to rate your reactions while you answer our questions. I'm kind of a human lie detector, and I am very confident in my skills.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_1' 'Start the assessment.' 180>>]
<<else>>
You take a <<=$chocolate>> chocolate from the box and put it into your mouth. It tastes like
<<switch $chocolate>>
<<case 'white'>>white chocolate filled with
<<if setup.getTotalValue('cum')>5>>
<<getWordCum $player>>. You lick your lips with delight
<<else>>
cheesecake flavour.
<</if>>
<<case 'pink'>> white chocolate filled with
<<if (setup.getTotalValue('feminization')>=8) && (setup.getTotalValue('submission')>=8)>>
dreams of being the perfect sissy slave. You moan softly while savoring the flavour.
<<else>>
strawberry flavour.
<</if>>
<<case 'brown'>> chocolate filled with
<<if (setup.getTotalValue('penis')>5)>>
the heady flavour of a big <<getWordPenis $player>>. You lick your lips with delight.
<<else>>
nougat cream and hazelnut.
<</if>>
<</switch>>
You really like these.<br>
<br>
<<printThought $player "Hmm... Yummie!">><br>
<br>
"@@.npc_psychiatrist;I can see that you like these. I do too, that's good, very good.@@"<br>
<br>
<<if $npc_psychiatrist.flags.changeclothes>>
<<if $psy_session.first_changeclothes>>
<<if $npc_psychiatrist.hypnosis>=1>>
"@@.npc_psychiatrist;<<=$player.first_name>>, your fondness of wearing... interesting clothes has not gone unnoticed during our sessions. So, I thought of something that might make it easier for you to open up to me. If you'd like to, you can use the changing room leading to my laboratory to change into something you'd feel more comfortable in. What do you say? And <<=$player.first_name>>, I really mean it, when I say wear whatever you like. Even if you want to feel jubilant in your birthday suit that's fine with me. But remember, this is all for therapeutic purposes.@@"
<<else>>
"@@.npc_psychiatrist;So, <<=$player.first_name>>, I believe an important part of therapy is feeling comfortable to explore. Towards that end I have a small changing room that you may avail yourself of if you would like to... experiment. And when I say experiment remember that this is a safe place, if you want to to feel jubilant in your birthday suit that's fine with me. Just remember, this is all for therapeutic purposes.@@"
<</if>>
<<else>>
"@@.npc_psychiatrist;<<=$player.first_name>>, if you like, you can change your clothes back in the changing room again.@@"
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Take her up on the offer and go to the changing room.' 180>>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Thank her for the offer but decline.' 180>>]
<<else>>
"@@.npc_psychiatrist;Well, let's get started, shall we?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Continue.' 180>>]
<</if>>
<</if>>
</div>/*#
#desc: given quiz for first session, zoom through the "SFW" portion
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You look at the datapad, the first page of questions are pretty straightforward, presenting situations that would involve how you would handle a breach of information or if you would publicly share information that could compromise the company. You answer truthfully that you would only give this information to someone else if there was imminent danger to someone or something. Everything else should be handled internally.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_2' 'Move to the next section' 660>>]
</div>/*#
#desc: psyichiatrist quiz starts getting strange + malfunctioning, instructed to continue
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
Moving onto the second part of the assessment the questions take a sudden turn for the strange. Even weirder, you find that many of the answer options don't work. While the prompt indicates you should answer each question with a score 1-10, with higher numbers corresponding to greater agreement with the passage in question, the machine only seems to accept limited responses, defaulting to 10 in nearly all cases and only sometimes allowing the selection of 1 as an alternative.<br>
<br>
You raise a concern to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> but she seems unbothered.<br>
<br>
"@@.npc_psychiatrist;I apologise for the faulty equipment, I guess you would know all about software bugs, right? Regardless, you must complete this assessment as part of your onboarding. Go ahead and just round things to whatever closest matches your feelings, and do your best to answer as honestly as you can, alright?@@"<br>
<br>
Glancing over some of the questions you gulp.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_3' 'Continue the assessment as instructed.' 660>>]<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_3_simple' "This is too much reading, isn't there an override?" 660>>]<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_3_skip' 'Screw it, just answer yes to everything.' 660>>] <<hint $options "Will force-enable all content.">>
</div>/*#
#desc: psychiatrist assessment questions (questions generated via javascript)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<printAssessmentQuestions>><br>
<br>
<<printThought $player "What the... I really hope that this is just a test how I react under strange circumstances...">><br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_4' 'Finish the assessment' 660>>]
</div>/*#
#desc: psychiatrist assessment questions (questions generated via javascript)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You fiddle with the tablet a bit and suddenly you're facing a far simplified version of the questionaire, though it seems glitch and several options are not changeable.<br>
<br>
<<printThought $player "Huh, I wonder if this is a sign of my future? Nah, probably just another computer error.">><br>
<br>
<<printAssessmentSummary>><br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_4' 'Finish the assessment' 660>>]
</div>/*#
#desc: skip assessement (auto's everything to yes)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<activateAllFetishes>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You blitz through the rest of the questionaire without really reading it, agreeing to everything like it was a EULA.<br>
<br>
<<printThought $player "I'm sure this won't lead to any weird surprises...">><br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_4' 'Finish the assessment' 660>>]
</div>/*#
#desc: finish psychiatrist quiz
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.rape==true>>
You hand the datapad back to <<=setup.getNpcName('npc_psychiatrist', 'first')>> only for her smiling face to melt into a deep frown.<br>
<br>
"@@.npc_psychiatrist;Oh.... Oh no. I do not know how you made it this far in life harboring such... urges, but I have a legal duty to report you, for yourself as well as the greater community. If it helps any the rest of your responses say I would have really enjoyed working with you, but... alas...@@"<br>
<br>
[<<moveTo 'gameover_pro_rape' 'Uh-oh'>>]
<<else>>
After you're done you hand the datapad back to <<=setup.getNpcName('npc_psychiatrist', 'first')>>. You once again raise your concerns about the odd second half and your inability to answer properly but she poo-poohs your concerns, though she seems to be pleased as she smiles back at you.<br>
<br>
"@@.npc_psychiatrist;Don't worry about that second part, it's more to see how you behave under pressure. I can tell this much already: You will get my recommendation. In this day and age loyalty to a company is important, but you should never forget ethics. Well, the mandatory evaluation portion is done. I'm not sure how much your employer <<=setup.getNpcName('npc_manager', 'other')>> told you, but you are allowed the remainder of our time as a regular psychiatrist visit. So, if there is anything else bothering you, or anything you want to tell me whatsoever, there is still plenty of time left in our hour.@@"<br>
<br>
Suddenly her phone rings, from her words it sounds like she's talking to her receptionist.<br>
<br>
"@@.npc_psychiatrist;So sorry but I just need to take care of something, won't be but a minute. You stay right there.@@"<br>
<br>
She zips past you without another word. Looking across the desk it appears the questionaire is in "admin" mode, you could review, or even tweak your replies if you wanted to.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_5' 'Check the results' 660>>]<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_6' 'Just wait for her to get back' 660>>]
<</if>>
</div>/*#
#desc: review psychiatrist quiz
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png">>
<div id="invframe" class="scrolltext">
Sliding the tablet across the table you look at the "summary" page.<br>
<br>
<<printAssessmentSummary>><br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Finish making tweaks and put the tablet back' 660>>]
</div>/*#
#desc: wait for psychiatrist to return
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You wait patiently for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to return and she soon re-enters the room, returning to her desk.<br>
<br>
"@@.npc_psychiatrist;As I was saying before, your results are all fine; so what else would you like to talk about today?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Choose your topic.' 660>>]
</div>/*#
#desc: enter psychiatrist changing room
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "I already changed my clothes. I'm going to stick with these for the time being.">>
<</if>>
<<set $player.location to "Changing Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" >>
<div id="invframe" class="scrolltext">
You enter the rather spacious changing room. There's a big, well lit double mirror with washbasins in the room as well.
<<if setup.getTotalValue('makeup')>0>>
You could use these to change your makeup.
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Changing room">><<set $return_makeuproom="event_psychiatrist_1stsession_2_changingroom">><<set $makeuproom_image="./images/scenes/makeup_01.png">><<set $return_makeuproomtext="Return to the Changing room.">><<set $makeuproom_water=true>>'>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_1stsession_2_return' 'Return to the Office.' 30 '<<set $player.cutscene.lockinventory = true>>'>>]
</div>/*#
#desc: psychiatrist changing room/change clothes before psychiatrist session
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "Changing Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" >>
<div id="invframe" class="scrolltext">
You enter the rather spacious changing room. There's a big, well lit double mirror with washbasins in the room as well.
<<if setup.getTotalValue('makeup')>0>>
You could use these to change your makeup.
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Changing room">><<set $return_makeuproom="event_psychiatrist_1stsession_changingroom_leave">><<set $makeuproom_image="./images/scenes/makeup_01.png">><<set $return_makeuproomtext="Return to the Changing room.">><<set $makeuproom_water=true>>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_psychiatrist_lobby" "Leave for the lobby." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<if $player.flags.fem_style.makeup == "" && setup.getCurrentMakeup($player) != "" && setup.getCurrentMakeup($player) != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should take this off.@@]
<<else>>
[@@.link_locked;You're not going to leave here, dressed like this!@@]
<</if>>
<</if>>
</div>/*#
#desc: enter psychiatrist office from changing room
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $psy_session.maxTag = setup.getTagFromList(['bold','sissy','modest','cute','male'])>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You return to the office. As you leave the changing room <<=setup.getNpcName('npc_psychiatrist', 'formal')>> takes a good, long look at your outfit.
<<if setup.getIndecentValue($player)>95>>
Or rather, the lack thereof.
<</if>>
<br><br>
<<switch $psy_session.maxTag>>
<<case 'bold'>>
"@@.npc_psychiatrist;Very good. You're embracing your inner scantily clad slut. Don't worry, that is perfectly normal for some people. I show my cleavage for a reason as well, so trust me when I say being sexy can be very fulfilling, if you know how to display yourself and leverage the results.@@"
<<case 'sissy'>>
"@@.npc_psychiatrist;Ah. Yes, I had a feeling that you dressed up like this. There is something very feminine and submissive about you, and as I can see, you are ceasing denying it as. Very good. Embrace your sissy side, and it will lead you to a path of fulfillment... mostly of others, but maybe that's exactly what you want.@@"
<<case 'modest'>>
"@@.npc_psychiatrist;Oh. I was hoping for something more exciting, this just looks conservative, it hardly says anything about the inner you. Well, you can't win them all, can you?@@"
<<case 'cute'>>
"@@.npc_psychiatrist;Oh. I was hoping for something more exciting, but it does look very cute on you.@@"
<<case 'male'>>
"@@.npc_psychiatrist;Ah, yes. You got cold feet at the last moment. That is indeed a pity, but understandable.@@"
<<default>>
<<if setup.getIndecentValue($player)>95>>
"@@.npc_psychiatrist;Oh. Well, did anyone ever tell you, that you have hips to die for? I'd even say with hips like these you never stood a chance at all.@@"
<<else>>
"@@.npc_psychiatrist;Ah, yes. Or rather no. I am not getting any useful information from this. Unless your intention was to confuse me? Not as therapeutically useful, but well done I suppose.@@"
<</if>>
<</switch>>
<br><br>
"@@.npc_psychiatrist;Now, please take a seat and we will start with your counseling session.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Sit down.' 180>>]
</div>/*#
#desc: refuse chocolate at start of first psychiatrist session
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
For a split second she looks at you like you just kicked a puppy, but regains her composure pretty quickly.<br>
<br>
"@@.npc_psychiatrist;Humor me. See it as part of your evaluation if you must. It's not like the end of Mass Effect 3 or something...@@"<br>
<br>
<<printThought $player "What?">><br>
<br>
You look kind of puzzled. You got the reference, since retro gaming is one of your hobbies, but how did she know you would? Or is this already a part of the evaluation? You really don't know but decide to play her game.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a white one." 120 '<<set $chocolate = "white">><<set $npc_psychiatrist.flags.chocolate.white += 1>>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a pink one." 120 '<<set $chocolate = "pink">><<set $npc_psychiatrist.flags.chocolate.pink += 1>>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a brown one." 120 '<<set $chocolate = "brown">><<set $npc_psychiatrist.flags.chocolate.brown += 1>>'>>]<br>
</div>/*#
#desc: list discussion topics (themes) for first psychiatrist session
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
/%
<<if $npc_psychiatrist.sessions==1>>
"@@.npc_psychiatrist;Okay, so what to you want to talk about?@@"<br>
<br>
<</if>>
%/
<<if setup.getNpcThemes('npc_psychiatrist')>0>>
<<if $talkThemes < 4>>
<<switch $talkThemes>>
<<case 0>>
"@@.npc_psychiatrist;So <<=$player.first_name>>, what are you willing to share with me today? Has anything happened to you lately you want to talk about? Maybe just to tell it to someone or to get a different perspective?@@"<br>
<br>
<<case 1 2>>
"@@.npc_psychiatrist;Anything else you want to talk about <<=$player.first_name>>? You know, you can talk to me about anything. Anything at all!@@"<br>
<br>
<<case 3>>
"@@.npc_psychiatrist;We still have some time left <<=$player.first_name>>. Any last topic you want to unburden yourself of?@@"<br>
<br>
<</switch>>
You take a second to sort your thoughts. Which of your recent events are you willing to share with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>?<br>
<br>
<<printNpcThemeCategory
'npc_psychiatrist'
'event_psychiatrist_1stsession_listofthemes'
'event_psychiatrist_theme_details'
>>
[<<moveTo "event_psychiatrist_1stsession_leavearly" "There is nothing else you want to talk about.">>]
<<else>>
"@@.npc_psychiatrist;Well, it looks like our time for today is up. I hope I was able to shed some light on your issues.@@"<br>
<br>
<<if $scene.startstress > $player.timebased.stress>>
You feel less stressed, so the therapy sessions seems to have worked.
<<elseif $player.timebased.stress == 0>>
Though you were not stressed in the first place the therapy session has given you some interesting analysis and things to think about.
<<else>>
Though you thank her for the session on the inside your feelings are still in turmoil. The session does not appear to have eased any of your stress.
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_1stsession_1_leave" "Make yourself ready to leave." 60 "<<set $scene.leave_early=false>>">>]
<</if>>
<<else>>
There isn't a single thing you can think of to talk about. Kind of strange if you think about it, given all the strange things that have happened to you lately.
<<if $scene.startstress > $player.timebased.stress>>
But you feel less stressed, so the therapy sessions seem to work. You thank <<=setup.getNpcName('npc_psychiatrist', 'first')>> for her time and bid her farewell.
<<elseif $player.timebased.stress == 0>>
Though you were not stressed in the first place the therapy session has given you some interesting analysis and things to think about.
<<else>>
Though you thank her for the session on the inside your feelings are still in turmoil. The session does not appear to have eased any of your stress.
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_1stsession_1_leave" "Make yourself ready to leave." 60 "<<set $scene.leave_early=true>>">>]
<</if>>
</div>/*#
#desc: psychiatrist theme detail selection
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $talkThemes >= 4>>
<<initRoom>>
<<moveTo 'event_psychiatrist_1stsession_listofthemes'>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;And what do you want to talk about, regarding this theme <<=$player.first_name>>?@@"<br>
<br>
You think for a second about what, precisely, you want to discuss.<br>
<br>
<<printNpcThemeDetails
'npc_psychiatrist'
$returnPassage
$currentNpcTheme
>>
</div>/*#
#desc: leave psychiatrist session early
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Are you sure that there is nothing else you want to talk about? We still have some time left, and you look like you have quite a collection of issues that lie heavy on your mind.@@"<br>
<br>
You think about this for a moment.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_listofthemes" "You decide to stay a little bit longer.">>]<br>
[<<moveTo "event_psychiatrist_1stsession_1_leave" "You thank her and leave anyway." 60 "<<set $scene.leave_early=true>>">>]
</div>/*#
#desc: leave psychiatrist session, offered hypnosis study if first session
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<include addPsychiatristEndless>>
<<if !$scene.leave_early>>
<<gainWillpower $player 1>>
<<addPopUpText "You gained one point of Determ... err... Willpower.">>
<</if>>
<</if>>
<<set _sessionsleft = $npc_psychiatrist.free_sessions - $npc_psychiatrist.sessions>>
<<set _tmpVal = setup.checkOutsideDecency($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
The session concluded you rise to your feet, spending so much time talking things over having buoyed your spirits.<br>
<br>
<<if _sessionsleft > 0>>
"@@.npc_psychiatrist;Okay you still have
<<if _sessionsleft == 1>>
one free session
<<else>>
<<=_sessionsleft>> free sessions
<</if>>
remaining.@@"
<<else>>
"@@.npc_psychiatrist;Oh, I am very sorry <<=$player.first_name>>. You have no more free sessions left. If you are still interested in your mental health, please come next week anyway but I am afraid I will have to charge you for my time. Remember I am always looking for assistance with my experiments if you would like to have a session without the monetary expenditure.@@"
<</if>>
<br><br>
<<if $npc_psychiatrist.sessions!=1>>
<<if !$currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') || $currentTasks['psychiatrist_endless_hypnosis_1'].finished>>
"@@.npc_psychiatrist;Oh, so I just wanted to let you know that I'm still running that hypnosis study. I know you missed before but well... if you'd like to re-enroll, just let me know and I'll... fit you in.@@"<br>
<br>
[<<moveTo "room_psychiatrist_hypno_reenroll" "Ask to re-join the hypnosis study." 60 "<<set $player.cutscene.lockinventory = false>>">>]<br>
<<if _tmpVal>>
[<<moveTo "room_psychiatrist_lobby" "Thank her and leave the office." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
"@@.npc_psychiatrist;Our next session is next Friday at 14 o'clock. See you then, <<=$player.first_name>>.@@"
<br>
<br>
You shake her hand and leave her office.
<<if !_tmpVal>>
As you're almost out the door you take a look down yourself and rush back into the changing room to dress in a decent manner.
<</if>>
<br><br>
<<if _tmpVal>>
[<<moveTo "room_psychiatrist_lobby" "Thank her and leave the office." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
<<else>>
"@@.npc_psychiatrist;After that I am available for 200 credits per hour. For the sake of your mental health, I would recommend you visit me a few more times as you look terribly stressed and I am certain there are a few things I can help you with..@@"<br>
<br>
<<printThought $player "200 creds? There's no way I can afford this and get through the month... Well, my mental stability could really use some help, but it looks like the answer is still n...">><br>
<br>
"@@.npc_psychiatrist;You just got that "that is way too much Money" expression on your face? Anything troubling you? I still have a few minutes before my next custom... err... client shows up. So, would you kindly tell me about your money troubles?@@"<br>
<br>
You try to introduce your current money problems, and how they kind of stress you out, especially having to pay the whole rent now out of your own pocket. You're afraid that you're not going to see the money your old company would technically still owe you, since you messed up pretty badly before they fired you. And if it wasn't for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> help you'd be totally broke by now.<br>
<br>
"@@.npc_psychiatrist;Well, money is one issue that won't magically go away if you talk enough about it. Okay, hardly any problem goes away magically by simply talking about it. There is always some additional effort required. And these sessions won't be free forever. Social Interaction Service Syndicate Inc. has only paid for so much.@@"<br>
<br>
There is a short, awkward silence.<br>
<br>
"@@.npc_psychiatrist;Ahem. As I was saying, money can be quite the issue, can't it? But I might have a solution... okay, rather a small remedy for you, if you are interested. I'm currently running a study on how hypnotic therapies can benefit from virtual reality. If you are willing to join this study it would cover the costs of your sessions and I can even pay you a bonus of up to 40 credits per therapy session. Maybe even more if you make it into the advanced part of the therapies. We can do these sessions twice a week; Sunday and Wednesday. But it just happens that one of my guinea pigs... ahem... I mean one of my voluntary study participants cancelled his appointment this evening. So I can introduce you to the system today, at 18 o'clock. Just show up and I'll plug you into the machine. It'll take about one hour. If it helps your decisions all of my preliminary data shows that it does wonders for your dopamine level. And raising your well being reduces your stress levels as well. So it would be a win/win situation for you. So, what do you say, did I spark your interest, <<=$player.first_name>>?@@"<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_1_leave_hypnosis" "Accept to be part of the study." 300 "<<set $hypnosis_accepted = true>>">>]<br>
[<<moveTo "event_psychiatrist_1stsession_1_leave_hypnosis" "Politely decline to be a part of the study." 300 "<<set $hypnosis_accepted = false>>">>]
<</if>>
</div>/*#
#desc: first psych session, offered hypnosis study + leave office
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $scheduleHypnoToday=true>>
<<include addHypnosisTask>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $hypnosis_accepted>>
"@@.npc_psychiatrist;Very good. You will not regret this decision. This will help you to become the person you have always wanted to be. That's really why I started this research project - to find better ways for people to become more sincere with themselves.@@"<br>
<br>
<<printThought $player "What exactly is that supposed to mean? Though I am kind of curious what kind of VR system they use.">><br>
<br>
"@@.npc_psychiatrist;Okay, so later today it is. Please be on time, since there are certain time slots for every participant and it takes time to prepare the system between sessions. Do not worry though, it will not take more then a hour, well maybe a little bit more, since it is your first session. Still, you should not worry about losing your whole Friday evening.@@"<br>
<br>
You nod in agreement.<br>
<br>
"@@.npc_psychiatrist;YES, we finally got one.... ahem... I mean... good. Nah, don't worry, I'm just playing tricks on your mind.@@"<br>
<br>
That is exactly what you're afraid of.<br>
<br>
"@@.npc_psychiatrist;Well then, I'll see you later today, and just a reminder that our next therapy session is next Friday at 14 o'clock. See you soon, <<=$player.first_name>>.@@"
<<else>>
"@@.npc_psychiatrist;Really? Aw, that is too bad. If you would reconsider your answer? How about this: since the slot is still free, I'll simply put you down. There, it's booked. You are free to show up if you get curious and change your mind between now and then. And if you don't show up, no harm done. Well, besides to your wallet, since it will remain pretty empty, won't it?, and you'll miss out on the benefits of participation, and I guess the cause of science will take a bit of a dent... really, on balance, it seems like you really ought to show up - totally your decision though!@@"<br>
<br>
<<printThought $player "That is actually true, and I am kind of curious what kind of VR system they use.">><br>
<br>
"@@.npc_psychiatrist;So, please. If you change your mind <<=$player.first_name>>, you're welcome to join us here this evening! Anyway, our next therapy session is next Friday at 14 o'clock. See you then, <<=$player.first_name>>.@@"
<</if>>
<br><br>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_psychiatrist_lobby" "Thank her and leave the office." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: failed to show up for the psychiatrist, but after the first, mandatory.
#status: FINISHED 0.5.0.6
#*/
<<set $player.location to "Call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<if $roomchange == true>>
<<include addPsychiatristEndless>>
<<set $npc_psychiatrist.sessions += 1>>
<<set $npc_psychiatrist.free_sessions -= 1>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are being called by <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Hey <<=$player.first_name>>. I assume you won't make it to our psychiatric appointment today. Don't worry, no harm done, but I still have to remove it from your credit. I hope you understand. I am well aware that you are unable to cancel your appointment, but that would be the Developers fault, not mine, right? Good. Would you kindly consider appearing at our next appointment? I'll book you for your usual time next Friday. No, that is not negotiable ... yet. At 14 o'clock, as usual?@@"<br>
<br>
<<if $npc_psychiatrist.free_sessions == 0>>
"@@.npc_psychiatrist;I am afraid that was the end of your free sessions, of course I would love it if you could help me out with my research and earn more!@@"
<<elseif $npc_psychiatrist.free_sessions < 0>>
<<set $npc_psychiatrist.free_sessions = 0>>
"@@.npc_psychiatrist;Of course you have been out of "free" sessions for awhile now... I would just love it it you came in to help me with my research!@@"
<</if>>
<<printThought $player "I kinda thought only the first session was mandatory, but I still feel kinda bad...">><br>
<br>
[<<moveTo $beforetasklocation "Put your phone away">>]
</div><<switch $now.getUTCDay()>>
<<case 0>>
<<set _tmpDate to setup.setNextDate($now, 5, 14, 0)>>
<<case 1>>
<<set _tmpDate to setup.setNextDate($now, 4, 14, 0)>>
<<case 2>>
<<set _tmpDate to setup.setNextDate($now, 3, 14, 0)>>
<<case 3>>
<<set _tmpDate to setup.setNextDate($now, 2, 14, 0)>>
<<case 4>>
<<set _tmpDate to setup.setNextDate($now, 1, 14, 0)>>
<<case 5>>
<<set _tmpDate to setup.setNextDate($now, 7, 14, 0)>>
<<case 6>>
<<set _tmpDate to setup.setNextDate($now, 6, 14, 0)>>
<</switch>>
<<set _taskCondition = setup.getConditions(_tmpDate, ['atPsychiatrist'])>>
<<set _text = 'You had another session with '+setup.getNpcName('npc_psychiatrist', 'formal')+'.'>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_therapy_mux",
"text": _text
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_apointment_failed",
"text": "task_psychiatrist_apointment_1_failed"
}>>
<<addTask 'psychiatrist_endless_apointment_1'
$now
'npc_psychiatrist'
'task_psychiatrist_endless_apointment_1'
_taskCondition
_taskDone
_taskFailed>>/*#
#desc: talk to psychiatrist about breaking up with girlfriend
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You start talking about your recent break up with your girlfriend of 3 years <<=setup.getNpcName('npc_exgirlfriend', 'full')>>. It's the first time you talked to someone so openly about this whole ordeal. Just talking about it makes you realise how much it encumbered you and it feels good to get this all out of your system once and for all, to move on.<br>
<br>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how you two met, how you got together, how you moved together one year ago and how the both of you had planned to stay virgin until the wedding. And then you tell her about, <<=setup.getNpcName('npc_yogateacher', 'first')>>, motherfucking <<=setup.getNpcName('npc_yogateacher', 'full')>>, that son of a bitch yoga teacher, with his impressive physique and perfect smile. And how you caught them in bed together a short while ago.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> takes a few notes and nods from time to time, but does not interrupt your story, until you get to the very last part.<br>
<br>
"@@.npc_psychiatrist;And how did that make you feel? The part where you found them in bed together.@@"<br>
<br>
You tell her that it made you feel angry. More angry than you've ever been before.<br>
<br>
"@@.npc_psychiatrist;Yes, but what was the source of your anger. What was it aimed at? Was it really your girlfriend or the yoga teacher with the and I quote "abs made of steel?" And please answer truthfully, there is no one here you have to impress.@@"<br>
<br>
That sentence made you think... a lot. You were angry, but not at your girlfriend... well not 100 percent. You were angry at yourself, for wasting your life not trying to explore your sexuality when you had the chance.<br>
<br>
"@@.npc_psychiatrist;See? Now we start to make progress. I know this whole ordeal must have been hard on you, especially since you've also lost your old job recently. But I think it would be best if you saw this whole thing as an opportunity. New Job, new lifestyle, new ways to explore your sexuality!@@"<br>
<br>
<<printThought $player "Well, that could explain some of my behaviour lately...">><br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: first session talk to psychiatrist about your manager
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You try to talk about <<=setup.getNpcName('npc_manager', 'formal')>> and her form of disciplinary measures but get interrupted by <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> rather brusque comment.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, let me stop you here for a moment. You are lucky you're talking to me about this, since there is a confidentiality obligation between the two of us. But I know your contract, since I had to read it as a part of the preparation for your evaluation. Just to make sure you understand: you are not allowed to talk to anyone outside your company about this, other than me, of course, and even within the company you are only allowed to talk to <<=setup.getNpcName('npc_manager', 'other')>> or to her superiors. Do you understand?@@"<br>
<br>
You nod slightly, still slightly confused about the rather unexpected outburst.<br>
<br>
"@@.npc_psychiatrist;Good. Please continue then.@@"<br>
<br>
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the first disciplinary measures you received,
<<if setup.checkTaskCompleted('manager_first_workday_morning')==1>>
even though you did everything exactly what <<=setup.getNpcName('npc_manager', 'formal')>> ordered you to do the day before. That the first disciplinary measure was mandatory, which you thought was a little more then unfair.
<<else>>
which was mainly your own fault, since you did ignore the orders she had given you the day before.
<</if>>
<<if $player.flags.firstDPassissy>>
<<switch $player.flags.fem_style.panties>>
<<case 'voluntary'>>
Getting spanked while wearing your ex-girlfriend's underwear, was something you did not think would ever occur to you.<br>
<br>
"@@.npc_psychiatrist;Pardon. Can you repeat that last part? For some reason I just thought you said you were spanked by your manager in your girlfriends underwear.@@"
<<case 'obedient'>>
Getting spanked while wearing cute lingerie from a wrong online order was something you did not think would ever occur to you.<br>
<br>
"@@.npc_psychiatrist;Pardon. Can you repeat that last part? For some reason I just thought you said you were spanked by your manager in cute lingerie.@@"
<<case 'forced'>>
You did not think that going commando would have such far-reaching implications, like being forced into sissy lingerie. That turn of events wasn't something you could have ever imagined happening to you.<br>
<br>
"@@.npc_psychiatrist;Waaait a Second! Ahem. I mean, Pardon. Could you repeat that last sentence? For some reason, I just thought, you said you were spanked while wearing some sissy lingerie, provided by your Manager.@@"
<<case 'money'>>
Everything had seemed so simple, get new underwear from the mall and go to work but then... Sure you had saved some money but at what cost?<br>
<br>
"@@.npc_psychiatrist;Pardon. Can you repeat that last part? For some reason I just thought you said you were spanked by your manager in sexy lingerie.@@"
<</switch>>
<br><br>
<<printThought $player "Oh <<getWordGod $player>>. Why am I telling her all these details?">><br>
<br>
Your face turns bright red. Maybe you should have left that part out. You try to explain that your washing machine destroyed all your other underwear, and one thing lead to another... and... you start to fall over your own words after a while and simply stop explaining what happened and just trail off as you wait for her comments.
<<else>>
Getting spanked in your underwear by your new Boss was something you did not think would ever occur to you. The fact that it made you horny an even greater shock.
<</if>>
Then you recount your current task, to wear female underwear, even including a bra every day to work, so you will "learn humility." <br><br>
"@@.npc_psychiatrist;Let me ask you something, <<=$player.first_name>>. Are you wearing female underwear right now?@@"<br>
<br>
Panic rises within you, and you shake your head while blushing quite a lot.<br>
<br>
<<if setup.checkItemTypeWornTag("panties","female")>>
"@@.npc_psychiatrist;<<=$player.first_name>>, I have already told you, I am pretty proud of my ability to read other people. There is really no need to bother trying to lie to me.@@"<br>
<br>
You gulp, nod and finally admit you're wearing female underwear right now.<br>
<br>
<<switch(setup.analyzeWornTags(['female','male','unisex']))>>
<<case 'male'>>
"@@.npc_psychiatrist;Now, that wasn't that hard, was it? I am not going to judge you over your chosen apparel, rather the opposite, I'm congratulating you on expanding your sexuality, even if you are mostly keeping it to yourself, for now. You go, girl!@@"
<<case 'female'>>
"@@.npc_psychiatrist;Now, to tell you the truth... it was not very hard to guess. It would be rather odd if you didn't wear female underwear, looking at your regular clothes. Anyway, I am not going to judge you over your chosen apparel, rather the opposite, I'm congratulating you on expanding your sexuality. You go, girl!@@"
<<case 'unisex'>>
"@@.npc_psychiatrist;Now, to tell you the truth... your clothes are rather heavy with meaning, if you know what I mean. You seem to be at a crossroads and if I interpret your signals right, you are drifting towards your feminine side. Anyway, I am not going to judge you over your chosen apparel, rather the opposite, I will congratulate you on expanding your sexuality. You go, girl!@@"
<</switch>>
<<else>>
"@@.npc_psychiatrist;That was a rather defensive reaction, don't you agree? Maybe you should try and wear them in your free time as well so that you can better move past these negative emotions. You never know, it could feel quite empowering!@@"
<</if>>
<br>
<br>
You are unsure how to feel about this suggestion.<br>
<br>
"@@.npc_psychiatrist;Anyway, here is how I see the whole situation. You are obviously kind of ... interested in this whole situation, but you're not happy with the implications of it being a punishment. Maybe you should try to give in to her demands, perhaps if you're on her good side, she will do these things to you because you both want it, and not because you're a bad boy
<<if setup.checkItemTypeWornTag("panties","female") || $player.flags.firstDPassissy>>
... sorry, a bad girl
<</if>>
who deserves to be punished.@@"<br>
<br>
<<printThought $player "...">><br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk to psychiatrist about being required to wear unisex clothing
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<switch $player.flags.fem_style.unisex>>
<<case "obedient">>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> that a spill in the lunchroom resulted in your clothing being ruined, but your manager "helped" you out, with a change of clothes that were a bit... different. In both style and colour that you'd normally wear. You follow up by noting that <<=setup.getNpcName('npc_manager', 'formal')>> was so enamoured with your new look that she revised your dress code to wear "similar" items going forward.<br>
<br>
"@@.npc_psychiatrist;First off, let me express my sympathy for such a traumatic event, though at least you weren't injured, or the thought of your pretty face being burned, it would have been a real tragedy! As for the rest, well, it seems quite generous of <<=setup.getNpcName('npc_manager', 'first')>>... errr... I mean <<=setup.getNpcName('npc_manager', 'formal')>> of course, to have you provided with a free change of clothing.
<<if setup.analyzeWornTags(['female','male','unisex'])=='unisex'>>
If, as I suspect, what you are wearing is what she gave you well... I can see why she made the change, you fill those out almost perfectly!
<<else>>
I do wonder why you aren't wearing your "new" uniform right now? I mean, you come here straight from work and given how impressed <<=setup.getNpcName('npc_manager', 'formal')>> was, well... I would have quite liked to see you so attired for
<<if setup.analyzeWornTags(['female','male','unisex'])=='female'>>
myself! Then again, I can see, why you're wearing them not right now.
<<else>>
myself!
<</if>>
<</if>>
@@"
<br><br>
You blush at the comment and she continues.<br>
<br>
"@@.npc_psychiatrist;Really, though, you should consider this an opportunity to expand your horizons. I've read the dress code for your position and well... to call it uninspired would be a compliment. Clothes like that are in these days so really, you got a free fashion upgrade! If I was you I would think of this change not as a restriction, but permission to free yourself to experiment with more... interesting attire. I would simply die in a Job with a dress code. Anyway, you have nothing to lose. And truly, it is practically a sin to hide your curves away beneath a boring pair of slacks and dress shirt.@@"<br>
<br>
<<printThought $player "I guess she's right, they are a lot more diverse then my usual office clothes, and, to be honest, more comfortable. I guess I'll try them for a while. Not like I got much of a chance with my new Boss...">>
<<case "forced">>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> that a little mishap ended you in hot water a short while ago and culminated in the fiery doom of some of your regular clothes.<br>
<br>
"@@.npc_psychiatrist;Well, given your behaviour <<=ps(setup.getNpcName('npc_manager', 'formal'))>> action is understandable, although the chosen method of disposing your clothes seems a little bit... shall we say, theatric. But if you would have studied your contract more thoroughly, you would have known all these little details. Of course I can understand why you choose to ditch such a boring lecture. There are more important things in life then studying, amirite?@@"<br>
<br>
That last word was underlined by a huge grin. You look away and continue to tell your story explaining how you were given some rather ambiguous clothes to wear as your secretary outfit.<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex'])=='unisex'>>
"@@.npc_psychiatrist;You mean like the ones you're wearing right now? I don't think ambiguous is the right word, they make you look rather feminine, if that's what you're afraid of or, perhaps, hoping for?@@"<br>
<br>
You gulp.<br>
<br>
<</if>>
"@@.npc_psychiatrist;You really shouldn't worry too much. Clothes like these are pretty in right now, and almost anyone can wear them. Plus they are nowhere near as boring as regular male office clothes, wouldn't you agree?@@"<br>
<br>
<<printThought $player "Well, they are a lot more diverse then my usual office clothes, and, to be honest, more comfortable. I guess I'll try them for a while. Not like I got much of a chance with my new Boss...">>
<<case "money">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about how, after a disaster at lunch that ruined some of your clothing, you agreed to a slight pay bump in exchange for a shift in your work attire to something "less masculine." <br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex'])=='unisex'>>
"@@.npc_psychiatrist;I see, and I note that this style does look quite complimentary on your body.@@"
<<else>>
"@@.npc_psychiatrist;I see, how are you liking the extra money, consider it worth it?@@"
<</if>>
<br><br>
You shrug.<br>
<br>
"@@.npc_psychiatrist;You really shouldn't worry too much. Clothes like these are pretty in right now, and almost anyone can wear them. Plus they are nowhere near as boring as regular male office clothes, wouldn't you agree?@@"<br>
<br>
<<printThought $player "Well, they are a lot more diverse then my usual office clothes, and, to be honest, more comfortable. I guess I'll try them for a while. The pay bump is nice, and it's not like I got much of a chance with my new Boss...">>
<<case "voluntary">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about your decision to start wearing less masculine clothing.<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex'])=='unisex'>>
"@@.npc_psychiatrist;I see... literally, in this case. I have to say, they do suit you, I encourage you to continue these experiments. It is when our inner and outer lives are in contradiction that we are the most unhappy. I think our time together has helped uncover more of your deeper self and if those discoveries lead to external changes as well... well, all the better!@@"
<<else>>
"@@.npc_psychiatrist;I see... well, not literally at this moment, though I can imagine how you might look. I encourage you to continue these experiments. It is when our inner and outer lives are in contradiction that we are the most unhappy. I think our time together has helped uncover more of your deeper self and if those discoveries lead to external changes as well... well, all the better!@@"
<</if>>
<br><br>
You thank her for the encouragement, agreeing that, though it took some courage the first time, you were surprised at how natural it ended up feeling.
<<default>>
ERROR, unknown fem_style unisex: <<=$player.flags.fem_style.unisex>>
<</switch>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist session, talk about advancing relationship w/manager
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You think about the situation for a moment, deciding to talk about one of your latest encounters with <<=setup.getNpcName('npc_manager', 'formal')>>. But after only mentioning her name you're interrupted by <<=setup.getNpcName('npc_psychiatrist', 'first')>> with a short "@@.npc_psychiatrist;Oh, this is going to be good, isn't it?@@" Your perplexed expression does not go unnoticed and she follows up with a short "@@.npc_psychiatrist;Please, do not mind me and continue.@@"<br>
<br>
Even though you thought of leaving out some of the raunchier details at first as soon as you start to talk you cannot keep yourself of blurting out every delicate of detail you can remember. You also cannot fail to notice that, even though <<=setup.getNpcName('npc_psychiatrist', 'first')>> hides her mouth under her hands, keeping them together in a triangle form ~ not unlike a certain father of the year from a popular classic anime ~ her smile gets bigger with every detail you drop. It takes you quite a while to finish your rather debauched review of the events.<br>
<br>
"@@.npc_psychiatrist;Well, <<=setup.getNpcName('npc_manager', 'first')>> or as you refer to her "<<=setup.getNpcName('npc_manager', 'formal')>>," has delineated the borders of your duties in a way that is effectively both a working and a legally binding Master Slave contract. Thank heaven for the sexual equalization act of 2029.@@"<br>
<br>
<<if $player.flags.contract.understoodcomplete>>
Of course you know this by now, but you would have liked to have this information before you signed the contract.<br>
<br>
"@@.npc_psychiatrist;Anyway...@@"
<<else>>
<<printThought $player "Wait, what?">><br>
<br>
Your face is frozen in a rather shocked expression.<br>
<br>
"@@.npc_psychiatrist;Oh, this is news for you? Well, its not like you can simply quit if its not to your liking. Anyway..@@"
<</if>>
<br><br>
<<if $npc_manager.flags.trustplayerwithkey>>
"@@.npc_psychiatrist;You are currently the appointed key carrier, so there seems to be a certain level of trust between the two of you.@@"
<<else>>
"@@.npc_psychiatrist;It is not like you're locked up 24/7 or something, so it can't be that bad, can it?@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;You should try to make the best of your situation. Try to improve your relationship by being obedient. Or maybe go out of your way and so some unexpected things you think she might like! Maybe ask her to be disciplined, even though your behaving. Or maybe be a little bit disobedient. But just enough to see it as playful teasing. That should do the trick!@@"<br>
<br>
<<printThought $player "...">><br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist, talk about landlord helping you when washing maching immolated
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
First you go into detail about the worst day in your life. How you are responsible for the loss of the <<=$player.flags.faultcompany>> data from their new game prototype, and how it was all downhill from there. You got fired only days after you broke up with your girlfriend, and after having a glimmer of hope in the form of being offered your secretary job, your washing machine exploded taking your remaining male underwear with it. And then <<=setup.getNpcName('npc_landlord', 'first')>> showed up. His stoic calm had a soothing effect on your psyche. If not for him, you're sure you would have had a nervous breakdown right there.<br>
<br>
"@@.npc_psychiatrist;Well, this <<=setup.getNpcName('npc_landlord', 'first')>> seems to be a person of great character and I think ... oh... you were not yet done? Please continue then.@@"<br>
<br>
And then you mention how you were naked the whole time.<br>
<br>
"@@.npc_psychiatrist;Oh. Now, we are getting somewhere. And how did that make you feel? You say his eyes were glued to your body for a few seconds. It sounds to me like... he liked what he saw?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_landlord_1_ashamed" "I felt ashamed." 600>>]<br>
[<<moveTo "event_psychiatrist_session_landlord_1_desired" "I felt ... desired." 600>>]
</div>/*#
#desc: psychiatrist topic, say you were ashamed for landlord to see you exposed in front of him
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_psychiatrist.flags.landlord_1 = 'ashamed'>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Well, being ashamed is a natural reaction in this situation. Considering the stress you've been exposed to. But your body is nothing to be ashamed of, especially since you were within your own four walls, and your landlord only entered because of the ongoing emergency. I think... no I am sure, your shame was not caused by your bareness, but because the way you felt during your callowness. So, <<=setup.getNpcName('npc_landlord', 'full')>>, a man of character. How would you describe him?@@"
<br><br>
You tell her the few details you know about him. He served during the war, even though you have no idea what rank he possessed. The augmentation in his arms and legs seem to be the result of injuries from the war, and he is doing a very good job as a landlord and housekeeper. For some unknown reason he absolutely hates automated money transfer, so he visits everyone in the house at the first of each month to collect the rent manually. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> talked a lot to him and normally handled the rent.<br>
<br>
"@@.npc_psychiatrist;Maybe your shame is the result of you being looked at by <<=setup.getNpcName('npc_landlord', 'first')>> with a certain desire, and you currently have no idea how to handle this information.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: psychiatrist topic, say you felt desired by how landlord looked at you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_psychiatrist.flags.landlord_1 = 'desired'>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
Your answer causes <<=setup.getNpcName('npc_psychiatrist', 'first')>> to raise an eyebrow.<br>
<br>
"@@.npc_psychiatrist;Oh, did it? Very good. Being true to yourself is very important at this stage of your development. So, <<=setup.getNpcName('npc_landlord', 'full')>>, a man of character. How would you describe him?@@"<br>
<br>
You tell her what few details you know about him. How he served during the war, even though you have no idea what rank he possessed. The augmentation in his arms and legs seem to be the result of injuries from the war, and he is doing a very good job as a landlord and housekeeper. For some unknown reason he absolutely hates automated money transfer, so he visits everyone in the house at the first of each month to collect the rent manually. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> talked a lot to him and normally handled the rent.<br>
<br>
"@@.npc_psychiatrist;He seems like an alpha male, so it is only natural for you as a ... non-alpha male to be drawn towards him. Maybe talk with him a little bit when you see him the next time. Use your chance, since your girlfriend is gone, to get to know him better, if that is what you desire.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: psychiatrist topic, talk about greetin landlord at your door naked or in female clothing
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<<if $player.flags.landlordsawyouinfemaleunderwear|| $player.flags.landlordsawyouinfemaleclothing>>
<<set $npc_psychiatrist.flags.knowsyoucrossdress = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk about your landlord, <<=setup.getNpcName('npc_landlord', 'full')>>, and the strange encounters you've had with him lately.
<<if $player.flags.landlordsawyouinfemaleunderwear|| $player.flags.landlordsawyouinfemaleclothing>>
You tell her about the time you answered the door to <<=setup.getNpcName('npc_landlord', 'first')>>, while wearing female clothing. How you were visible to everyone in the hallway, which was lucky just your landlord, and his rather peculiar reaction to the whole scene.<br>
<br>
<<else>>
You tell her about the time you answered the door to <<=setup.getNpcName('npc_landlord', 'first')>>, while wearing nothing at all. How you were visible to everyone in the hallway, which was lucky just your landlord, and his rather peculiar reaction to the whole scene.<br>
<br>
<</if>>
"@@.npc_psychiatrist;Well, if this would have been an stressful encounter, this could be excused as pure coincident. But you knew who was on the door, and you had time to change your clothes. It seems to me you did this on purpose. I know, we can all be cranky and slow in the head before our first coffee, but I don't think I've ever opened a door naked except on purpose.@@" That last remark being underscored by a playful smile.
<<if $npc_psychiatrist.flags.landlord_1!="">>
"@@.npc_psychiatrist;And since you already admitted that you had an encounter of similar nature, I assume you did this to prompt a certain reaction from your dear landlord.@@"
<<else>>
"@@.npc_psychiatrist;I do not know what happened between the two of you before but I can only assume you did this to prompt a certain reaction from your dear landlord.@@"
<</if>>
<br><br>
She puts her hands together forming a triangle while leaning on the desk.<br>
<br>
"@@.npc_psychiatrist;Now hear me out, before you start protesting: You heard the bell, and then what? Forgot that you were wearing nothing
<<if $player.flags.landlordsawyouinfemaleunderwear|| $player.flags.landlordsawyouinfemaleclothing>>
but your newly found fetish for female undergarments?
<<else>>
at all?
<</if>>
Kind of hard to believe, don't you think? It would have taken seconds to throw something over your "special" apparel, but you decided to strut out the door and to show off how good you look. Understandable. It's pretty much the same reason I wear this instead of some boring old pantsuit. You said yourself you wanted to thank him for helping you out lately, and if this makes him happy, why not? Looks like a win-win situation to me! Sometimes small gestures have the most impact.@@"
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: talk about first experience working at glory hole
#status: FINISHED 0.4.0.0
#*/
<<set _tmpHandJob = setup.canPlayerSex($player,'handjob')>>
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You start to squirm around a little in your chair as if no matter how you sit, it is not quite comfortable. Of course this does not go unnoticed by <<=setup.getNpcName('npc_psychiatrist', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;If there's something on your mind you simply have to tell me <<=$player.first_name>>. It will be okay, I promise.@@"<br>
<br>
You tell her about the time you went on a drink with <<=setup.getNpcName('npc_admin', 'first')>>. She leans forward, resting her elbows on the table, hiding her mouth behind a triangle formed by her hands, looking at you with a mixture of delight and inquisitiveness. You continue with your story, how a <<getWordPenis $player>> appeared in the hole, when you were interrupted with a question for the first time.<br>
<br>
"@@.npc_psychiatrist;So... this male penis appeared just as you went and did your business?@@"<br>
<br>
You look down a little bit and say truthfully, that you waited there... for quite a while.<br>
<br>
"@@.npc_psychiatrist;So, let me get this straight. You waited in a restroom stall with a gloryhole for quite a while, as you just said yourself. And for what exactly? What you describe was bound to happen. So... what interests me is... what happened next? I have a feeling that I already know the answer but please, would you kindly tell me everything that transpired afterwards in your own words. And for the sake of your therapy, be as detailed as possible.@@"<br>
<br>
For some reason you tell her everything. With a lot more graphic details than you had originally intended. About the way it felt in your hand, feeling it pulsing and twitching. And the excitement you perceived when it finally came all over your hand, splattering cum all over you. And finally how you got paid afterwards.<br>
<br>
"@@.npc_psychiatrist;Oh, so you were paid for stroking some anonymous man's dick? How exceedingly interesting. Look, I am neither condemning nor acquitting your actions here. The act of prostitution was decriminalized some years ago, so you're safe on that side. The question is are you okay with this? Or let me ask this in a different way.@@", Suddenly she is on her feet, grabbing her wallet from her purse and slamming 30 credits on the table in front of you, her demeanour bearing an unfamiliar aggression. Strutting around her table to get in front of you, putting her finger on your throat, and slowly moving the finger up your head until it reaches your chin, forcing you to look up at her, standing over you.<br>
<br>
"@@.npc_psychiatrist_dom;Hey harlot. I heard your hands are really worth something. How about 30 credits if you wank my <<getWordLadyPenis $player>> really good. How does that sound, whore?@@"<br>
<br>
You are at a loss for words.<br>
<br>
"@@.npc_psychiatrist_dom;So, what will it be puppet? I haven't got all day!@@"<br>
<br>
<<if _tmpHandJob>>
[<<moveTo 'event_psychiatrist_session_prostitution_1_accept' 'Nod while blushing.' 300>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_session_prostitution_1_decline' 'Decline the offer.' 300>>]
</div>/*#
#desc: accept psychiatrists "offer" for you to suck her off
#status: FINISHED 0.4.0.0
#*/
<<set _tmpHandJob = setup.canPlayerSex($player,'handjob')>>
<<if $roomchange == true>>
<<if ($psy_session.maxTag == 'sissy') || ($psy_session.maxTag == 'bold') || (setup.getIndecentValue($player)>95)>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $psy_session.handjob = true>>
<<if $player.handjobvirginity == "">>
<<set $player.handjobvirginity = 'npc_psychiatrist'>>
<</if>>
<<if setup.canPlayerCum($player,setup.getTotalValue('penis'))>>
<<set $psy_session.cum = true>>
<</if>>
<<set $psy_session.cum_cloth1 = setup.checkTopBodySlot('bottom','penis')>>
<<set $psy_session.cum_cloth2 = setup.checkTopBodySlot('tits','top')>>
<<if ($psy_session.cum_cloth1 != 'none') && $psy_session.cum>>
<<changeItemStatus $psy_session.cum_cloth1 'cumsoaked' '["set",100]'>>
<</if>>
<<if ($psy_session.cum_cloth2 != 'none')>>
<<changeItemStatus $psy_session.cum_cloth2 'cumsoaked' '["set",100]'>>
<</if>>
<<applyExperience 'penis' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'whoring' 7 'normal' $SEEN_FRIEND>>
<<set $player.money.total+=30>>
<<set $npc_psychiatrist.flags.therapy_events.handjob = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $psy_session.handjob>>
<<createAnimatedBGR "./video/psychiatrist_handjob.mp4">>
<<set $npc_psychiatrist.flags.handjob+=1>>
<<else>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $psy_session.handjob>>
"@@.npc_psychiatrist_dom;Well, what are you waiting for
<<if ($psy_session.maxTag == 'sissy')>>
sissy whore?
<<else>>
slut?
<</if>>
@@" She mocks, looming over you as you remain seated on the chair,"@@.npc_psychiatrist_dom;Down on your knees, where you belong.@@"<br>
<br>
The sudden appearance of her dominant demeanour still has you off guard, and you slide down on your knees while she sits back against the desk in front of you. Using both hands she raises her dress, just high enough to display her see through lace panties. Speaking of things you were not prepared for, pulsating and twitching behind a veil of lace is a rock hard <<getWordLadyPenis $player>>, just waiting for your blandishment.
<<if setup.getTotalValue('penis')>0>>
You gulp audibly, but at the same moment you bite your lip as if this is everything you've hoped for.
<<else>>
You gulp audibly. She is a shemale?
<</if>>
<br><br>
"@@.npc_psychiatrist_dom;Hurry up bitch, it isn't going to unpack itself!@@"<br>
<br>
You do as you're told and grab the panties on both sides of her curvy hips, pulling them down her sylph-like and sexy legs, before gently placing them to one the side. Finally, you can marvel at her wonderful <<getWordLadyPenis $player>>. It's bigger than your <<getWordMyPenis $player>>, but then again, almost every cock is. Suddenly your heart starts racing. You're kneeling in front of your psychiatrist, <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. There is no gloryhole to protect your identity. And the devious grin on her face makes it very clear that right now, in her eyes, you are no longer a client or patient but a lowly whore yearning for the next punter to serve. You blush as the realization sinks in. The way she looks down at you does nothing but change the fact that you yearn for her <<getWordLadyPenis $player>>. You reach out and grab it. It is surprisingly hot and you feel it throbbing in your hand. You take <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> heavy breathing as an encouragement and start moving your hand up and down the long, meaty shaft.<br>
<br>
"@@.npc_psychiatrist_dom;Yeah, work my shaft you stupid bimbo whore. Work it, like it's the best thing you ever had in your hand!@@"<br>
<br>
You're not used to dirty talk like this, especially not from a petite woman like <<=setup.getNpcName('npc_psychiatrist', 'first')>>.
<<if setup.getTotalValue('humiliation')>5>>
But you're used to humiliating acts and it starts to turn you on.
<</if>>
You spit in your hand and rub it around the dark dickhead of her <<getWordLadyPenis $player>>, while your other hand caresses the full balls. You start to rhythmically stir the shaft up and down, feeling every twitch of it, every pulse. You love the feeling, that every move you do, makes it, makes HER, harder.<br>
<br>
"@@.npc_psychiatrist_dom;Wow. Who'd have guessed the whore was a natural cockmonger! Yeah!@@"<br>
<br>
The rhythm of throbbing and pulsating gets stronger with every wank, and you can feel that she is ready to cum any moment now. Her moaning gets louder with every passing second. And as you indulge this <<getWordLadyPenis $player>>, you're getting hornier and hornier as well. Her <<getWordLadyPenis $player>> climaxes a giant load all over you, coating your
<<if $psy_session.cum_cloth2 != 'none'>>
<<=setup.getItemName($psy_session.cum_cloth2)>>
<<else>>
<<if $player.body.breastsize[0]>0>>
tits
<<else>>
chest
<</if>>
<</if>>
in a load of thick, steaming <<getWordCum $player>>.
<<if setup.getItemTypeName("cage")!="">>
<<if $psy_session.cum>>
<<if $psy_session.cum_cloth1 == 'none'>>
<<getWordCum $player>> leaks out of your <<getWordMyPenis $player>> onto the floor. Without the sweet release of a real orgasm you still feel horny as hell. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little sissy you are.
<<else>>
<<getWordCum $player>> leaks out of your <<getWordMyPenis $player>> onto the floor, soaking into your <<=setup.getItemName($psy_session.cum_cloth1)>>. Without the sweet release of an real orgasm you still feel horny as hell. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little sissy you are.
<</if>>
<<else>>
<<if $psy_session.cum_cloth1 == 'none'>>
Besides a few drops of <<getWordCum $player>> dripping on the floor you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little sissy you are.
<<else>>
Besides a few drops of <<getWordCum $player>> dripping into your <<=setup.getItemName($psy_session.cum_cloth1)>> you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little sissy you are.
<</if>>
<</if>>
<br><br>
<<printThought $player "My penis is locked up, while I stroke <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> <<getWordLadyPenis $player>>!">>
<<else>>
<<if $psy_session.cum>>
<<if $psy_session.cum_cloth1 == 'none'>>
you shoot a load of <<getWordCum $player>> on the floor,
<<else>>
you spray a load of <<getWordCum $player>> into your <<=setup.getItemName($psy_session.cum_cloth1)>>,
<</if>>
like the good little sissy you are.
<<else>>
you're unable to cum yourself, like the pansy you are. It looks like it's your calling now to please others, like the good little sissy you are.
<br><br>
<<printThought $player "I am just a sextoy for others to enjoy!" 40>>
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Very good <<=$player.first_name>>. To keep this roleplay as real as possible, please keep the 30 credits. You've really earned them.@@" She explains while putting her panties back on, "@@.npc_psychiatrist;And you're exceedingly good at this. How often did you kneel in that toilet stall? Well, it does not really matter now, does it?
<<if !$psy_session.cum>>
I'm finding your commitment to being a perfect sissy applaudable. Being caged up must be hard. Your <<getWordMyPenis $player>> looked like it was going to get crushed within its prison.
<</if>>
Now, if you could kindly sit back on the chair? It is time to resume your therapy session.@@"<br>
<br>
You didn't even notice that you're still kneeling on the floor.<br>
<br>
<<else>>
She bursts out laughing.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, that was just a test scenario. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you seemed to automatically assume the part of the cheap hooker. I mean come on. 30 credits? That's cheap. Don't sell yourself under price. But it looks like you really mean it. Just be careful, if you look for work at the wrong places, okay? I could not stand the thought of loosing my favourite guinea pig... err... I mean patient, of course.@@"<br>
<br>
The way she bit her lip before walking back to her table tells you a different story. Somehow you have the feeling you just missed an opportunity.<br>
<br>
<<printThought $player "Maybe I should reflect on what she's taught me if I want the roleplay to continue further?">><br>
<br>
<</if>>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: decline psychiatrists "offer" to jerk her off
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if ($psy_session.maxTag == 'sissy') || ($psy_session.maxTag == 'bold') || (setup.getIndecentValue($player)>95)>>
<<set $psy_session.handjob = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $psy_session.handjob>>
"@@.npc_psychiatrist;That's to bad, <<=$player.first_name>>. It would just have been a test scenario anyway. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you took the part of the cheap hooker. But you did the right thing. I mean selling yourself for just 30 credits, I mean come on. that's cheap. Don't sell yourself under your price. Just be careful, if you look for work at the wrong places, okay? I could not stand the thought of loosing my favourite guinea pig... err... I mean patient of course.@@"<br>
<br>
The way she bit her lip before walking back to her table tells you a different story. Somehow you have the feeling you just missed an opportunity.<br>
<br>
<<printThought $player "Maybe I should reflect on what she's taught me if I want the roleplay to continue further?">><br>
<br>
<<else>>
She bursts out laughing.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, that was just a test scenario. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you seemed to automatically assume the part of the cheap hooker. I mean come on. 30 credits? That's cheap. Don't sell yourself under price. But it looks like you really mean it. Just be careful, if you look for work at the wrong places, okay? I could not stand the thought of loosing my favourite guinea pig... err... I mean patient, of course.@@"<br>
<br>
<</if>>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: psychiatrist topic; talk about your continued time spent at glory hole
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<<set $player.timebased.horny = setup.changeHorny($player,25)>>
<</if>>
<<set _tmpBlowJob = setup.canPlayerSex($player,'blowjob')>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> gives you a knowing smile, "@@.npc_psychiatrist;Some time ago when we spoke, you mentioned you had an experience at a glory hole. Has anything further happened since then?@@"<br>
<br>
You are blushing now. You mention how you've visited it again and again ever since that first time.<br>
<br>
"@@.npc_psychiatrist;Is that really all you've done? Just enjoying running your hands up and down a few cocks until they cum, feeling them pulsing between your fingers? Throbbing up and down, getting harder, bigger. Feeling the blood pumping in their veins. Sorry, I got off topic.@@"<br>
<br>
You shake your head slightly
<<if setup.getTotalValue('penis')>=5>>
and try to force the image of a big, tasty looking <<getWordPenis $player>> out of your head, without any luck so far. You try to focus back on topic
<</if>>
and gulp before explaining how at first you had been happy to stroke a few cocks for credits, but you were curious. You just had to try and see if you could earn a few more by kissing the tip. As you kissed the tip you opened your mouth and started suckling the head, then it led to you giving a full blown blow job. At first you were shocked, but you made more credits and sort of liked it.<br>
<br>
"@@.npc_psychiatrist;You sort of liked it? And it only happened that one time?@@"<br>
<br>
<<if $player.flags.gloryhole.blowjob>1>>
Shaking your head, you blush even harder. You admit you've done it a few more times since then.<br>
<br>
"@@.npc_psychiatrist;Oh really and how many more times is that?@@"
<<else>>
You nod vigorously, implying it was only curiosity, but undermine your statement by licking your lips while doing it.<br>
<br>
"@@.npc_psychiatrist;And how did you feel, while having a big, tasty <<getWordPenis $player>> stuffing your mouth to the brim?@@"
<</if>>
<br><br>
As if a dam burst, you tell her about your experiences in the glory hole, how just giving a hand job wasn't enough for you anymore. You had to have a luscious <<getWordPenis $player>> in your mouth, feeling the one you were servicing cumming inside your mouth allowing you to
<<if setup.getTotalValue('cum')>=5>>
swallow their hot <<getWordCum $player>>.
<<else>>
let the cum drip down your chin coating your clothing.
<</if>>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> sits there listening intently to you, a faint smile tugging at the corner of her lips.<br>
<br>
"@@.npc_psychiatrist;So let me get this straight, you've not only been stroking cocks at your little glory hole paradise, you've started sucking them off?@@"<br>
<br>
<<printThought $player "She is right, I am a cocksucker... denying this would be simply a lie.">><br>
<br>
She nods in thought for a moment.<br>
<br>
"@@.npc_psychiatrist;It's not really surprising. You are asserting and accepting your new role in life. You were made to serve and be used. If anything this could be considered a large step forward in embracing the truth you have been denying yourself for so long. Plus, like we've already discussed previously, there is nothing wrong with prostitution when both parties are willing.@@"<br>
<br>
You sit there shocked a bit as you think over her words,
<<if (setup.getTotalValue('submission')>=7)&&(setup.getTotalValue('humiliation')>=7)>>
she is absolutely right. Even though you would have never even dreamed of doing something like this just a few weeks ago, now it almost seems mundane.
<<elseif setup.getTotalValue('whoring')>=5>>
maybe she is right, but your money problems and the ability to earn some credits while doing something you don't hate helps as well.
<<else>>
maybe she is right, but at the same time it doesn't feel like you or something you should be doing.
<</if>>
<br><br>
"@@.npc_psychiatrist;I can see you are still struggling,@@" she sighs then smirks at you, "@@.npc_psychiatrist;Let's do another role play.@@"<br>
<br>
Standing up she strides over to her purse. This time she moves slowly, methodically, her hips swaying seductively the whole time.
<<if $npc_psychiatrist.flags.handjob>0>>
You know what is under her skirt,
<<else>>
There seems to be something poking from under her skirt,
<</if>>
but she is such a strong woman. Aren't you supposed to listen to strong women because they know best? She is giving you the opportunity to object. Should you? Should you object or do you really want to do this.
<<if setup.isItemTypeEquipped('cage')>>
You can feel your <<getWordMyPenis $player>> twitching and trying to escape its prison. In vain of course.
<<else>>
You can feel your <<getWordMyPenis $player>> leaking already in anticipation.
<</if>>
She comes back over to you holding her wallet, making a show of taking out 30 credits and putting them on the table. Standing over you menacingly she doesn't even give you a chance as she grabs you by the back of the head, pulling you roughly to your feet and growling in your ear.<br>
<br>
"@@.npc_psychiatrist_dom;I've heard you are quite the cock-sucking whore. How about you prove it and use your slut-mouth to earn the credits on the table there.@@"<br>
<br>
You swallow nervously... yes this is role play, you could always say no, but do you really want to? Plus there are more credits there than you typically make at the glory hole.<br>
<br>
"@@.npc_psychiatrist_dom;I'm WAITING!! Make a choice you little bitch!@@"<br>
<br>
<<if setup.getTotalValue("whoring") >= 5>>
[<<moveTo 'event_psychiatrist_session_prostitution_2_accept' 'Drop to your knees like a good whore.' 300>>]<br>
<<elseif _tmpBlowJob>>
[<<moveTo 'event_psychiatrist_session_prostitution_2_accept' 'Nod while blushing.' 300>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_session_prostitution_2_decline' 'Decline the offer.' 300>>]
</div>/*#
#desc: accept + suck psychiatrist cock
#status: FINISHED 0.4.0.0
#*/
<<set _tmpHandJob = setup.canPlayerSex($player,'handjob')>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if ($psy_session.maxTag == 'sissy') || ($psy_session.maxTag == 'bold') || (setup.getIndecentValue($player)>95)>>
<<set $psy_session.blowjob = true>>
<<if setup.canPlayerCum($player,setup.getTotalValue('penis'))>>
<<set $psy_session.cum = true>>
<<set $player.timebased.horny = 0>>
<</if>>
<<set $psy_session.cum_cloth1 = setup.checkTopBodySlot('bottom','penis')>>
<<set $psy_session.cum_cloth2 = setup.checkTopBodySlot('tits','top')>>
<<if ($psy_session.cum_cloth1 != 'none') && $psy_session.cum>>
<<changeItemStatus $psy_session.cum_cloth1 'cumsoaked' '["set",100]'>>
<</if>>
<<if ($psy_session.cum_cloth2 != 'none')>>
<<changeItemStatus $psy_session.cum_cloth2 'cumsoaked' '["set",100]'>>
<</if>>
<<set $player.money.total+=40>>
<<set $psy_session.deepthroat = false>>
<<if (setup.getTotalValue('makeup')+Math.random(setup.getTotalValue('penis')/2))>6>>
<<set $psy_session.deepthroat = true>>
<<if (setup.getTotalValue('makeup')+(setup.getTotalValue('penis')/2))>6>>
<<set $psy_session.struggledeepthroat = false>>
<<else>>
<<set $psy_session.struggledeepthroat = true>>
<</if>>
<</if>>
<<if $player.makeup.template != "">>
<<set $player.makeup.messed = Math.min(100,$player.makeup.messed+75)>>
<</if>>
<<applyExperience 'oral' $npc_psychiatrist.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 9 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("whoring") == 0>>
<<setThreshold 'whoring' 'other_whoring' 'psychiatrist_blowjob' true>>
<<else>>
<<applyExperience 'whoring' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<if $player.blowjobvirginity == "">>
<<set $player.blowjobvirginity = 'npc_psychiatrist'>>
<</if>>
<<set $npc_psychiatrist.flags.therapy_events.handjob = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $psy_session.blowjob>>
<<createAnimatedBGR "./video/blowjob_01.mp4">>
<<set $npc_psychiatrist.flags.blowjob+=1>>
<<else>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $psy_session.blowjob>>
"@@.npc_psychiatrist_dom;Well then? What are you waiting for, get on your knees where you belong. Whores like you belong on your knees or on your back. You don't deserve to stand on your feet!@@"<br>
<br>
Without thinking, you simply drop to your knees.
<<if setup.getTotalValue('submission')>=5>>
After all, that is what you're supposed to do, being an obedient slave and all.
<</if>>
Looking up at her, waiting for permission to do what you are eager to do anyway. She sneers at you, forcing you to look bashfully at the ground, as if you shouldn't have dared to look her in the eyes. Pulling her dress up you can't help but lick your lips at what you know is coming. Surrounded and constrained by the lacy fabric of those sexy lacy panties is her large <<getWordLadyPenis $player>>. Trapped and teasing you, waiting for you to wrap your lips around it and give into pleasure.<br>
<br>
"@@.npc_psychiatrist_dom;What are you waiting for, whore? It isn't going to suck itself!@@"<br>
<br>
You do as you're told and grab the panties on both sides of her curvy hips, pulling them down over <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> long and luscious legs. Finally, when they reach her ankles, you gently lift one foot and then the other, removing the panties from her legs, folding the panties and setting them carefully to the side. As your gaze slowly moves back up you catch her grinning at you. You are well aware she's watching you, waiting for you to wrap your lips about her <<getWordLadyPenis $player>>. Reaching out tentatively, you start to stroke her <<getWordLadyPenis $player>> as it springs to action. Slowly, you run your hand up and down its length. As you are about to continue, you can feel a hand on the back of your head. With a sudden, but very forceful grip, your head is yanked backwards, forcing you to look up, right into her angry eyes.<br>
<br>
"@@.npc_psychiatrist_dom;I am not paying you to jerk me off you stupid whore. Get your mouth around my <<getWordLadyPenis $player>> now or I'm goining to throw you right back on the street dressed as you are!@@"<br>
<br>
Gulping as you realise how you are dressed, you know it's time to swallow your medicine. You can't help but be a little excited at the idea of doing this. Pulling the <<getWordLadyPenis $player>> down toward your mouth, you start with kissing the tip, then as you open your mouth you lightly suckle the tip prompting a groan of pleasure from her.<br>
<br>
"@@.npc_psychiatrist_dom;That's a good whore.@@"<br>
<br>
<<if setup.getTotalValue('whoring')>=5>>
Pleased with that praise, you smile. Well you smile on the inside, since your mouth is otherwise occupied. Your hard work seems to bear fruit.
<<elseif setup.getTotalValue('submission')>=5>>
Pleased with that praise, you smile. Well you smile on the inside, since your mouth is occupied. After all you are just a sextoy to be used for enjoyment.
<<else>>
You are unsure if this kind of praise is something you'd want.
<</if>>
Pulling your mouth away a little, you trail your tongue along the tip, teasing the underside before moving up and licking the urethra, you can taste just a little bit of piss mixed with pre-cum. Opening your mouth once more you take the tip in, sucking gently, before sliding your mouth down a bit more. Your tongue rubs against the veined underside of <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> shaft. Humming in delight you can hear her groan as the vibrations cause a bit more pleasure for her as well. Your hands are busy as well, one wrapped around the shaft, working it up and down, while the other hand moves to cup her balls, squeezing them gently and rolling them in your palm. You pause for a moment and spit in your hand then wrap that hand back around the shaft, making it good and slick for you to work the base up and down. Starting to bob your head slowly up and down, your tongue swirls around the thick cock in your mouth. Deep in your rhythm now you back up so just the tip remains inside your lips then sliding down halfway again. Back up and down, Sabrina's hips rocking in a natural rhythm in time to your movement.<br>
<br>
"@@.npc_psychiatrist_dom;Take me deep!@@"<br>
<br>
<<if $psy_session.deepthroat>>
Moving your head back slightly, the tip resides just between your lips, you nod. Slowly you work the shaft into your mouth until the tip of it is nudging the back of your throat. You swallow slightly, the tip pressing against your throat
<<if $psy_session.struggledeepthroat>>
until it forces its way in. You gag, as you're not used to <<getWordPenis $player>> of this size, but still, you force yourself to hold position as her well trimmed pubic hair tickles your nose.
<<else>>
until you let it in. Your gag reflex is by this point nonexistent, the only thing that slightly bothers you is the well trimmed pubic hair tickling your nose as the base of her cock presses against your face.
<</if>>
You can feel her hands at the back of your head, holding you in place as you try to back away. Fingers tightening in your hair, holding you in place a moment. A few seconds pass. Then the moment draws out longer and longer. You start to struggle, air is getting sparse.
<<if setup.getCurrentMakeup($player) != "">>
Your eyes start to water, ruining your mascara, making your vision blurry, your lipstick smearing all over your face as you struggle.
<<else>>
Your eyes start to water, and your vision gets blurry.
<</if>>
Her vice-like grip remaining around your head she pulls you back at last and you gasp for air. But your relief is only short-lived, as your mouth gets reused as cocksleeve over and over again. Back and forth, pulling back getting a quick breath then sliding that cock back down your throat. Back and forth again and again, your nose pressed right against the base of that cock. One hand still cupping her balls the other rubbing up and down her thigh as she fucks your throat.
<<else>>
You give a panicked look up at her and shake your head that you can't do it. She growls at you grabbing you by your hair and holding you tight.<br>
<br>
"@@.npc_psychiatrist_dom;Whore, I said to take me deep! And you will do it!@@"<br>
<br>
Forcing her <<getWordLadyPenis $player>> into your closed lips while holding your hair tight she starts to move her hips back and forth harder. You try not to choke when she slides the tip of her cock past your tongue. Then you feel the tip resting right against the back of your throat. You think this is it then she pushes forward, sliding into your throat, your nose pressed against her body. You swallow naturally and she groans in pleasure.<br>
<br>
"@@.npc_psychiatrist_dom;You keep that up you little whore.@@"<br>
<br>
You can't breathe, her cock is stuck right against your wind pipe. Your vision starts to narrow, your hearing fading in and out as you feel about ready to pass out.
<<if setup.getCurrentMakeup($player) != "">>
Your eyes start to water, ruining your mascara, making your vision blurry, your lipstick smearing all over your face as you struggle.
<<else>>
Your eyes start to water, and your vision gets blurry.
<</if>>
Finally you feel a hard tug on your hair as she pulls you off her cock allowing you to suck in air.<br>
<br>
"@@.npc_psychiatrist_dom;Don't think you are going to get out of sucking my cock by passing out you little whore!@@"<br>
<br>
You look up at her in shock for just a moment before she drives her hips forward sliding her cock back into your mouth, the tip of her cock lodging itself in your throat. Your hands grabbing for her soft thighs as you try and breathe. She moves her hips back and forth sliding that cock all the way in then back again. Her fingers hold your head tightly, not allowing you any control of when you pull back or aggressively lunge forward.
<</if>>
<br><br>
She continues to move back and forth, what had started as a blowjob now almost a pure face-fuck. A steady stream of pre-cum leaks along the back of your tongue, down your throat. Eyes rolling back you hum a bit as you are being used like a sex toy, bringing pleasure to others. Your hands grabbing firm on the backs of her thighs, one hand moving up to cup her ass to hold her in place. You feel her cock growing a bit harder, her breathing becoming more and more ragged.<br>
<br>
"@@.npc_psychiatrist_dom;Gonna cum you little whore, you better swallow every single drop of it!@@"<br>
<br>
Feeling her cumming in your throat, you are swallowing as fast as you can so you don't choke. Then feeling her pull back a bit, so she fills your mouth with cum, you gulp down the <<getWordCum $player>>. You are almost unable to savor the taste but you don't want to lose a drop of her sweet <<getWordCum $player>>. Finally she is done as she pulls her cock completely out of your mouth.<br>
<br>
"@@.npc_psychiatrist_dom;Now, kiss the tip.@@"<br>
<br>
You kiss the tip.<br>
<br>
"@@.npc_psychiatrist_dom;And thank me for letting you suck me off.@@"<br>
<br>
You quickly thank her as she looks you over.<br>
<br>
"@@.npc_psychiatrist_dom;Now open your mouth whore, and prove that you swallowed everything.@@"<br>
<br>
You open your mouth and show her you did as asked. She places a hand on your head, patting you as if you were a pet, "@@.npc_psychiatrist;Very good <<=$player.first_name>>. You are a natural at this, it's almost as if you have found your true purpose in life. To keep the role play accurate, please keep the credits. I really hope the roughness did not frighten you too much, but I only did it to help enhance your experience as that is indeed something you have to reckon with.@@"<br>
<br>
You feel a bit of pride at the praise.<br>
<br>
"@@.npc_psychiatrist;Now if you would kindly sit back in the chair so that we might continue your session.@@"<br>
<br>
You notice you haven't left your knees, it almost feels as if you belong here. You slowly rise and get back in the chair. Though you have a sense of regret at not being at <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> feet. As you rise,
<<if $psy_session.cum>>
you realise, that you
<<if setup.isItemTypeEquipped('cage')>>
leaked
<<else>>
sprayed
<</if>>
a lot of <<getWordCum $player>>
<<if $psy_session.cum_cloth1=='none'>>
onto the floor.
<<else>>
into your <<=setup.getItemName($psy_session.cum_cloth1)>>
<</if>>
<<else>>
you realise, that a few drops of <<getWordCum $player>> moistened
<<if $psy_session.cum_cloth1=='none'>>
the floor below you,
<<else>>
your <<=setup.getItemName($psy_session.cum_cloth1)>>,
<</if>>
<</if>>
while a part of <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> <<getWordCum $player>> dripped right onto your
<<if $psy_session.cum_cloth2=='none'>>
chest,
<<else>>
<<=setup.getItemName($psy_session.cum_cloth2)>>,
<</if>>
without realizing it. That blowjob really kept your senses occupied.<br>
<br>
<<else>>
She bursts out laughing.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, that was just a test scenario. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you took the part of the cheap hooker. I mean come on. 40 credits? that's cheap. Don't sell yourself under your price. But it looks like you really mean it. Just be careful, if you look for work at the wrong places, okay? I could not stand the thought of loosing my favourite guinea pig... err... I mean patient of course.@@"<br>
<br>
The way she bit her lip before walking back to her table tells you a different story. Somehow you have the feeling you just missed an opportunity.<br>
<br>
<<printThought $player "Maybe I should reflect on what she's taught me if I want the roleplay to continue further?">><br>
<br>
<</if>>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: decline psychiatrist offer to suck her cock
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if ($psy_session.maxTag == 'sissy') || ($psy_session.maxTag == 'bold') || (setup.getIndecentValue($player)>95)>>
<<set $psy_session.handjob = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $psy_session.handjob>>
"@@.npc_psychiatrist;that's too bad, <<=$player.first_name>>. It would just have been a test scenario anyway. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you took the part of the cheap hooker. But you did the right thing. I mean selling yourself for just 30 credits, I mean come on. That's cheap. Don't sell yourself under price. Just be careful about looking for work at the wrong places, okay? I could not stand the thought of loosing my favourite guinea pig... err... I mean patient of course.@@"<br>
<br>
The way she bit her lip before walking back to her table tells you a different story. Somehow you have the feeling you just missed an opportunity.<br>
<br>
<<printThought $player "Maybe I should reflect on what she's taught me if I want the roleplay to continue further?">><br>
<br>
<<else>>
She bursts out laughing.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, that was just a test scenario. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you took the part of the cheap hooker. But you did the right thing. I mean selling yourself for just 30 credits, I mean come on. That's cheap. Don't sell yourself under price. Just be careful about looking for work at the wrong places, okay? I could not stand the thought of loosing my favourite guinea pig... err... I mean patient of course.@@"<br>
<br>
<</if>>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: psychiatrist topic: first time meeting technician
#status: STUB 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You start to talk about your friend <<=setup.getNpcName('npc_technician', 'full')>>.<br>
<br>
After giving <<=setup.getNpcName('npc_psychiatrist', 'formal')>> a quick intro to the "Tech Wizard" who was once your co-worker you dive into your more casual encounters; meeting her for coffee and how she used some phone app or something to peer under your clothing and call you out for wearing women's underthings!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> listens intently before summing things up with a smile.<br>
<br>
"@@.npc_psychiatrist;Well your friend sounds like a very interesting young lady. Certainly what she did was something of a breach of privacy but, well... it brought the two of you closer, showed you that you aren't alone out there so, really, it was all for the best, hmm?@@"<br>
<br>
Even if it feels a bit off you can't quite manage to shape a refutation of her point, instead merely nodding at her assessment.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: talk about wearing female clothing
#status: STUB 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<switch $player.flags.fem_style.female>>
<<case "forced">>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> how you were "given" a new, very feminine outfit and informed that you would be expected to dress the same at work going forward.
<<case "money">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about how you agreed to wear a dress to the after-work party with your manager... only for her to declare that you would be dressing in a feminine fashion all the time at work from now on!
<<case "voluntary">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about your decision to start wearing feminine clothes, and how your manager has encouraged your decision by revising your work dress code to be female only.
<<case "obedient">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about how you volunteered to accompany your manager to an after-work party only to find yourself in a dress... and with your work dress code revised to be female clothing only!
<<default>>
ERROR, unknown fem_style.female: <<=$player.flags.fem_style.female>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods sagely. "@@.npc_psychiatrist;I think it is good that you are... branching out like this. I mean, let's be honest, male clothing is pretty... dull. We girls have much more interesting and fun options, sure you may be "required" to dress that way at work but is that such a restriction!@@"<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> gestures towards your current attire. "@@.npc_psychiatrist;I mean look at you now - you could have changed into anything you wanted for our session but you chose this. I mean, I quite understand, it looks great on you, and I encourage you to continue displaying your... feminine side... Though I doubt you really need my encouragement, do you?@@"
<<case "male">>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> scrunches her nose as she looks over your current unfeminine attire. "@@.npc_psychiatrist;Very curious that you chose to wear your old, masculine attire to our session. Of course I am happy with whatever makes you feel most at ease but... I dunno, there just seems to be something off about you wearing that sort of thing, doesn't there?@@"
<<case "unisex">>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> gestures towards your current unisex attire. "@@.npc_psychiatrist;An interesting choice. You say you've taken the full plunge into full femininity and yet here, in this safe space, you chose to don something more... neutral. Yes, curious indeed, that looks good on you, of course, but I wonder, does teetering on the edge really feel more comfortable compared to fully embracing things with gusto?@@"
<<case ''>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles at your nudity. "@@.npc_psychiatrist;Feeling comfortable in your own skin are we? Lovely, this is just the sort of openness that therapy is meant to encourage. Your demonstrating such ease in my presence well... let me just say you have me VERY optimistic about todays session.@@"
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
You blush and change topics as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles back at you.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: talk about your new female name
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<<set $npc_psychiatrist.flags.reactnamechange = true>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_20'
20
'event_psychiatrist_theme_gender_1'
true
'theme_psychiatrist_transition_header'
>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<switch $player.flags.fem_style.name>>
<<case "forced">>
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> that <<=setup.getNpcName('npc_manager', 'formal')>> made you sign paperwork to permanently change your legal name to <<=$player.first_name>>.
<<case "money">>
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> how you legally changed your name to <<=$player.first_name>> as part of a scheme hatched by <<=setup.getNpcName('npc_landlord', 'first')>>.
<<case "voluntary">>
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> that you have decided to change your name to <<=$player.first_name>>.
<<case "obedient">>
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> that, with some help from <<=setup.getNpcName('npc_manager', 'formal')>> you have legally changed your name to <<=$player.first_name>>.
<<default>>
ERROR, unknown fem_style.name: <<=$player.flags.fem_style.name>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Of course, I already knew thanks to the computer but hearing it from your lips... It sounds so much nicer, so much more appropriate than <<=$player.original_first_name>>... Oh, I am so, so sorry, here I am intending to share in your joy and I indirectly deadname you!@@"<br>
<br>
You assure her that you are not offended and she continues.<br>
<br>
"@@.npc_psychiatrist;Well, as I was saying, I am so very proud for you. One's name is... well, it's important, but at the same time if it was given to you by someone else, your parent or what have you well... is it really yours? By naming yourself like this, well... I think it makes the "you" that you become from here on out even more real, more true than the you that you were before, and isn't that just wonderful?@@"<br>
<br>
You reply you hadn't really thought of things that way.<br>
<br>
"@@.npc_psychiatrist;Well that's what I'm here for, right? To help you unpack things. Speaking of, if you would like to dig deeper into related things, such as how you identify gender-wise well... I am certainly ready and willing to assist.@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: talk about orally servicing manager (good girl only)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<<setScene>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You describe to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how, after giving you your new name, <<=setup.getNpcName('npc_manager', 'formal')>> was so aroused she had you serve her orally.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> leans forward in obvious interest. "@@.npc_psychiatrist;Oh my! That's your first time licking a woman's honeypot, isn't it? How did it make you feel?@@"<br>
<br>
Just the memory of the intimate moment has you feeling aroused and you channel your inner poet to describe an intricate picture of the scene, how wonderful she tasted, the feel of her hand on your head, her voice instructing you on what to do...<br>
<br>
You start to drift into a contented daydream only for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to bring you back into focus. Strangely she appears a bit distracted as well as she picks up her notepad with both hands.<br>
<br>
<<printThought $player "Wait... is her hand damp?">><br>
<br>
"@@.npc_psychiatrist;Mmm, it sounds like you had a VERY rewarding time. <<=setup.getNpcName('npc_manager', 'first')>> just tastes divine...@@"<br>
<br>
<<printThought $player "How would she- did she just lick her finger clean?">><br>
<br>
"@@.npc_psychiatrist;Anyway, I am so glad you were able to share a moment with someone you so obviously deeply care about... Of course some would question whether a relationship with such an obvious power imbalance - her your manager, you the SISSY secretary, is proper but, well... I think we both know the answer to that, right?@@"<br>
<br>
You nod.<<if setup.getTotalValue("submission") > 10>> After all, you can scarcely imagine a relationship where you were not delightfully subordinate.<</if>><br>
<br>
<<if $npc_psychiatrist.flags.blowjob > 0 || $npc_psychiatrist.flags.handjob > 0 >>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems to have a thought, smiling mischievously. "@@.npc_psychiatrist;Hmm, with all of your gushing as to how much you enjoyed performing cunnilingus... I hope that has not diminished your enjoyment of a little fellatio... I can't be the only one who would consider it a detriment to peniskind to lose your lovely mouth...@@"<br>
<br>
<<if setup.getTotalValue("penis") > 15>>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2_suck" "Beg for the opportunity to show her that you're just as much of a cock-hungry slut as always." 60 >>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Re-assure her that you still love cock." 60 "<<set $scene.mood='love'>>">>]<br>
[@@.link_locked;You are far too much of a thirsty cockslut to possibly deny it.@@]
<<elseif setup.getTotalValue("penis") > 10>>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2_suck" "Beg for the opportunity to show her that you're just as much of a cock-hungry slut as always." 60 >>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Assure her that you still love cock." 60 "<<set $scene.mood='love'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Say that you like both cunt and cock equally." 60 "<<set $scene.mood='neutral'>>">>]<br>
[@@.link_locked;You may have a newfound love for pussy, but you could never forget your infatuation with cock.@@]
<<elseif setup.getTotalValue("penis") > 5>>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2_suck" "Beg for the opportunity to show her that you're just as much of a cock-hungry slut as always." 60 >>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Assure her that you still love cock." 60 "<<set $scene.mood='love'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Say that you like both cunt and cock equally." 60 "<<set $scene.mood='neutral'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Reply that you definitely prefer cunt to cock." 60 "<<set $scene.mood='hate'>>">>]
<<else>>
[@@.link_locked;Though you may have serviced your therapist before you can't bring yourself to beg for another taste.@@]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Assure her that you still love cock." 60 "<<set $scene.mood='love'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Say that you like both cunt and cock equally." 60 "<<set $scene.mood='neutral'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Reply that you definitely prefer cunt to cock." 60 "<<set $scene.mood='hate'>>">>]
<</if>>
<<else>>
"@@.npc_psychiatrist;I see, I see. Well just remember that genitals, like people, come in all tastes, shapes and sizes, and in all sorts of arrangements! For as much as you enjoyed <<=ps(setup.getNpcName('npc_manager', 'first'))>> tasty cunt a cock attached to someone you felt equally strongly about would be mouth-wateringly delicious as well.@@"<br>
<br>
<<if setup.getTotalValue("penis") > 15>>
<<printThought $player "Who cares who it's attached to? All cock is great!">>
<<elseif setup.getTotalValue("penis") > 10>>
<<printThought $player "Mmm... cock...">>
<<elseif setup.getTotalValue("penis") > 5>>
<<printThought $player "That makes sense.">>
<<else>>
<<printThought $player "What? No, I don't like cock...">>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
<</if>>
</div>/*#
#desc: psychiatrist topic: explain feelings about cock after orally servicing manager (good girl only)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.mood>>
<<case 'love'>>
You assure <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that of course you still love sucking cock...<br>
<br>
She smiles, "@@.npc_psychiatrist;Oh, you're so cute! Of course I know that you're an eager cocksucker... not that I ever tire of hearing you say it! Isn't it nice to know what you want and share it with the world?@@"
<<case 'neutral'>>
You state that you're kind of neutral on cock vs. cunt.<br>
<br>
"@@.npc_psychiatrist;Of course, I mean, why limit yourself?, Both are great, especially with the right partner!@@"
<<case 'hate'>>
You reply that your experience with <<=setup.getNpcName('npc_manager', 'formal')>> only reinforced the fact that you dislike cock.<br>
<br>
You almost expect <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to be annoyed but she merely smiles. "@@.npc_psychiatrist;Hate, you say? Mmm... that's not how *I* remember it. I really wish you would admit your desires more openly but I'll settle for you spreading your lips for me in other ways...@@"<br>
<br>
She winks at you and you flush with embarrassment.
<<default>>
ERROR, unexpected scene.mood <<=$scene.mood>>
<</switch>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: suck psychiatrist's cock after telling her about eating out manager (good girl only)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_psychiatrist.flags.therapy_events.console = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
Quickly re-assuring <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you are still a devout cockslut you smile and lick your lips, asking if you could "demonstrate" how much you still adore her member.<br>
<br>
She smiles. "@@.npc_psychiatrist;Oh you are such a dear! All this talk had me getting quite engorged and I wasn't sure if I'd have time to deal with it before my next appointment... and here you are, like a sissy superhero! Crawl on over here!@@"<br>
<br>
Sliding to the floor your crawl around the side of her desk, by which time she has pulled down her skirt, eyeing you with a smile, gently stroking her hard girl-cock with one dainty hand.<br>
<br>
Licking your lips you crawl between her legs, holding her member with both hands, blinking up at her for a moment before leaning forward to swallow her.<br>
<br>
<<if setup.getTotalValue("penis") > 15>>
Your lips glide whisper-soft over her lovely cock, your tongue expertly lapping up her pre before probing for her most sensitive spots.<br>
<br>
She gasps and moans as you play her like an instrument, teasing and stimulating with expert skill until you are ready to push her over the cliff, your efforts rewarded with a spurt of sweet, delicate cum.
<<elseif setup.getTotalValue("penis") > 10>>
You swallow her with ease, shoving the tip of her girl-cock into your throat as you suck and lick her shaft.<br>
<br>
She moans, your expert deepthroat sending her to new heights of pleasure and you keep up a rapid pace of gentle, but deep, head-bobs until she cums, your timing such that her girl-gravy sprays the top of your mouth to drip down onto your tongue.
<<elseif setup.getTotalValue("penis") > 5>>
Though she is far from huge it's still a bit more than you're prepared to take at this angle. You focus your attention on her tip, sucking and licking while your hands delicately stroke the rest of her shaft.<br>
<br>
Your efforts seem sufficient as it is not long before you sense her tightening, followed by a quick spurt of cum into your mouth.
<<else>>
You are still a neophyte at the ways of fellatio but you do your best, splitting your attention between sucking and licking while your fingers stroke. Looking up at her you try to make up with seductive glances what you lack in technical skill.<br>
<br>
Either you're better than you thought or she was REALLY pent up as it isn't long before she pulls your head over her cock, spurting her load into your mouth.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") > 15>>
Tilting your head back you open your mouth to show off her load, letting it pool on your tongue as you savor its flowery flavour.
<<elseif setup.getTotalValue("cum") >= 10>>
Her cum is too delicious to swallow right away and you pause for a moment, rolling it back and forth in your mouth.
<<elseif setup.getTotalValue("cum") > 5>>
Your taste for cum may still be "developing" but hers is quite yummy. Intrigued you can't help but roll it around for a few moments, enjoying the flowery flavour.
<<else>>
Despite your normal aversion to cum hers tastes surprisingly... good? You're so shocked you fail to swallow, pausing with your mouth half-open.
<</if>>
<br><br>
She leans in for a passionate kiss, her tongue spearing past your lips to lap at her seed, your mouths hosting a private, wet dance for several seconds until you finally swallow and she pulls back.<br>
<br>
"@@.npc_psychiatrist;Mmmm, delicious and delightful! Those pretty lips of yours are swiftly becoming some of my favourite dick-pillows so I am quite glad that you have so thoroughly confirmed your ongoing devotion to dick.@@"<br>
<br>
You blush a bit, kissing her softening member in thanks before rising to your feet and giving her a little curtsey. You see her girl-cock twitch as if to return to life but she quickly pulls her skirt back over it.<br>
<br>
"@@.npc_psychiatrist;Now then, as fun as that was, I believe we should get back focused on your session.@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: sissy pill
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the experimental "Sissy Pill Mk1" given to you by your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
She sighs in frustration. "@@.npc_psychiatrist;Really? I keep telling them I need to be informed about any drugs in case of complications-@@" she pauses, as is suddenly realizing that you're there. "@@.npc_psychiatrist;Sorry, distracted by something else, though I can, of course, prescribe drugs I tend not to, one of the purposes of my hypnosis study is to discover non-pharmaceutical methods of helping patients such as yourself.@@"<br>
<br>
<<printThought $player '"Them?" what is she talking about?'>><br>
<br>
"@@.npc_psychiatrist;Anyway, what sort of effects did you notice from taking the drug?@@"<br>
<br>
<<if $player.flags.used_sissy_pill_count == 0>>
You explain that you didn't actually taken the pill.<br>
<br>
"@@.npc_psychiatrist;Huh, interesting, well do not worry, your secret is safe with me, though I imagine that <<=setup.getNpcName('npc_manager', 'first')>> would be quite disappointed to know that. Do not worry, though I am contracted to your company doctor/patient confidentiality is paramount, whatever you say, or do, in our sessions stays between us...@@"
<<else>>
You explain that the pill made you feel really horny, and gave you temporary breasts!<br>
<br>
<<if $player.body.breastsize[0] > 0>>
"@@.npc_psychiatrist;Temporary, you say? Well I guess that little taste left an impression. Let me say you look much better now than back when we first met and you were all... flat. Really helps to balance out your lovely hips.@@"
<<else>>
"@@.npc_psychiatrist;Hmm, well, you know, you can always get a surgical procedure, or go on hormones, if you want them to be permanent.@@"<br>
<br>
<<printThought $player "That wasn't the problem!">><br>
<br>
"@@.npc_psychiatrist;Anyway, though I wish I had known previously it is quite alright for you to continue taking them, from what I remember of the literature they have been showing very fine promise.@@"
<</if>>
<br><br>
<<switch $player.flags.used_sissy_pill_count>>
<<case 1>>
You quickly add that you only took the one pill and haven't taken any since.<br>
<br>
"@@.npc_psychiatrist;I see, well, remember that the first time trying a new medication can be a bit odd, and it can take some time for full effects to become apparent. You should consider taking at least one more, more datapoints, in scientific jargon, before you make any long-term decisions.@@"
<<case 2>>
You quickly add that you took both pills your <<=setup.getNpcName('npc_manager', 'title')>> gave you, but have not taken any more.<br>
<br>
"@@.npc_psychiatrist;Interesting... Obviously you enjoyed the results or you would not have taken it the second time, unless you just wanted to do it for scientific confirmation?@@" She laughs. "@@.npc_psychiatrist;Anyway, I imagine that <<=setup.getNpcName('npc_manager', 'other')>> would be more than happy to give you more so that you can "keep up" you medication.@@"
<<default>>
You quickly add that you took both pills your <<=setup.getNpcName('npc_manager', 'title')>> gave you, and then asked her for more!<br>
<br>
"@@.npc_psychiatrist;You know, I thought I had noticed a bit of a glow about you. If you are pleased with the results I heartily recommend that you continue taking them, I mean, clearly they seem to be working for you!@@"
<</switch>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: technician handjob
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You bring up how, on the last day of your pre-secretary job, you
<<switch $npc_technician.flags.dataservice_encounter.handjob_finish>>
<<case 'mouth'>>
gave <<=setup.getNpcName('npc_technician', 'first')>> a blowjob while crouched under her desk.<br>
<br>
<<if $npc_technician.stage < 2>>
"@@.npc_psychiatrist;My my, that would have been your first blowjob, would it not? It sounds to me like there is a bit of a spark between you and <<=setup.getNpcName('npc_technician', 'first')>> if you felt so eager to do something like that at such minor provocation. You should call her up and get together, oh, I bet the two of you could have such lovely, cute fun together?@@"
<<else>>
"@@.npc_psychiatrist;My, my, so enthusiastic and adventurous! This is exactly the sort of experience I keep telling you to be more open to. When you want something, reach out and grab it! With a willing partner, of course.@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage >= 1>>
You note that <<=setup.getNpcName('npc_technician', 'first')>> and you have since started dating proper so it really kind of all just worked itself out.<br>
<br>
"@@.npc_psychiatrist;I am totally not surprised. I mean, a cutie like you, so giving from the jump... well it's a recipe for success in the dating world, that's for sure!@@"
<<else>>
You note that <<=setup.getNpcName('npc_technician', 'first')>> and you have been spending more time since and have started to become friends.<br>
<br>
"@@.npc_psychiatrist;Friends... and maybe something more?@@" She smiles "@@.npc_psychiatrist;I'm sure you'll figure it out, but I have a feeling that you and <<=setup.getNpcName('npc_technician', 'formal')>> are in for all sorts of fun together so long as you continue to show the same openness and enthusiasm for new experiences.@@"
<</if>>
<</if>>
<<case 'hand'>>
gave <<=setup.getNpcName('npc_technician', 'first')>> a handjob while crouched under her desk.<br>
<br>
"@@.npc_psychiatrist;My, my, and I thought that day had been eventful enough for you, what with changing jobs and everything... Well, to be honest, I cannot think of much else to say about this other than to congratulate you on such success your first time out. After all sometimes it is tricky to translate what we know about pleasuring ourselves to someone else but it sounds like you are a natural!@@"
<<case 'fail'>>
tried to give <<=setup.getNpcName('npc_technician', 'first')>> a handjob but didn't quite have the skills to finish her off.<br>
<br>
"@@.npc_psychiatrist;Interesting, of course even in failure there are lessons and I am sure you will do better the next time, and better again the time after that. And anyway, I am sure <<=setup.getNpcName('npc_technician', 'first')>> appreciated the effort, right?@@"<br>
<br>
You nod in confirmation.<br>
<br>
"@@.npc_psychiatrist;Wonderful!@@"
<<case ''>>
touched <<=ps(setup.getNpcName('npc_technician', 'first'))>> lady-bits but then panicked and retreated to your desk.<br>
<br>
"@@.npc_psychiatrist;I see, I suppose it might have been a bit of shock but well... these things are perfectly natural.@@"<br>
<br>
You nod, confirming that you were just startled and what with the stress of the lost data and everything...<br>
<br>
<<if $npc_technician.stage < 2>>
"@@.npc_psychiatrist;Of course, of course just... maybe make sure you reach out; not necessarily in THAT way... unless you're ready to follow through, of course! Anyway, just make sure that your friend knows that everything is fine between the two of you, you know how sensitive we girls can be about our bodies sometimes.@@"
<<else>>
"@@.npc_psychiatrist;Of course, of course and clearly it all worked out in the end between you and <<=setup.getNpcName('npc_technician', 'first')>> but, well... in the future you ought to be a bit more deliberate with your actions.@@"
<</if>>
<<default>>
ERROR unexpected technician dataservice_encounter.handjob_finish <<=$npc_technician.flags.dataservice_encounter.handjob_finish>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: gender identity
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You bring up the topic of your gender to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and she subtly perks up with interest.<br>
<br>
"@@.npc_psychiatrist;Such an interesting, important topic so, tell me <<=$player.first_name>>, after all that's happened, all that you've learned about yourself, how do you identify?@@"
<br><br>
[<<moveTo "event_psychiatrist_theme_gender_2" "Try to tell her you're a normal guy and all this cross-dressing is only due to your job." 60 "<<set $scene.gender='male'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_2" "Tell her you're a guy who likes crossdressing and such." 60 "<<set $scene.gender='xdress'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_2" "Tell her you don't fully feel like you identify with either gender." 60 "<<set $scene.gender='agender'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_2" "Tell her your gender is feeling very fluid." 60 "<<set $scene.gender='fluid'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_2" "Come out to her that you're a girl." 60 "<<set $scene.gender='girl'>>">>]<br>
<<if setup.getAverageFemstyle($player) == "voluntary" || setup.getTotalValue("feminization") == 20>>
[<<moveTo "event_psychiatrist_theme_gender_2" "Confidently inform her you're a girl." 60 "<<set $scene.gender='conf_girl'>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: declare gender identity
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<switch $scene.gender>>
<<case 'male'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<set $player.flags.identify_as = 'male'>>
<<case 'xdress'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<set $player.flags.identify_as = 'male'>>
<<case 'agender'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<set $player.flags.identify_as = 'agender'>>
<<case 'fluid'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<set $player.flags.identify_as = 'fluid'>>
<<case 'girl'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<set $player.flags.identify_as = 'female'>>
<<case 'conf_girl'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 3>>
<<set $player.flags.identify_as = 'female'>>
<</switch>>
<<set $npc_psychiatrist.flags.knowgender = "">>
<<if $player.flags.identify_as == 'female'>>
<<if setup.getTotalValue("feminization") > 10>>
<<set _x = setup.removeStress($player,3)>>
<<set $scene.stressful = false>>
<<else>>
<<set _x = setup.addStress($player,5)>>
<<set $scene.stressful = true>>
<</if>>
<<elseif $player.flags.identify_as == 'male'>>
<<if setup.getTotalValue("feminization") < 10>>
<<set _x = setup.removeStress($player,3)>>
<<set $scene.stressful = false>>
<<else>>
<<set _x = setup.addStress($player,5)>>
<<set $scene.stressful = true>>
<</if>>
<<else>>
<<set _x = setup.removeStress($player,3)>>
<<set $scene.stressful = false>>
<</if>>
<<if !setup.checkThemeExist('npc_admin', 'transition', 'theme_admin_transition_20')>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_20'
20
'event_admin_comingout_1'
true
'theme_admin_transition_header'
>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.gender>>
<<case 'male'>>
You explain that you're a man! And that all of this crossdressing and such is just because of your psycho boss!<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.npc_psychiatrist;I see... and yet you appear before me, off the clock... dressed like that...@@"<br>
<br>
You sheepishly shift in your chair at the reminder of the fact that you are dressed quite femininely.<br>
<br>
"@@.npc_psychiatrist;Not that I would wish to dispute your identity but... perhaps you would be more calm and at ease if you were more open to accepting change instead of rigidly clinging to the past?@@"
<<case "unisex">>
"@@.npc_psychiatrist;I see... well, if that is how you feel far be it from me to contradict still...@@"<br>
<br>
She trails off, her words hanging in the air as you awkwardly shift, reminded of the fact that despite your objections you currently sitting wearing less than masculine attire.
<<case "male">>
"@@.npc_psychiatrist;I see, I see though... though that old line from Shakespeare about protesting too much comes to mind. I know things have been stressful for you and clinging to the familiar can seem like a good idea but... well, what have I said before about broadening your horizons?@@"
<<default>>
<<if setup.checkNaked()>>
"@@.npc_psychiatrist;My my, rebirth through therapy, what a responsibility I have! Or... did you intend to send a different message by sitting there are cute and lovely in your birthday suit?@@"
<<else>>
ERROR, expected male, female, unisex or naked!
<</if>>
<</switch>>
<<case 'xdress'>>
You explain that, while you have come to quite enjoy crossdressing and such you still identify as a man.<br>
<br>
"@@.npc_psychiatrist;I see, I see well, just pay attention to your feelings, spending enough time as a cute girl well... I daresay you reach a point where you never want to go back.@@"
<<case 'agender'>>
You state that, in light of everything that has happened to you're feeling like disassociating from the concept of gender entirely.<br>
<br>
"@@.npc_psychiatrist;Interesting, a valid choice, certainly only... I find it is best to define oneself by what they are, not solely by what they are not. Certainly you can reject the popular choices in the matter but do try to come up with a personal philosophy that stands on its own as well.@@"
<<case 'fluid'>>
You state that you've come to consider yourself as more gender fluid, your preferences taking novel form as you pick and chose your favorite bits from all ends of the spectrum.<br>
<br>
"@@.npc_psychiatrist;Very interesting, I encourage you to keep exploring in this direction only and see where the waters take you.@@"
<<case 'girl'>>
Somewhat nervously you tell her that you think of yourself as a girl. She smiles wide before responding with enthusiastic excitement.<br>
<br>
"@@.npc_psychiatrist;Of course you are! But say it louder, prouder! Come on now, I'm a girl! A wonderful, cute girl!@@" She pauses for a moment before encouraging you further. "@@.npc_psychiatrist;Come, your turn, shout your truth!@@"<br>
<br>
You hesitate but the opportunity is just too alluring and you do as she says, your voice warbling slightly before booming forth with confidence you didn't even know you had as you finish off declaring yourself a "cute girl!" <br>
<br>
She looks almost giddy, clapping excitedly. "@@.npc_psychiatrist;Perfection! Another summit climbed, another achievement unlocked, I just feel blessed to have been fortunate enough to bear witness!@@"
<<case 'conf_girl'>>
You boldly assert that you are a woman. She smiles.<br>
<br>
"@@.npc_psychiatrist;Preach it, sister! Oh, I've known for a long time, of course but... well, it is just so gratifying to see you declare it yourself; I hope to continue to do my small part in aiding your continued growth into the lovely lady you were always meant to bed.@@"
<<default>>
ERROR unexpected scene.gender: <<=$scene.gender>>
<</switch>>
<br><br>
<<if $scene.stressful>>
You think about her words but you find yourself more stressed having made your statement than you were before... maybe because on some level it feels like you weren't ready?
<<else>>
You feel like a weight has been lifted, significantly less stressed now that you have made your declaration openly.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: lose anal virginity
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<<set $scene.firstAnalTalk = $npc_psychiatrist.themes['other'][themeId].done <= 1>>
<<if $scene.firstAnalTalk>>
<<switch $player.analvirginity>>
<<case 'npc_prostitution_client'>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<case 'gloryhole'>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<</switch>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $scene.firstAnalTalk>>
You bring up the fact that you got fucked in the ass for the first time.<br>
<br>
<<if $player.peggingvirginity != "">>
She raises an eyebrow in puzzlement. "@@.npc_psychiatrist;But I thought you had been pegged? How is that not-@@"<br>
<br>
You blush in embarrassment and explain that yes, that's true but that feeling a hot, flesh and blood cock pumping inside of your, making your body open to its will... well, that's different, isn't it?
<<else>>
She nods and asks you to tell her how it felt. You blush in embarrassment and try to describe what it was like to feel a hot, flesh and blood cock pumping inside of your, making your body open your body to its will... Your voice trails off as you are struck with the thought that she was probably talking about how it made you feel emotionally, not the physical experience of the moment.
<</if>>
<br><br>
She smiles as you realise the... flowery way you described the rigid member that had explored your hole. "@@.npc_psychiatrist;I see, I see, so, who was the lucky boy, or was it a lucky girl who was first to spear you with her lady lance?@@"<br>
<br>
<<switch $player.analvirginity>>
<<case 'npc_prostitution_client'>>
You blush and explain that it was with one of your clients when you were working as a prostitute.<br>
<br>
"@@.npc_psychiatrist;My, my, well I hope they paid extra for such a privilege.@@"<br>
<<case 'gloryhole'>>
You reply that, technically, you don't actually know... since you were working in the gloryhole at the time you never actually saw your partner.<br>
<br>
She shifts in her chair, seeming to need to adjust herself. "@@.npc_psychiatrist;My my, aren't you a slut! Oh, but I mean that in a good way, being a slut is great!@@"
<<case 'npc_futa'>>
You reply that it was with a shy- well, not anymore, but she used be a shy girl at work but that with her new cock she's quite a bit more adventurous.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;It sounds like she isn't the only one! A lady penis really is a wonderful thing, every girl should have one, if she wants.@@"
<<default>>
ERROR: unhandled anal virginity: <<=$player.analvirginity>>
<</switch>>
<br><br>
She scribbles down some notes and then looks back up at you. "@@.npc_psychiatrist;And how do you feel about the whole situation?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you loved it and can't wait to get fucked again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say it was ok." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you feel dirty." 60 "<<set $scene.react='no'>>">>]
<<else>>
Again you bring up how you lost your anal virginity.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> pauses and looks at you with a slight smile. "@@.npc_psychiatrist;Hmm... do you really want to talk about that again or is this your sneaky way of asking for something else?@@" One of her hands disappears under the desk and you hear a slight shuffle of clothing. "@@.npc_psychiatrist;Well... do you want to... "work through" your feelings about being fucked in the ass? If so well... how about you start by telling me how you felt about that first time?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you loved it and can't wait to get fucked again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say it was ok." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you felt dirty." 60 "<<set $scene.react='no'>>">>]<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
<</if>>
</div>/*#
#desc: psychiatrist topic: lose anal virginity
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.react == 'yes'>>
<<applyExperience 'bimbofication' 12 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.react>>
<<case 'yes'>>
You gush about how much you loved the feeling of being fucked in the ass, that you wish you'd discovered the joy of being a cock-socket sooner! As you continue to go on you realise that she's looking a bit flush, shifting uncomfortably in her chair for a minute before finally stopping you.<br>
<br>
"@@.npc_psychiatrist;I'm sorry. I want to be a professional about this but... this is just too much. Either we need to change topics or I need to bend you over this desk and sample that hot hole myself.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Bend over for some more... penetrating therapy." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Decline her offer and move on." 60 "<<set $scene.accept=false>>">>]
<<case 'no'>>
You say you didn't like it at all, that you aren't that type of person, that you don't want to get fucked, you want to do the fucking!<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> remains sombre and calm as your complaints slowly sputter out before addressing you in an almost patronising way. "@@.npc_psychiatrist;Are you done?@@" she shakes her head "@@.npc_psychiatrist;I am sorry to say that I really am quite disappointed in you; our work together is all about opening you up to being more relaxed and comfortable in your own skin such a reaction like this... After all, if you didn't want to "get fucked" as you so crudely stated, you could have just said no. Instead you, to remain consistent with your style "took it in the ass like a sissy bitch" isn't that right?@@"<br>
<br>
Taken off guard by her words, rendered in a totally clinical tone you sputter and try to object but your words are jumbled and incoherent, especially when she rises to her feet, walking around the desk and then standing over you, a small, but VERY noticeable bulge almost touching your face.<br>
<br>
"@@.npc_psychiatrist;Now, a reaction like yours comes from a place of fear and self-loathing; both of which are highly negative emotions that belong nowhere near your adorable, cute head. So, what do you say; are you ready to face your fear?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Face your fear and bend over for some more penetrating therapy." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Say you're not ready." 60 "<<set $scene.accept=false>>">>]
<<case 'maybe'>>
You shrug, saying that you don't really have strong feelings about your ass-fucking one way or the other. <<=setup.getNpcName("npc_psychiatrist","formal")>> frowns.<br>
<br>
"@@.npc_psychiatrist;Hmm, such a muted response; to an event that, well... you have to admit was quite a significant one. I think you may want to spend more time contemplating things, maybe you just haven't had time to process but know, as always, I am here whenever you are ready to admit that you are a sissy butt-slut.@@"<br>
<br>
Her final words; rendered in the same clinical tone as the rest, take you off-guard and you blink and sputter as you try to object. She looks down her nose at you until your voice fades. "@@.npc_psychiatrist;I apologize for using such crude terminology but, as you just saw, it was necessary to break through this shell of self-denial you had built around your memory. So, now that we have proven that you are not "take it or leave it" about a nice hard cock in your ass tell me how you REALLY feel about what happened.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you loved it and can't wait to get fucked again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you feel dirty." 60 "<<set $scene.react='no'>>">>]
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
</div>/*#
#desc: psychiatrist topic: psychiatrist fucks your ass
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.accept>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_psychiatrist.penis_size 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'humilation' 12 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
As you bend over <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> and spread your cheeks you momentarily reflect on how you got here - from talking about your recent popping of your anal cherry to now, bent over and exposed and about to be fucked in the ass again; this time by your lovely therapist.
<<if setup.getItemFromType("plug") != "">>
Her fingers wrap around the base of your plug and gently move it back and forth in your ass as a preamble, working you until you start to moan before popping it free and laying her <<getWordLadyPenis $player>> between your cheeks.
<</if>>
<br><br>
"@@.npc_psychiatrist;Are you ready for a doctor-prescribed dose of vitamin My Cock?@@" she asks and you moan even harder, the heat of her <<getWordLadyPenis $player>> already turning you on as you are now desperate to feel it inside of you. "@@.npc_psychiatrist;Very well, administering a FULL dose.@@" She adds as she thrusts into you.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
She may be small by your standards but she makes up for it with consummate skill, and you are soon gasping and moaning, amazed at how giving of a lover she is. Her hands caress your body as she gives your prostate the time of its life.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Her small penis is welcome, sliding into you with ease, a reminder of how wonderful anal sex can be with the right partner.
<<else>>
Her small penis is welcome, sliding into you without the slightest pain, a reminder of how wonderful anal sex can be with the right partner.
<</if>>
And the "right partner" she is, showing consummate skill as she stimulates your hole, using her knowledge of anatomy to perfectly hit your prostate with every stroke as her delicate fingers roam over your hips.
<</if>>
<br><br>
"@@.npc_psychiatrist;Patient is reacting well, increasing the dose@@" she continues as she quickens her pace.<br>
<br>
You moan something approximating "yes" panting and moaning and loving every second and centimeter that she is giving it to you.<br>
<br>
Working you perfectly it isn't long before you cum - a pure analgasm that has your seed dripping down the front of her desk as you almost go limp, barely cognisant of her own, smaller orgasm that comes a moment later.<br>
<br>
"@@.npc_psychiatrist;Treatment successful, patient has been calmed and is showing very positive reactions to the medication. It is advised that patient continue to seek out such treatments on an ongoing basis.@@" <<if setup.getItemFromType("plug") != "">>As she talks she slides your freshly lubed plug back into your hole, sealing her juices inside of you and making you shudder.<</if>><br>
<br>
Managing to compose yourself by the time she returns to her side of the desk you wipe a bit of drool of your mouth and take your seat.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
<<else>>
<<switch $scene.react>>
<<case 'yes'>>
Blushing you thank her for the offer but respond that you'd like to focus back on your therapy. Shifting in her chair with obvious discomfort she winces and then nods.<br>
<br>
"@@.npc_psychiatrist;Very well, but I am making a note that you are behaving like an evil cock-tease.@@"
<<case 'no'>>
Halfway out of her seat she frowns, slowly lowering back down and shaking her head.<br>
<br>
"@@.npc_psychiatrist;Very well, but I am making a note that you are behaving like an evil cock-tease.@@"<br>
<br>
You wince and hurry to change the subject.
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
<</if>>
</div>/*#
#desc: talk to psychiatrist about admin promotion
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how, with some help from you, he got a bit promotion and is now working for <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Oh? She needs TWO secretaries now?@@"<br>
<br>
Your jaw drops in shock. The idea of <<=setup.getNpcName('npc_admin', 'first')>> being a secretary... to say nothing of being somehow victim to the "transformations" you've been through... You hurriedly clarify that no, no, he's there to do a similar job to what he had back at CDS.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles and you spend a bit more time chatting about how it feels to work with a personal friend, and how excited you are for <<=ps(setup.getNpcName('npc_admin', 'first'))>> new opportunity.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk to psychiatrist about seeing admin and manager having sex
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how your best friend, <<=setup.getNpcName('npc_admin', 'first')>> and your boss, <<=setup.getNpcName('npc_manager', 'formal')>> are having sex at work.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> rolls her eyes. "@@.npc_psychiatrist;<<=setup.getNpcName('npc_manager', 'first')>> found another one did she?@@" She shakes her head. "@@.npc_psychiatrist;As much as she likes... helping people like yourself she loves taking a roll in the hay with a proper man's man. Let me guess, after he left she had you lick up his cum?@@"<br>
<br>
Your jaw drops in shock at how casually <<=setup.getNpcName('npc_psychiatrist', 'formal')>> this whole thing and slowly nod.<br>
<br>
"@@.npc_psychiatrist;As I suspected. It's all part of the game for her what about you, do you like your new duty? Or do you prefer drinking it straight from the source?@@"<br>
<br>
<<if setup.getTotalValue("cum") >= 15>>
You blurt out that you'll take cum however you can get it and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles.
<<elseif setup.getTotalValue("penis") >= 15>>
You blurt out that, obviously, it's best sucked from the source, as a nice beautiful cock is one of the best things in life.
<<elseif setup.getTotalValue("bimbofication") > 10>>
A bimbo giggle escapes your lips as you reply that cum is just a bonus on top of being able to perform a bit of cunnilingus.
<<else>>
You're somehow even more shocked at her question but she laughs and moves on as if it were just rhetorical.
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk to psychiatrist about flirting with admin while working out
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk about your unsuccessful attempts to flirt with <<=setup.getNpcName('npc_admin', 'first')>> during your morning workout.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> thinks for a moment before responding.<br>
<br>
"@@.npc_psychiatrist;Well flirting is obviously perfectly healthy and a great way to explore new relationships. Just pay attention that you are not making your target uncomfortable and such. As for this particular case well... Given your history with <<=setup.getNpcName('npc_admin', 'other')>> you may want to consider discussing your feelings in a more private manner. The gym or the bar where you usually see him well... neither are optimal for real serious conversations. Perhaps you could get him to visit you at home for a more private chat? If, that is, you are serious about pursing something with him.@@"<br>
<br>
You thank her for the advice.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk to psychiatrist about failing to seduce admin at home
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your failed attempt to seduce <<=setup.getNpcName('npc_admin', 'first')>> at your apartment.<br>
<br>
After expressing her sympathy she gives you some suggestions. "@@.npc_psychiatrist;While making a romantic partner from a friend has some upsides in terms of established chemistry and the like there are obviously some additional challenges. Here more than usual. In this case well... from what you've said <<=setup.getNpcName('npc_admin', 'first')>> sounds quite heterosexual, so even though he's accepted you as a woman, you want to ease him into things, think flirty "oops, I'm still wearing my cute nightgown" rather than "come into my lair..." Well, the later isn't really you in any case you are adorable and sweet... not so much diabolical seductress. Other than that well... be yourself, and try to remain focused and not get distracted or lose confidence. Relationships can be hard, but with the right person, they're worth it.@@"<br>
<br>
You thank her for the advice. "@@.npc_psychiatrist;Of course, it's what I'm here for!@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk to psychiatrist about manager "setting you up" with admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk about <<=ps(setup.getNpcName('npc_manager', 'formal'))>> "ambushing" you and trying to get you to suck <<=ps(setup.getNpcName('npc_admin', 'first'))>> and/or play matchmaker with the two of you.<br>
<br>
"@@.npc_psychiatrist;I see... a bit bold, even for <<=setup.getNpcName('npc_manager', 'first')>> but... not particularly out of character. What happened next, did you suck his cock?@@"<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
You're actually somewhat confused by the question but clarify that, like, of course you sucked his cock, what kind of girl does she think you are?<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Oh, I know EXACTLY what kind of bimbo slut you are, but that doesn't mean I don't just adore hearing you say it.@@"
<<else>>
You reply that, like, of course you sucked his cock! Who wouldn't jump at the opportunity to make sweet oral love to such a fantastic specimen.
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
You blush and admit that you did, indeed, suck him off.
<<else>>
Though you feel mortified to admit it you reply that, yes, you did suck him off.
<</if>>
<br><br>
"@@.npc_psychiatrist;Now, now, sucking a bit of cock is nothing to be ashamed of. So long as you, and the owner of said cock, enjoy the experience? Well, I'd say it would be more a sin to pass up the yummy opportunity!@@"
<</if>>
<br><br>
Moving on you explain that <<=setup.getNpcName('npc_manager', 'formal')>> followed up by setting up a dinner date between you and <<=setup.getNpcName('npc_admin', 'first')>> later that same evening.
<<else>>
You blush at the thought, explaining that no, you didn't but that your manager still steered things towards a date between you and <<=setup.getNpcName('npc_admin', 'first')>> later that same evening.
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk to psychiatrist about first date with admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk about the crazy meal that you shared with <<=setup.getNpcName('npc_admin', 'first')>> as the two of you hashed out your relationship.<br>
<br>
Waiting for you to talk through the whole evening, and insisting to hear about each course as she explains that she jealously always wanted to try the tasting menu at Le Chateau de L'amour but could never get reservations you finally get to the end of the evening as she sits forward in her chair and asks what <<=ps(setup.getNpcName('npc_admin', 'first'))>> decision ended up being.<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
You explain that, while a traditional relationship does not seem to be in the cards, he is open to a more casual/physical thing.<br>
<br>
"@@.npc_psychiatrist;Lovely, lovely. Friends with benefits can be some of the best friends and well... who knows? Not like he shut the door forever on something more. Take it from me, you drain a cock well enough and people can end up with all sorts of ideas about marriage and like.@@"
<<case 'boyfriend'>>
With stars in your eyes you tell her about the nigh-perfect end to the evening and how he kissed you on your stoop as his girlfriend.<br>
<br>
"@@.npc_psychiatrist;Oh I'm so happy for you! I know you worked really hard to get here - in so many ways, to hear it all work out... Well, of course there is still work to do to make the relationship a success but... again, I am just so delighted for the both of you. Two lovely people such as yourselves deserve each other and all the happiness you can grab!@@"
<<case 'friend'>>
You explain that, at the end of it all, <<=setup.getNpcName('npc_admin', 'first')>> gave you the "I see you as more a friend" speech.<br>
<br>
"@@.npc_psychiatrist;Oh, I'm sorry to hear that, you spent so much time getting to this point but... well, these things happen. It's good to see that you seem to be handling it well; if you need anything well, that's what I'm here for!@@"
<<default>>
ERROR: unexpected scene.date.verdict <<=$npc_admin.flags.relationship>>
<</switch>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk to psychiatrist about gym bj with admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You tell about giving <<=setup.getNpcName('npc_admin', 'first')>> after your morning workout.<br>
<br>
She smiles. "@@.npc_psychiatrist;Oh what fun! How did it go, dish, girl!@@"<br>
<br>
You blush, though by now you should really be used to the fact that like... half of therapy is her getting excited about your sex life.<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
"@@.npc_psychiatrist;Come on! Not that this was the first time you got to savour his delicious man muscle but... did the sequel live up to the original?@@"<br>
<br>
You sigh as you confirm that, actually, it was even better
<<else>>
"@@.npc_psychiatrist;Well? If you don't hurry up and tell me what happened I'll be demanding a live recreation... though, I admit, my "stand in" would be nowhere near the size of the jaw-busting original so maybe you should just narrate what happened?@@"<br>
<br>
You tell her that it was simply amazing
<</if>>
- that the combination of how hot you both were after working out, the semi-public place and the fact that it was wholly your idea instead of your <<=ps(setup.getNpcName('npc_manager', 'title'))>> machinations made it just fantastic leaving you eagerly looking forward to the next time you get the opportunity to feel his magnificence inside of you.<br>
<br>
"@@.npc_psychiatrist;Mmm, now that's what I call a happy ending! Well, except it isn't over, but I believe this bodes well for your future relationship with him, whatever direction you decide to take it.@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: rpg group in general
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_15'
7
'event_psychiatrist_theme_warlock_1'
false
'theme_psychiatrist_rpg_group_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_5'
7
'event_psychiatrist_theme_dude_1'
false
'theme_psychiatrist_rpg_group_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_10'
7
'event_psychiatrist_theme_maid_1'
false
'theme_psychiatrist_rpg_group_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_0'
7
'event_psychiatrist_theme_technician_1'
false
'theme_psychiatrist_rpg_group_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_20'
7
'event_psychiatrist_theme_barista_1'
false
'theme_psychiatrist_rpg_group_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_5'
7
'event_psychiatrist_theme_rpg_character'
false
'theme_psychiatrist_rpg_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_15'
7
'event_psychiatrist_theme_rpg_campaign'
false
'theme_psychiatrist_rpg_header'
>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about accepting the invitation to join <<=ps(setup.getNpcName('npc_technician', 'first'))>> weekly gaming group.<br>
<br>
"@@.npc_psychiatrist;Oh that sounds great! Socializing with friends, and indulging some fun fantasies together! Oh, what could be better?@@"<br>
<br>
You agree that it was really fun and she expresses interest in hearing your thoughts about your fellow players, or anything else, about the game.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg player: warlock
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the gothy girl who plays a warlock, how flirty she acts IRL while acting very intense and min-maxy in-game.<br>
<br>
"@@.npc_psychiatrist;She sounds fun, and, really, isn't there always one person who takes things a bit more serious? Still, so long as they don't overshadow the rest of the party it's all in good fun. That's the beauty of a good paper and pencil RPG, so many unique ways to express yourself.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg player: dude
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the lone dude in the player group... You pause, distracted by the expression of almost rapturous joy on your therapist's face and you ask what's the matter.<br>
<br>
"@@.npc_psychiatrist;Nothing is the matter everything is just... you heard what you did there, right? You said that <<=setup.getNpcName('npc_rpg_dude', 'first')>> was the only man in the group, which is factually true, of course but... well... You saying it without even thinking? It's a small thing and yet also such a wonderful accomplishment. I am just so, so happy that you have come so far from the muddled, confused person I met that first day... I hope my assistance has been of some minor use in bringing you to this point and I'll do whatever I can to continue to support you going forward.@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought $player "She's right!">>
<<else>>
<<printThought $player "What? No, it was just a slip of the tongue! But... telling her that would make her so sad...">><br>
<</if>>
<br><br>
You blush and thank her before returning to talking about <<=setup.getNpcName('npc_rpg_dude', 'first')>> and his remarkably laid back behaviour even as his girlfriend blatantly flirts with other people in front of him.<br>
<br>
"@@.npc_psychiatrist;Hmm, an interesting perspective, but a very narrow one. Remember that monogamy is only one type of relationship structure, and no better, or worse, than any other.@@"<br>
<br>
Sensing your confusion she continues on.<br>
<br>
"@@.npc_psychiatrist;Well, think of it logically - even in a perfect relationship there are needs that one partner would be unable to meet. Ignoring complete, and unhealthy, codepedance we're all a bit different in our interests, but going beyond that. What if your girlfriend was bi? You can't cover both of those interests at the same time. Or what if you wanted to eat another man's cum out of her while taking it from behind? That's literally impossible to do with only two people!@@"<br>
<br>
You blink, somewhat stunned by her choice of examples as she continues on.<br>
<br>
"@@.npc_psychiatrist;Plus, plus!, Well, if you're in a relationship with someone just knowing that they're enjoying themselves and having new experiences is pleasurable, so, properly negotiated, of course, anything from voyeurism to cuckoldry can serve to enhance and deepen a relationship, and, well, just be really hot and fun!@@"<br>
<br>
You're still thinking all this over and she just smiles.<br>
<br>
"@@.npc_psychiatrist;Give it some thought, and pay attention to your new friends, I'd bet good money that, what was his name? <<=setup.getNpcName('npc_rpg_dude', 'first')>>? Is totally getting off on watching his girlfriend flirt, and probably a lot more too!@@"<br>
<br>
You finally nod and agree to keep an eye out.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg player: maid
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk about <<=setup.getNpcName('npc_maid', 'first')>>, the somewhat surly waitress from the mall who plays a rough and tumble half-angel barbarian in the campaign.<br>
<br>
"@@.npc_psychiatrist;What a creative character! This is the sort of freedom of expression that RPGs are so fantastic for.@@"<br>
<br>
You nod, and spend a few minutes trying to untangle the simultaneously friendly and acrimonious relationship between <<=setup.getNpcName('npc_maid', 'first')>> and <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;It's hard to say without knowing the two of them personally but I'd say it's a pinch of personality clash, and a dash of old friends having a bit of fun with one another. Be careful not to get between them and I'm sure you'll be fine.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg player: technician (DM)
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk about <<=setup.getNpcName('npc_technician', 'first')>>, who really is quite the skilled "Dungeon Mistress" as she would term it.<br>
<br>
"@@.npc_psychiatrist;That's huge, so many rpg groups have failed due to either no DM or a poor one. For her to invite you to join the group well... from a certain perspective it's quite an honor. Of course who WOULDN'T want to have a sweetie like you around, but still, bringing you into the campaign, introducing you to her other friends... It was a bit of a risk and it must mean she quite likes you.@@"<br>
<br>
You blurt out that you quite like her as well before blushing as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> silently grins back and makes a note on your chart.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg player: barista
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk about the surprising inclusion of the slutty barista from work, <<=setup.getNpcName('npc_barista', 'nickname')>> as part of the RPG group. You note that she is just as bubbly off the job as she is on, though she also has weird moments where she seems to do complex statistical calculations all in her head.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is somewhat slower to respond than usual, seeming to almost freeze as you talk about <<=setup.getNpcName('npc_barista', 'nickname')>> only to finally reply with a bit of a falter in her voice.<br>
<br>
"@@.npc_psychiatrist;Yes, well, you never know what sort of hidden skills people can have, or where someone you knew will randomly turn up! Haha.@@" Her laugh seems oddly forced as she steers you towards a fresh topic of conversation.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg campaign tone
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk about the somewhat perverted goings-on in the context of the RPG campaign.<br>
<br>
"@@.npc_psychiatrist;Interesting, interesting, I mean, it's all in good fun, right? And isn't this the whole point of RPGs, to explore fantasies in a safe environment?@@"<br>
<br>
You nod, and admit that it has all been pretty interesting.<br>
<br>
"@@.npc_psychiatrist;See? Just as I said,. I only have two additional suggestions - one, you should really take advantage of this opportunity to experiment and have fun with your new friends, and two... well... the DM is obviously the orchestrator of the whole world. I think your friend <<=setup.getNpcName('npc_technician', 'first')>> may have invited you to join the campaign with an interest in more than you being just another player.@@"<br>
<br>
You blush, finding yourself somewhat excited at the thought as memories of <<=setup.getNpcName('npc_technician', 'first')>> dance in the back of your mind as you continue on with your therapy session.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg character
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> asks you to describe the character you're playing in the campaign.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You note that you chose a big, burly half-orc wizard, but you hadn't even finished the first session before you were magically transformed into a girl!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> laughs. "@@.npc_psychiatrist;Sorry about that, but you see the humour, a sort of regression towards the mean. This just goes back to the central core of all of our sessions, how you need to discover, and accept, what and who you are meant to be. In this case, well, I think we can both agree that choosing the big, scary monster character was a put-on facade. Of course that's what role playing games are all about, to a point, but I think the opportunity to explore other aspects of your transition in a safe, fantasy world... well it's just too good an opportunity to pass up.@@"
<<case "elf_priestess">>
You explain that you are playing a beautiful elven priestess who, it turns out, is pretty much pledged to "sex" as a divine concept.<br>
<br>
"@@.npc_psychiatrist;Now THAT is a religion I could get behind! Sure, repressed desire and self-guilt pays like... two thirds of my bills, but bleh! Anyway!, ignoring all that I think it's quite revelatory that you chose a character that hewed so close to so-called feminine ideals, both in appearance, and in action by being a support/healer. Have fun with it, and I look forward to hearing how you take to such a role.@@"
<<case "bard">>
You tell her that you're playing a badass bard.<br>
<br>
"@@.npc_psychiatrist;Ah, the bard! Such a maligned class, yet, as you've seen, in reality such a fun and potent one. Taking centre-stage, pun intended, is a perfect use of your time in fantasy-land; have fun and you may well end up building skills and confidence that will be of great help in your real life as well.@@"
<<case "druid">>
You tell her that you're playing a bestial druid... literally as it seems that you seem to not just frequently find yourself in uncontrolled frenzy, but that such frenzy tends to have... interesting results.<br>
<br>
<<if $npc_psychiatrist.flags.knows_bestiality_fetish>>
"@@.npc_psychiatrist;You perverted girl! Just can't get enough of that exotic sex, hmm? Well no matter, as I've said before, these are perfectly normal desires, and this is a safe outlet, so have fun with it!@@"
<<else>>
<<set $npc_psychiatrist.flags.knows_bestiality_fetish = true>>
"@@.npc_psychiatrist;My, my, I didn't realise you liked it a bit on the... wild side. It's a surprisingly common fantasy and more realizable than many think. Know that, as your doctor, I totally approve this experimentation and think that, so long as you exercise care and judgement, see no issue with you exploring these desires further in general.@@"<br>
<br>
<<printThought $player "Wait, did she just give me her professional approval to perform bestiality? Isn't that, a dictionary example of a paraphilia?">>
<</if>>
<<case "succubus">>
You explain that you're playing a sexy succubus pirate.<br>
<br>
"@@.npc_psychiatrist;Spicy! And, well, I can totally see it, you minx!@@"<br>
<br>
You blush as she grins back.<br>
<br>
"@@.npc_psychiatrist;Well I wish you luck in your gaming. I'm sure you'll get the opportunity to learn all sorts of new... confidence that you can put to good use in your everyday life!@@"
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
Her analysis of what you thought had been a simple choice is food for thought as you mull her words over and continue on.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg "bad end"
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You tell her how, at the culmination of the campaign, you turned on the party to side with the big bad.<br>
<br>
"@@.npc_psychiatrist;Huh, I never would have thought you had it in you. I guess that's the difference between game an real life? I hope the other players weren't too upset?@@"<br>
<br>
You reply that there was a bit of ruffled feathers, but it worked out in the end.<br>
<br>
"@@.npc_psychiatrist;Well, that's good... though, still, I think you make a much cuter devilish slave than a demon queen...@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg finish campaign victoriously
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You gush with pride about reaching the triumphant end of the RPG campaign you've been playing in.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> listens with a wide grin as you narrate the heroic adventures of yourself and the rest of the party as you defeated the ancient demon and rescued not one but TWO royal ladies!<br>
<br>
"@@.npc_psychiatrist;That sounds so amazing! Like something out of a movie! I'm so glad you found such a great playgroup, just seeing you like this, so happy and enthusiastic... I am a little sorry to say that if you keep this up it may well be that you will soon be no longer in need of my services!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg succubus "outfit"
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_technician', 'first')>> about the restraints that <<=setup.getNpcName('npc_rpg_warlock', 'first')>> has you wearing IRL to reflect your character being her character's bound slave.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 1>>
Hearing about you being collared and leashed to kneel at <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> feet seems to have <<=setup.getNpcName('npc_technician', 'first')>> looking more than a little hot and bothered.<br>
<br>
"@@.npc_psychiatrist;Oh, that is a fun way to spice up the session! Good luck going forward, I can only imagine where the campaign could end up if you've already been collared after just one night!@@"
<<case 2>>
You tell her how you "earned" a pair of ankle hobbles in the most recent session.<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName('npc_rpg_warlock', 'first')>> sounds real fun, and creative! I mean, in context it's not like one does much running outside of a LARP but hey, I bet it really helps you get "in character." You should really thank her for taking the care to let you wear such lovely handcrafted items.@@"
<<case 3>>
You tell her how you earned a pair of wrist cuffs to match your previous ankle restraints and collar.<br>
<br>
"@@.npc_psychiatrist;Ooo, a full set! I wonder what you'll earn next? Oh, I bet you're even more excited to find out than I am!@@"
<<case 4>>
You explain that, rather than restraints, proper, you now have a latex demon mask, complete with horns, to wear during game.<br>
<br>
"@@.npc_psychiatrist;Ooo, sexy! Yea, I can totally see you as a demon, and who doesn't love that tight feel of latex?@@"
<<case 5>>
You note that you're now stuck playing with your arms behind your back!<br>
<br>
"@@.npc_psychiatrist;Hah! Sorry, but you have to admit that it's a bit funny. You so willingly let your restraints accrue and now... well, there's nothing for it but to see things through to the end!@@"
<<case 6>>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy["succubus"][5]>>
You reveal that you now have a special butt plug to "make up" for your inability to roll dice by hand.<br>
<br>
"@@.npc_psychiatrist;Oh that is just too cute! Well I know how much you love that sort of thing and it's great that you... "opened yourself up" to letting your new friend equip you up! Heh, I bet you roll all successes too with your magical bum...@@"
<<else>>
You reveal that <<=setup.getNpcName('npc_rpg_warlock', 'character')>> offered you a die-rolling butt plug but you turned her down.<br>
<br>
"@@.npc_psychiatrist;Hmmm, that's too bad, that sounds like a fun little accessory. Still, it is your body, your choice and she was obviously going to respect that.@@"
<</if>>
<<default>>
You explain how, after being collared, cuffed, hobbled, hooded, plugged and bound your succubus outfit culminated with a sexy leather pentagram harness.<br>
<br>
"@@.npc_psychiatrist;Oh, that sounds just lovely! Just think, when Halloween rolls around you already have, like, the perfect costume!@@"
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: call from technician when fail to show up to your "date"
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_technician', 'first')>>. Oh poop. You were supposed to meet her for coffee today.<br>
<br>
"@@.npc_technician;Look <<=$player.first_name>>, if you didn't want to hang out with me you just could have said so in the first place.@@".<br>
<br>
She sounds more bitter and disappointed then angry.<br>
<br>
<<if $npc_technician.flags.knowTrans>>
"@@.npc_technician;I hope this is not about my ... Gender. If that's the case I must have greatly misjudged your character.@@"<br>
<br>
You apologise to <<=setup.getNpcName('npc_technician', 'first')>>, and reassure her that it has nothing to do with that at all, something just came up.
<<else>>
You apologise to <<=setup.getNpcName('npc_technician', 'first')>>.
<</if>>
<<if setup.getTotalValue('bimbofication')>=5>>
You're kind of distracted lately and tend to forget things.
<</if>>
You promise to make it up to her next time.<br>
<br>
[<<moveTo $beforetasklocation "Hang up.">>]
</div>/*#
#desc: wait for + meet technician at maid cafe
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $npc_date = {}>>
<<set $npc_date.firstscene = "normal">>
<<set $npc_date.themes = 0>>
<<set $npc_date.reactnamechange = false>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set _tmp = Math.round(Math.random()*10)+3>>
<<set $now to setup.advanceDate($player, $now, "minutes", _tmp)>>
<<set $scene.bespokeComment = setup.getBespokeComment('npc_technician')>>
<<if $scene.bespokeComment == "">>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_technician',$npc_technician)>>
<<else>>
<<set $scene.compareVisuals = "">>
<</if>>
<<storeVisual $player $npc_technician>>
<<set $npc_technician.dates+=1>>
<<if $npc_technician.dates==1>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_2'
2
'event_technician_makeup_1'
true
'theme_technician_crossdress_header'
>>
<<addNpcTheme 'npc_technician' 'roleplay' 'theme_technician_rpg_5'
5
'event_technician_theme_roleplay_1_0'
true
'theme_technician_rpg_header'
>>
<</if>>
<<set $npc_date.firstdate = true>>
<<if ($npc_technician.dates>1)>>
<<set $npc_date.firstdate = false>>
<</if>>
<<if !$npc_technician.flags.sawyouinfemaleclothes && (setup.analyzeWornTags(['female','male','unisex'])=='female')>>
<<set $npc_technician.flags.sawyouinfemaleclothes = true>>
<<set $npc_date.firstscene = "female">>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<elseif !$npc_technician.flags.sawyouinunisexclothes && (setup.analyzeWornTags(['female','male','unisex'])=='unisex')>>
<<set $npc_technician.flags.sawyouinunisexclothes = true>>
<<set $npc_date.firstscene = "unisex">>
<</if>>
<<if (($player.original_first_name!="") && !$npc_technician.flags.reactnamechange)>>
<<set $npc_date.reactnamechange = true>>
<<set $npc_technician.flags.reactnamechange = true>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_10'
10
'event_technician_comingout_1'
false
'theme_technician_crossdress_header'
>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $npc_date.firstscene == "unisex">>
You sit for a while at the "Newtype IV" waiting for <<=setup.getNpcName('npc_technician', 'first')>>. She seems to be a little bit late. As you wait you can't help notice a few maids chatting with each other while seeming to glance in your general direction.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, I knew this was a bad idea...">><br>
<br>
For a moment you think to pack your things together and text <<=setup.getNpcName('npc_technician', 'first')>> that you simply couldn't make it. But you're too late as a moment later she comes running through the front door, almost crashing into one of the maids. Her eyes scan the cafe and she nails her spot check on the first roll, hurrying over and stopping next to you while trying to catch her breath.<br>
<br>
<<if $scene.compareVisuals=="">>
"@@.npc_technician;Sorry <<=$player.first_name>>... <<=$player.first_name>>... say there is something different about you today, isn't it? Here, let me cast true vision on you. Ah, I see, you finally shed your fake persona and embrace the only true way of life. By role-playing as an elf bard. No? I am sure something has change, I simply have to figure it out.@@"
<<else>>
"@@.npc_technician;Sorry <<=$player.first_name>>... <<=$player.first_name>>... say there is something different about you today, isn't it? Hmm... have you changed something? Wait, tell me nothing. <<=$scene.compareVisuals>>@@"
<</if>>
<br><br>
<<if $npc_date.firstdate>>
"@@.npc_technician;<<=setup.getNpcName('npc_admin', 'first')>> told me you're now working as a secretary for one of the higher ups at Social Interaction Service Syndicate Inc. What roll did you crit fail up to fumble your place into that position?@@"<br>
<br>
You tell her that it must have been botching the "do the fucking backup" check that brought you into this whole situation.<br>
<br>
"@@.npc_technician;Oh yeah. I remember. The whole <<=$player.flags.faultcompany>> incident. Well tough luck, at least you still have a job, even though it seems kind of strange seeing you as a secretary. Hmm, I suppose you must look really cute in a secretary outfit with a miniskirt and a blouse.@@" she says while grinning at you with a rather devious intent. You gulp audibly.<br>
<br>
"@@.npc_technician;Come on, I'm just teasing you. You look good in this, really.
<<if setup.getTotalValue('feminization')>=5>>
But joke aside. Maybe you should start wearing even more feminine clothes. Without trying to offend you... you have a certain feminine radiance others would kill for. If you need some tips I can help you.
<</if>>
Come on, let's order something.@@"<br>
<br>
<<else>>
"@@.npc_technician;Anyway, you remember I was joking about you with a miniskirt and blouse. That outfit is not that far off I have to say. Did I maybe hit a bit closer to home with my assumption then I imagined? These look really cute on you.@@" she says while grinning at you with a rather devious intent. You gulp audibly.<br>
<br>
"@@.npc_technician;Come on, I'm just teasing you. You look good in this, really.
<<if setup.getTotalValue('feminization')>=5>>
But jokes aside. Maybe you should really start wearing even more feminine clothes. Without trying to offend you... you have a certain feminine radiance others would kill for. If you need some tips I can help you.
<</if>>
Come on, let's order something.@@"<br>
<br>
<</if>>
<<elseif $npc_date.firstscene == "female">>
You sit for a while at the "Newtype IV" waiting for <<=setup.getNpcName('npc_technician', 'first')>>. She seems to be a little bit late. As you wait you can't help notice a few maids chatting with each other while seeming to glance in your general direction.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, I knew this was a bad idea...">><br>
<br>
For a moment you think to pack your things up and text <<=setup.getNpcName('npc_technician', 'first')>> that you simply couldn't make it. But you're too late as a moment later she comes running through the front door, almost crashing into one of the maids. Her eyes scan the cafe a few times, glancing past you over and over again. Each time her eyes seem to linger longer, returning faster as if focusing in on you. After a while she takes a smartphone out, tapping at lightning speed and looking at the display, looking at you, then back at the display, before finally approaching you slowly.
<br>
<<if $npc_date.reactnamechange>>
"@@.npc_technician;<<=$player.original_first_name>>...? <<=$player.original_first_name>> <<=$player.last_name>>? Is... is that you?@@"
<<else>>
"@@.npc_technician;<<=$player.first_name>>...? <<=$player.first_name>> <<=$player.last_name>>? Is... is that you?@@"
<</if>>
<br><br>
<<printThought $player "A justified question it seem. I am not so sure myself these days...">><br>
<br>
"@@.npc_technician;Sorry... say there is something different about yo... Nope. Can't do it. I never thought this would be possible, but you my dear frenemy just managed to BREAK MY CONCENTRATION. Give me a second to process this. Don't misunderstand me, I love it, I just need a few seconds to breath it all in....
<<if $scene.compareVisuals=="">>
Okay, done... Not really, but let's say we did.
<<else>>
Hmm... let's see what else has changed. <<=$scene.compareVisuals>>
<</if>>
@@"<br>
<br>
<<if $npc_date.firstdate>>
"@@.npc_technician;<<=setup.getNpcName('npc_admin', 'first')>> told me you're now working as a secretary for one of the higher ups at Social Interaction Service Syndicate Inc. I didn't think he meant it that literally. What roll did you crit fail up to fumble your way into that position?@@"<br>
<br>
You tell her that it must have been botching the "do the fucking backup" check.<br>
<br>
"@@.npc_technician;Oh yeah. I remember. The whole <<=$player.flags.faultcompany>> incident. Well tough luck, at least you still have a job. And I have to admit, it is a delight to see you as a secretary. I always thought you had the right figure to pull this sort of look off and... well... you look even better than I could have imagined!@@" She says while grinning at you with a devious intent. You gulp audibly.<br>
<br>
"@@.npc_technician;Come on, I'm just teasing. You look good in this, great, even. But jokes aside. Without trying to offend you... you have a certain feminine radiance others would kill for. If you need some tips I can help you. Anyway, come on, let's order something.@@"
<<else>>
"@@.npc_technician;Anyway, you remember I was joking about you with a miniskirt and blouse. And now look at you! Did I maybe hit a bit closer to home with my assumption than I imagined? These look really cute on you.@@" she says while grinning at you with a devious intent. You gulp audibly.<br>
<br>
<<if $player.flags.fem_style.name == "">>
"@@.npc_technician;Come on, I'm just teasing. You look good in this, great, even. Like a new person, I almost feel like I should be calling you by a different name! You know you can change those almost as easy as clothing these days, just pop online, pay a filing fee and boop, new you!@@"<br>
<br>
<<printThought $player "Huh, that's an interesting tidbit...">><br>
<br>
"@@.npc_technician;Aaaanyway I just gotta say, without wanting to offend you... you have a certain feminine radiance others would kill for. If you need some tips I can help you. Anyway, come on, let's order something.@@"
<<else>>
"@@.npc_technician;Come on, I'm just teasing. You look good in this, great, even. Like a new person, but all jokes aside. Without wanting to offend you... you have a certain feminine radiance others would kill for. If you need some tips I can help you. Anyway, come on, let's order something.@@"
<</if>>
<br><br>
<</if>>
<br><br>
<<else>>
You wait for a couple of minutes, before <<=setup.getNpcName('npc_technician', 'first')>> appears outside the cafe looking really out of breath.<br>
<br>
<<if $npc_date.firstdate>>
"@@.npc_technician;Sorry <<=$player.first_name>>, I overslept.@@", <<=setup.getNpcName('npc_technician', 'first')>> says while catching her breath, sitting down next to you. She takes a good look at you and continues,
<<if $scene.compareVisuals=="">>
"@@.npc_technician;You look like you'll need more sleep. Having troubles lately?@@"
<<else>>
"@@.npc_technician;Hmm... have you changed something. Wait, tell me nothing. <<=$scene.compareVisuals>>.@@"
<</if>>
<br><br>
"@@.npc_technician;<<=setup.getNpcName('npc_admin', 'first')>> told me you're now working as a secretary for the top brass at Social Interaction Service Syndicate Inc. What roll did you mess up to fumble your place into that position.@@"<br>
<br>
You tell her, that it must have been botching the "do the fucking backup check" which brought you in this whole situation.<br>
<br>
"@@.npc_technician;Oh yeah. I remember. The whole <<=$player.flags.faultcompany>> incident. Well tough luck, at least you still have a job, even though it seems kind of strange seeing you as an secretary. Well I suppose you would look really cute in a secretary outfit with a miniskirt and a blouse.@@" she says while grinning at you with a rather devious intent. You gulp audibly.<br>
<br>
"@@.npc_technician;Just joking, you should have seen your face. Priceless.
<<if setup.getTotalValue('feminization')>=5>>
But jokes aside. Maybe you really should consider wearing female clothing. Without trying to offend you... you have a certain feminine radiance others would kill for. If you need some tips I can help you.
<</if>>
Come on, let's order something.@@"<br>
<br>
<<else>>
"@@.npc_technician;You'd think, I'll learn to set a clock after all these times I've overslept!@@" <<=setup.getNpcName('npc_technician', 'first')>> jokes while catching her breath, sitting down next to you. She takes a good look at you and continues,
<<if $scene.compareVisuals=="">>
<<if $scene.bespokeComment != "">>
<<=$scene.bespokeComment>>
<<else>>
"@@.npc_technician;Have you lost some weight lately? No wait, it simply went down to your butt! Anyway, it is good to see you again. Let's order something, I really need my caffeine!@@"
<</if>>
<<else>>
"@@.npc_technician;Hmm... you have changed something since the last time we met. Give me a second... <<=$scene.compareVisuals>>. Anyway, it is good to see you again. Let's order something, I really need my caffeine!@@"
<</if>>
<br><br>
<</if>>
<</if>>
<<if $npc_date.reactnamechange>>
You explain to <<=setup.getNpcName('npc_technician', 'first')>> that even more has changed, specifically, your new name.<br>
<br>
"@@.npc_technician;Seriously, you go by <<=$player.first_name>> now? Interesting choice, <<=$player.first_name>>... <<=$player.first_name>>... hmm, yea, it suits you. Even more reason for Coffee! My braincells need the caffeine to analyse all of this wonderful news! Oh, and once I'm wired up if you want to talk any more about this... let me know!@@"<br>
<br>
<</if>>
<<if ($npc_date.firstscene == "unisex") || ($npc_date.firstscene == "female")>>
[<<moveTo event_technician_cafe_1_2_fem "Order something." 300>>]
<<elseif $npc_technician.stage==1>>
[<<moveTo event_technician_cafe_1_2 "Order something." 300>>]
<<else>>
[<<moveTo event_technician_cafe_1_2a "Order something." 300>>]
<</if>>
</div>/*#
#desc: order coffee and look around at start of date with technician
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $npc_date.knowTrans = true>>
<<if !$npc_technician.knowTrans>>
<<set $npc_technician.knowTrans = true>>
<<set $npc_date.knowTrans = false>>
<</if>>
<<if $npc_technician.stage <2>>
<<set $scene.rfid_comment = false>>
<<set $npc_technician.stage = 2>>
<<include technician_stage_2_topics>>
<<else>>
<<set $scene.rfid_comment = true>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $npc_date.firstdate>>
Ordering a latte macchiato allows you to get a closer look at the maids waiting tables. <<=setup.getNpcName('npc_technician', 'first')>> was right, they're really cute, but something is strangely familiar and subtly off.<br>
<br>
"@@.npc_technician;So, can you figure it out? Your expression... I think you already know the answer, don't you?@@"<br>
<br>
You nod timidly. Most of the staff, or maybe all of them?, are gender benders. Like <<=setup.getNpcName('npc_technician', 'first')>>... like you. From the cute guy behind the bar looking a little bit too feminine to the maid that serves the couple to your left with a strikingly deep voice for such a very beautiful woman. The more you look the more you detect signs indicating that all the staff - and more than a few of the customers are somewhat... genderfluid.
<<else>>
You order a latte macchiato, as usual. Looking around you still try to figure out if every single maid in here might have once presented as male... Despite, or perhaps because? of this fact you feel much more at ease. Nobody here will ever judge you for how you dress. Everyone is in some way like you. It's not like they try to hide it.
<</if>>
<br><br>
<<if $scene.rfid_comment>>
"@@.npc_technician;You remember when I deduced your whole underwear by "watching you walk." Yeah, the RFID cheat. This time you made it too easy for me. Your new clothes leave little room for interpretation that you're into gender bending. No idea how far yet, but still a nice touch. I have to admit, when I first met you I would have never guessed.@@"
<<else>>
"@@.npc_technician;You know I have this little trick, where I check if someone made the mistake and forgets to erase their RFID tags from their clothes? I start to proclaim some magical mambo jambo, that I know what they wear by simply watching them move? Works pretty good normally. I tell them the truth afterwards and recommend to clean their tags, but most forget after a while. It's the transparent citizen all over again. Anyway, I would have tried it on you as well, but your clothes leave little room for interpretation that you're at least interested into some gender-fluid experimentation, am I right?@@"<br>
<br>
You blush and nod.
<</if>>
<br><br>
<<if !$npc_date.knowTrans>>
"@@.npc_technician;Look, I will be honest with you. Even though there has been the transgression of limits act of 2029, you still can't be sure of peoples' hearts. Nobody is perfect, but here I feel safe, because I am the same. As they... as you. I was born male, never did much besides some light hormone therapies, since I had the advantage of a very feminine body to begin with. Kinda like you.@@" She adds with a wink.<br>
<br>
<</if>>
"@@.npc_technician;Let's see, I had an idea where I was going with all of this rambling. Ah, yes. I remember. If you ever want to talk about anything or need some help I'm here for you, if you want me to be.@@" she says to you while putting her hand on top of yours. Without saying a word you simply nod at her. The two of you are still smiling at each other when a maid appears from the side and introduces herself with a quiet hem. You realise you're still holding <<=ps(setup.getNpcName('npc_technician', 'first'))>> hand. Momentarily looking like an anime rom-com reject you hastily retract your arm.<br>
<br>
[<<moveTo "event_technician_cafe_1_3" "Focus on the Maid." 360 "<<set $npc_technician.stage = 3>>">>]
</div>/*#
#desc: technician "assesses" your undergarments
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $npc_date.knowTrans = false>>
<<if $npc_technician.flags.knowTrans == false>>
<<set $npc_technician.flags.knowTrans = true>>
<<else>>
<<set $npc_date.knowTrans = true>>
<</if>>
<<set $npc_date.panties = setup.getItemFromType("panties")>>
<<set $npc_date.bra = setup.getItemFromType("bra")>>
<<set $npc_date.stockings = setup.getItemFromType("stockings")>>
<<set $npc_date.shoes = setup.getItemFromType("shoes")>>
<<set $npc_date.garterbelt = setup.getItemFromType("garter")>>
<<set $npc_date.plug = false>>
<<set $npc_date.cage = false>>
<<if (setup.getItemFromType("plug_panties")!="") || (setup.getItemFromType("plug")!="")>>
<<set $npc_date.plug = true>>
<</if>>
<<if (setup.getItemFromType("cage")!="")>>
<<set $npc_date.cage = true>>
<</if>>
<<set $npc_date.femPanties = setup.checkItemTag($npc_date.panties,['female'])>>
<<set $npc_date.femBra = setup.checkItemTag($npc_date.bra,['female'])>>
<<set $npc_date.femStockings = setup.checkItemTag($npc_date.stockings,['female'])>>
<<set $npc_date.femShoes = setup.checkItemTag($npc_date.shoes,['female'])>>
<<set $npc_date.hits = 0>>
<<if $npc_date.femPanties || $npc_date.femBra || $npc_date.femStockings || $npc_date.femShoes>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_0'
0
'event_psychiatrist_session_technician_1'
false
'theme_psychiatrist_technician_header'
>>
<<if $npc_technician.stage < 2>>
<<set $npc_technician.stage = 2>>
<<include technician_stage_2_topics>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $npc_date.firstdate>>
Ordering a latte macchiato you get a closer look at the maids working here. <<=setup.getNpcName('npc_technician', 'first')>> was right, they're really looking good. But something seems subtly off. You can't quite put your finger onto it.
<<else>>
You order a latte macchiato, as usual. Looking around you still try to figure out if every single maid in here is male, or at least born as such? There are some where it is more obvious then others, but only if you know where to look, while others... you would have never guessed on your own.
<</if>>
<<if $npc_date.femPanties || $npc_date.femBra || $npc_date.femStockings || $npc_date.femShoes>>
As you return your attention to <<=setup.getNpcName('npc_technician', 'first')>> you realise she has moved a lot closer to you without you noticing, which startles you for a moment.<br>
<br>
"@@.npc_technician;You know <<=$player.first_name>>@@", she whispers into your ear as if she does not want anyone else to hear what she's about to tell you, "@@.npc_technician;I think you're fascinating.@@"<br>
<br>
"@@.npc_technician;Please correct me, if I am wrong about any of the following assumptions. I know I tend to over-analyse things from time to time, but I seem to be right more than not and it's all in good fun.@@"<br>
<br>
<<if $npc_date.femPanties>>
<<set $npc_date.hits += 1>>
"@@.npc_technician;From the way you move your cute butt from side to side... you're wearing something that is not actually intended to make space for your... ahem... little Tim.@@"<br>
<br>
<<if setup.checkItemTag($npc_date.panties,['sissy'])>>
<<if _plug>>
"@@.npc_technician;Further, I would even go so far to guess it is something... specially made for you. Woah.... <<=$player.first_name>>... are... are you wearing sissy panties? And you're plugged? Wow. I would have never guessed, that you'd be into that. Don't get me wrong, I'm happy for you, more than happy, to be totally honest, but still. The last time we met, you seemed so... so.... hetero.@@"<br>
<<else>>
"@@.npc_technician;I'd even go so far to guess it is something... specially made for you. Woah.... <<=$player.first_name>>... are... are you wearing sissy panties? Wow. I would have never guessed, that you'd be into that. Don't get me wrong, I'm happy for you, more than happy, to be totally honest, but still. The last time we met, you seemed so... so.... hetero.@@"<br>
<</if>>
<br>
You lower your eyes and turn red like a dying sun. Busted. Guilty as charged. How did she find that out? Was it a lucky guess, or did she really conclude that from the way you sit, that you're wearing <<=setup.getItemName($npc_date.panties,true)>><<if _plug>> AND that you have something in your ass<</if>>? And if she can tell... what about other people? You nervously glance around, wondering who else might know you secret.
<<elseif setup.checkItemTag($npc_date.panties,['bold'])>>
<<if _plug>>
"@@.npc_technician;I'd even go so far to guess it is something of a more bold cut, maybe a g-string or a tanga? But what colour.... maybe a hint of red?, you'd look good in red, I think. The way you're moving your behind around to find a comfortable position to rest... it is my conjecture that you have something rather special plugged up in there as well, am I right?@@"<br>
<<else>>
"@@.npc_technician;I'd even go so far to guess it is something of a more bold cut, maybe a g-string or a tanga? But what colour.... maybe a hint of red?, you'd look good in red, I think.@@"<br>
<</if>>
<br>
You lower your eyes and blush. Busted. Guilty as charged. Was that a lucky guess, or did she really conclude that from the way you sit, that you're wearing <<=setup.getItemName($npc_date.panties,true)>><<if _plug>> AND that you have something in your ass<</if>>?
<<elseif setup.checkItemTag($npc_date.panties,['cute'])>>
"@@.npc_technician;I'd even go so far to guess it is something ... pink. Don't look at me like that, it's the way you're sitting. I can totally see the back of your cute
<<if setup.checkItemTag($npc_date.panties,['pink'])>>
pink
<</if>>
panties.
<<if $npc_date.plug>>
And the way you're moving your behind around to find a comfortable position to rest, I'd conjecture that you have something rather special plugged up in there as well, am I right?
<</if>>
@@"<br>
<br>
You lower your eyes and blush. Busted. Guilty as charged. Was that a lucky guess, or did she really conclude that from the way you sit, that you're wearing <<=setup.getItemName($npc_date.panties,true)>><<if _plug>> AND that you have something in your ass<</if>>?
<<else>>
<<if _plug>>
"@@.npc_technician;But you don't seem to be all that much off centre. Maybe something comfortable, like regular cut panties? But the way you're moving your behind around to find a comfortable position to rest, I'd conjecture that you have something rather special plugged up in there as well, am I right?@@"<br>
<<else>>
"@@.npc_technician;But you don't seem to be that much off centre. Maybe something comfortable, like regular cut panties?@@"<br>
<</if>>
<br>
You gulp and blush. Busted. Was that a lucky guess, or did she really conclude that from the way you sit, that you're wearing <<=setup.getItemName($npc_date.panties,true)>><<if _plug>> AND that you have something in your ass<</if>>?
<</if>>
<br><br>
"@@.npc_technician;Aha! I knew it.@@"<br>
<br>
Of course it was a bluff. You really should have seen that one coming from a mile away, but you didn't and her bluff worked out just fine.<br><br>
<</if>>
<<if $npc_date.femBra>>
<<set $npc_date.hits += 1>>
"@@.npc_technician;
<<if $npc_date.femPanties>>
<<if setup.checkItemTag($npc_date.panties,['sissy']) && setup.checkItemTag($npc_date.bra,['sissy'])>>
And from the slight shape forming from underneath your shirt, I'll assume you've got a fitted sissy bra. With lots of frills? Made of Satin? Fuck, these cost a shit-ton online.
<<elseif setup.checkItemTag($npc_date.panties,['bold']) && setup.checkItemTag($npc_date.bra,['bold'])>>
And from the slight shape forming from underneath your shirt, I'll assume you've got an equally bold bra. Maybe lace?
<<elseif setup.checkItemTag($npc_date.panties,['cute']) && setup.checkItemTag($npc_date.bra,['cute'])>>
And from the slight shape forming from underneath your shirt, I'll assume you've got an equally cute bra. Maybe satin, with frills?
<<elseif setup.checkItemTag($npc_date.panties,['modest']) && setup.checkItemTag($npc_date.bra,['modest'])>>
And from the slight shape forming from underneath your shirt, I'll assume you've got an equally boring bra. Well one has to start somewhere.
<<else>>
And from the slight shape forming from underneath your shirt, I'll assume you've got a bra. Not really a fitting one, but you'll work the kinks out sooner or later of matchings ones bra and panties.
<</if>>
<<else>>
From the slight shape forming from underneath your shirt, I'll assume you're wearing a bra under there.
<</if>>
Don't worry, your secret is safe with me.@@", she says while smiling back at you.<br>
<br>
<<printThought $player "Wait, did she just flutter her eyelashes?">><br>
<br>
<</if>>
<<if $npc_date.femStockings>>
<<set $npc_date.hits += 1>>
"@@.npc_technician;
<<if setup.checkItemTag($npc_date.panties,['sissy'])>>
These stockings on your feet might look like ordinary socks for the fraction of a secon... nope. Sissy Stockings, custom made. Oh <<getWordGod $player>>. Where do you get these things?
<<if setup.checkItemTag($npc_date.garterbelt,['sissy'])>>
And of course you have a custom fitted garterbelt as well. I mean, really, what else could it have been?
<</if>>
<<else>>
These stockings on your feet might look like ordinary socks for the fraction of a second,
<<if setup.checkItemTag($npc_date.stockings,['pink'])>>
hmm... wait a second. Are you wearing pink pantyhose? Oh my, <<=$player.first_name>>, I didn't think you'd be the guy to go for such a cutesy style.
<<elseif setup.checkItemTag($npc_date.stockings,['bold'])>>
but I assume it is something more daring. Pantyhose... no wait. Stockings, am I right?
<<if $npc_date.garterbelt != "">>
By the way, you can clearly see the clasps of your garter through your clothes.
<</if>>
<<elseif setup.checkItemTag($npc_date.stockings,['modest'])>>
but I assume they're pantyhose, am I right?
<</if>>
<</if>>
Don't you just love the feeling of hosiery on your skin. No comparison to boring old socks, is it?@@"
<<if $npc_date.hits>1>>
Busted again. She's really good at deductions.
<<if $npc_date.knowTrans>>
Then again, she has an unfair advantage of experience over you,regarding this specific subject.
<<else>>
Maybe she watches too much Sherlock.
<</if>>
<<else>>
Busted. She's really good at deductions.
<<if $npc_date.knowTrans>>
Then again, she has an unfair advantage of experience over you regarding this specific subject matter.
<<else>>
Maybe she watches too much Sherlock.
<</if>>
<</if>>
<br><br>
<</if>>
<<if $npc_date.femShoes>>
<<set $npc_date.hits += 1>>
"@@.npc_technician;
<<if setup.checkItemTag($npc_date.panties,['unisex'])>>
Those shoes might look rather unisex to the untrained eye, but I know that these are designed for female feet alone.
<<else>>
Those shoes fool no one <<=$player.first_name>>, they're intended for female feet alone.
<</if>>
A bold move for someone with your experience level in this whole matter.@@"<br><br>
<</if>>
<<if $npc_date.cage>>
<<if $npc_date.cage && $npc_date.plug>>
"@@.npc_technician;By the way, your squirming around is not only an indicator for something up your ... well, you know. And and maybe you should consider wearing wider pants, I can totally see the outline of your chastity cage down there. Not that I was staring there on purpose or anything.@@"
<<elseif $npc_date.cage>>
"@@.npc_technician;By the way, your squirming around is an indicator that there's something preventing you from sitting conformable. Maybe you should consider wearing wider pants, I could totally see the outline of your chastity cage down there. Not that I was staring there on purpose or anything.@@"
<</if>>
<br><br>
<<if setup.checkItemTag($npc_date.panties,['sissy']) && setup.checkItemTag($npc_date.bra,['sissy']) && setup.checkItemTag($npc_date.stockings,['sissy']) && $npc_date.plug>>
"@@.npc_technician;Oh...@@"<br>
<br>
It seems like her brain froze for a moment, only picking back up after she has finished the reboot.<br>
<br>
"@@.npc_technician;Like O.M.G. You are a Sissy <<=$player.first_name>>!@@" She gushes followed by the cutest squee you've ever heard.<br>
<br>
"@@.npc_technician;That is so cute. Wait... are you <<=ps(setup.getNpcName('npc_admin', 'first'))>>? ... no. He is sadly like the hetero-iest bro that ever het'd. Oh you simply have to tell me everything. Who is your master? Or are you trying the ... hetero ... version with a mistress. Let's see how long you can stay hetero!@@"<br>
<br>
You interrupt <<=setup.getNpcName('npc_technician', 'first')>> and plead for her to dial down the volume a little bit, while testing out your newest face tone: Red sun. A few other guest have turned their heads your way, but soon continue with their matters.<br>
<br>
<<printThought $player "Well, considering she nailed every target so far one could argue she is right ... a little bit... bit it isn't like I had any choice in the matter... or did I?">><br>
<br>
"@@.npc_technician;Hey, I simply want to let you know that's okay, you know? Everyone needs a hobby ... or fetish ... or both ... at once. And yours happens to contain a whole lot of cute pink in the near future. Call me once you reach the full outfit stage, okay? There's GOT to be a photo session!@@"
<<elseif $npc_date.cage && $npc_date.femPanties && $npc_date.femBra && $npc_date.femStockings>>
"@@.npc_technician;Wait a second. Panties, bra, stockings, plugged and caged? Like O.M.G.! <<=$player.first_name>>! You're into sissification? Oh, that's so cute! Yay! So, who's your Master... Mistress? Or are you still in your early phase? You're not planning to purge, are you? I would totally...@@"<br>
<br>
You interrupt <<=setup.getNpcName('npc_technician', 'first')>> and plead for her to dial down the volume a little bit, while testing your newest red face tone: Red sun. A few other guest have turned their heads your way, but soon continue with their matters.<br>
<br>
<<printThought $player "Well, considering she hit every target so far, one could argue she is right ... a little bit... not that I had any choice in the matter... or did I?">><br>
<br>
"@@.npc_technician;Hey, I simply want to let you know, that's okay, you know? Everyone needs a hobby ... or fetish ... or both ... at once. And yours happens to contain a lot of pink in the near future. Call me once you reach the outfit stage, okay? There's GOT to be a photo session!@@"
<<else>>
"@@.npc_technician;Hmm... your face tells me, that this was originally not your idea. So, there is a certain someone, someones? in your life who knows of this as well and is guiding you along... At first you had my curiosity but now you have my attention.@@"<br><br>
<</if>>
<</if>>
She puts her hand on yours, which kinda moves aimless around the table searching for something to hold onto, since you're currently feeling like someone just pulled the rug out from underneath you.<br><br>
<<if !$npc_date.knowTrans>>
"@@.npc_technician;Hey, it's okay. Don't worry, seems like we share a certain hobby. You see <<=$player.first_name>>, I'm into cross-dressing as well.@@"<br>
<br>
<<printThought $player "Wait, what?">><br>
<br>
"@@.npc_technician;To be frank, I am not a woman, well, not biologically. Which brings me to a certain point@@", she says while smiling at your embarrassment.
<<else>>
"@@.npc_technician;Hey, its okay. Don't worry, you already know, we share this certain hobby. I'm simply a few steps ahead of you. Which brings me to a certain point@@", she says while smiling at your embarrassment.
<</if>>
<br><br>
"@@.npc_technician;No, I am not Sherlock Holmes with inhuman skill of deduction. I'd love to be. Well, maybe more Eurus or Irene... Anyway, I use a simple program I wrote for my Smartphone which scans the surrounding area for RFID Tags. Most clothes still have theirs in them, they are simply deactivated after being sold, but contain an ID which can be cross-referenced with an online Database. I am not 100% sure if that's legal, but who cares, y'know?@@"<br>
<br>
She smiles at you... frozen in time. You think she is expecting an answer of you, so you timidly nod.<br>
<br>
"@@.npc_technician;Anyway... about your little secret. You're among friends here. No maid in this maid cafe was born looking like this. Actually, that's the whole point of the Newtype IV. They're all cross-dressers, transitioning or fem boys with acquired tastes. Plus they're maids. Maids! Maids make everything look better, am I right? So you see, no reason to get nervous. You're a kindred spirit in some way or other, with a bunch of people in here.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smiles at you again, but different from before... a really friendly and sincere smile. For a second you want to protest, and claim that you were forced into this outfit. But then you start thinking. You're not at work, and you're still wearing these clothes.
<<if !setup.checkItemTag($npc_date.panties,['modest'])||!setup.checkItemTag($npc_date.bra,['modest'])||!setup.checkItemTag($npc_date.stockings,['modest'])||($npc_date.garterbelt != "")>>
Not only that, you even went so far to buy your own clothes, because you wanted more.
<</if>>
Maybe... no, let's be honest... <<=setup.getNpcName('npc_technician', 'first')>> is right, you are starting to like wearing these things. Without saying a word you simply again nod at her.<br>
<br>
While the two of you still smile at each other a maid appears from the side and introduces herself with a hem. You realise you're still holding <<=ps(setup.getNpcName('npc_technician', 'first'))>> hand. Feeling like an anime rom-com reject you hastily retract your arm.<br>
<br>
[<<moveTo event_technician_cafe_1_3 "Focus on the Maid." 360>>]
<<else>>
<<if $npc_date.firstdate>>
As you return your attention to <<=setup.getNpcName('npc_technician', 'first')>> you realise she has moved a lot closer to you without you noticing, which startles you for a moment.<br>
<br>
<<if $npc_date.knowTrans>>
"@@.npc_technician;You know, you have my gratitude for keeping my "little" secret. It's not like I want to keep this a secret from everyone, but that doesn't mean everyone needs to know, either. I know it's not a big deal in this day and age, but as you might remember, that was not always the case. So thanks again.@@"<br>
<br>
You assure <<=setup.getNpcName('npc_technician', 'first')>> that her secret is safe with you.<br>
<br>
<<else>>
"@@.npc_technician;Look, I find you interesting, so I want a certain something not to stand between the two of us: I'm not actually female.@@"<br>
<br>
<<if(setup.getTotalValue('feminization')<=3)>>
<<printThought $player "Okay... that come out of nowhere...">>
<<else>>
<<printThought $player "Hmm... I already assumed something like that...">>
<</if>>
<br><br>
You assure <<=setup.getNpcName('npc_technician', 'first')>> that you have no problem with something like this at all. After all, we're in the middle of the 3rd age of enlightenment.<br>
<br>
<</if>>
"@@.npc_technician;So, then it might interest you, that no maid in this maid cafe was born female. Actually, that's the whole point of the Newtype IV. They're all cross-dressers, she-males or fem-boys with acquired tastes. Plus they're maids. Maids! Maids make everything look better, am I right?@@"<br>
<br>
While the two of you still talk to each other a maid appears from the side and introduces her with a hem.<br>
[<<moveTo event_technician_cafe_1_3a "Focus on the Maid." 360>>]
<<else>>
You chat for a while until your coffees arrive.<br>
<br>
[<<moveTo 'event_technician_cafe_1_3a' "Continue." 360>>]
<</if>>
<</if>>
</div>/*#
#desc: uneventful coffee date with technician
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<set $npc_date.stress = setup.removeStress($player,10)>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_maid.png">>
<div id="invframe" class="scrolltext">
You order a latte macchiato, as usual, as you still try to figure out if every single maid in here is male... or was at least born as such. There are some where it is more obvious then others, but only if you know where to look, while others... you would have never guessed on a first or even second glance.<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> arrives with a smile <<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>"@@.npc_maid;Your latte macchiato, sir.@@"<<else>>"@@.npc_maid;Your latte macchiato, mademoiselle.@@"<</if>> She turns to <<=setup.getNpcName('npc_technician', 'first')>> and as usual her smile is suddenly absent from her face, while putting the monstrosity called "The Cofferasque" on the table. "@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, madame.@@"<br>
<br>
You spend the rest of the afternoon together with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe. She gave you some tips on data security and why role play, the non sexual type, is like the best pastime ever. You talked a little bit about your old workplace and how everyone is doing. She asks you at least <<=($npc_technician.dates+5)>> times if you want to join her role play group and narrates to you about times of great adventure, when the oceans sank Atlantis. Eventually you both decide to leave and pay your separate bills.<br>
<br>
[<<moveTo "event_technician_cafe_1_4" "Continue." 1300>>]
</div>/*#
#desc: first technician date, coffee arrives, meet maid
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<set $npc_date.stress = setup.removeStress($player,10)>>
/%<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>%/
<<set $npc_maid.profile = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_maid.png">>
<div id="invframe" class="scrolltext">
<<if $npc_date.firstdate>>
<<if $npc_date.reactnamechange>>
The maid smiles at you and places your coffee next to you while saying, "@@.npc_maid;Your latte macchiato, madame@@".<br>
<br>
<<printThought $player "Madame? It is going to take some time to get used to this...">>
<<else>>
The maid smiles at you and places your coffee next to you while saying, "@@.npc_maid;Your latte macchiato, <<if $player.original_first_name=="">>sir<<else>>madame<</if>>.@@"
<</if>>
<br><br>
Then she turns to <<=setup.getNpcName('npc_technician', 'first')>> and the smile on her face suddenly fades away like a long forgotten memory, and her expression turning cold as stone. She inhales through her nose and places a much larger cup on the table.<br>
<br>
"@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, your Majesty, protector of the realm, first of her name, the unchosen, Lady of Adventure, Empress of both dungeons and dragons, the hidden eye, Mistress of dice and minifig, by whose divine grace we mortals game.@@"<br>
<br>
"@@.npc_technician;Nice to see you too <<=setup.getNpcName('npc_maid', 'first')>>.@@"<br>
<br>
After taking an uncomfortably long sip from her tremendous cup of coffee, <<=setup.getNpcName('npc_technician', 'first')>> turns towards you and explains: "@@.npc_technician;This is <<=setup.getNpcName('npc_maid', 'first')>>, even though it does not always seem that way, she's a good old... ahem... good friend of mine, and member of my role play group. If you ever want to order something very complex, she's the right person to talk to.@@"<br>
<br>
The look on <<=ps(setup.getNpcName('npc_maid', 'first'))>> face says enough for your taste. You reassure her that your taste in coffee is very straightforward and in no way complex. Your response is rewarded with a cute maid-smile.<br>
<br>
"@@.npc_maid;You must be <<=$player.first_name>>. <<=setup.getNpcName('npc_technician', 'first')>> told me that you two were meeting here today, so I prepared her monstrosity of a drink in advance.@@"<br>
<br>
"@@.npc_technician;I call it Cofferasque, strong enough to wake any beast it has a Challenge Rating of at least...@@"<br>
<br>
"@@.npc_maid;Shut up <<=setup.getNpcName('npc_technician', 'first')>>!@@"<br>
<br>
"@@.npc_technician;... kay...@@"<br>
<br>
"@@.npc_maid;Anyway, gotta go, other customers are waiting. You two have a nice afternoon.@@"<br>
<br>
<<else>>
<<=setup.getNpcName('npc_maid', 'first')>> and as usual her smile is suddenly absent from her face, while putting the monstrosity called "The Cofferasque" on the table. "@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, madame.@@"<br>
<br>
<</if>>
You spend some time, listening to <<=setup.getNpcName('npc_technician', 'first')>>, about a lot of things. How make up might change your whole appearance, why role play, the non-sexual type, is like the best pastime ever and other things before you decide to steer the conversation into an other direction.<br>
<br>
/%
You spend the rest of the afternoon together with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe. She gives you some tips on how to use garters the right way and why role play, the non-sexual type, is like the best pastime ever. You talk a little bit about your old workplace and how everyone is doing. She offers that if you ever want to pursue your new hobby further she can give you some hints and tips on how to apply makeup, if you're interested in such things. Then she explains to you that even if you don't want others to see that you're wearing makeup, you can go for the "no makeup" makeup look, which is rather easy and makes you look at least a few years younger. Then she asks you at least 5 times if you want to join her role play group and narrates to you about times of great adventure, when the oceans sank Atlantis. Eventually you both decide to leave and pay your separate bills.<br>
<br>
<<if setup.getTotalValue('feminization')>=4>>
<<printThought $player "Hmm... makeup. Taking a look at that might not hurt. I could search for tutorials online.">><br>
<br>
<<else>>
<<printThought $player "Hmm... makeup. What a strange thought...">><br>
<br>
<</if>>
%/
/%[<<moveTo room_mall "Pay 5 Credits and leave." 7000 "<<set $player.money.total-=5>>">>]%/
[<<moveTo "event_technician_cafe_1_4" "Continue." 1300>>]
</div>/*#
#desc: first technician date, drink arrives + meet maid (no female clothing variant)
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<set $npc_date.stress = setup.removeStress($player,10)>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_maid.png">>
<div id="invframe" class="scrolltext">
<<if $npc_date.firstdate>>
The maid smiles at you and places your coffee next to you while saying, "@@.npc_maid;Your latte macchiato, sir.@@" Then she turns to <<=setup.getNpcName('npc_technician', 'first')>> and the smile on her face suddenly fades away like a long forgotten memory, and her face turns stone cold. She inhales and puts a much larger cup on the table.<br>
<br>
"@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, your Majesty, protector of the realm, first of her name, the unchosen, Lady of Adventure, Empress of both dungeons and dragons, the hidden eye, Mistress of dice and minifig, by whose divine grace we mortals game.@@"<br>
<br>
"@@.npc_technician;Nice to see you too <<=setup.getNpcName('npc_maid', 'first')>>.@@"<br>
<br>
After taking an uncomfortable long sip from her tremendous cup of coffee, <<=setup.getNpcName('npc_technician', 'first')>> turns toward you and explains: "@@.npc_technician;This is <<=setup.getNpcName('npc_maid', 'first')>>, even though it does not always seem that way, she's an good old... ahem... good friend of mine, and member of my role play group. If you ever want to order something very complex, she's the right person to talk to.@@"<br>
<br>
The look on <<=ps(setup.getNpcName('npc_maid', 'first'))>> face says enough for your taste. You reassure her that your taste in coffee is way more straight forward and less complex. Your straightforwardness is rewarded with a smile.<br>
<br>
"@@.npc_maid;You must be <<=$player.first_name>>. <<=setup.getNpcName('npc_technician', 'first')>> told me that you two meet here today, so I prepared her monstrosity of drink in advance.@@"<br>
<br>
"@@.npc_technician;I call it Cofferasque, it has a Challenge Rating of at least...@@"<br>
<br>
"@@.npc_maid;Shut up <<=setup.getNpcName('npc_technician', 'first')>>!@@"<br>
<br>
"@@.npc_technician;... kay...@@"<br>
<br>
"@@.npc_maid;Anyway, gotta go, other customers are waiting. You two have a nice afternoon.@@"<br>
<br>
<<set _text = 'Keep chatting with '+setup.getNpcName('npc_technician', 'first')>>
[<<moveTo "event_technician_cafe_1_3b" _text 300>>]
<<else>>
<<=setup.getNpcName('npc_maid', 'first')>> and as usual her smile is suddenly absent from her face, while putting the monstrosity called "The Cofferasque" on the table. "@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, madame.@@"<br>
<br>
You spend the rest of the afternoon together with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe. She gives you some tips on data security and why role play, the non sexual type, is like the best pastime ever. You talk a little bit about your old workplace and how everyone is doing. She asks you at least <<=($npc_technician.dates+5)>> times if you want to join her role play group and narrates to you about times of great adventure, when the oceans sank Atlantis. Eventually you both decide to leave and pay your separate bills.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes && $player.flags.fem_style.name == "">>
"@@.npc_technician;Oh, so, like... one last FYI tip. What with your new look and all you may be thinking of re-imagining other stuff about yourself. Like, well, your name. Just wanted to let you know that it's actually SUPER easy to take care of online.@@"<br>
<br>
You thank her for the tip and get ready to go.<br>
<br>
<</if>>
[<<moveTo "room_mall" "Pay 5 Credits and leave." 7000 "<<set $player.money.total-=5>>">>]
<</if>>
</div>/*#
#desc: end of first date with technician
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You spend the rest of the afternoon together with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe. She gave you some tips on data security and why role play, the non sexual type, is like the best pastime ever. You talk a little bit about your old workplace and how everyone is. She asks you at least 5 times if you want to join her role play group and narrates to you about times of great adventure, like when the oceans sank Atlantis.<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.asked_for_help>>
As she finally starts to wind down she gets a twinkle in her eye as she smiles at you.<br>
<br>
"@@.npc_technician;So, I was thinking; I really appreciate that when you were in a bind you trusted me to help you out. I feel a bit bad that I couldn't bail you out completely so I wanted to give you a present, what's your gamerID online?@@"<br>
<br>
[<<moveTo "event_technician_cafe_give_game" "Tell her your ID.">>]
<<else>>
Finally it is time to leave and pay your separate bills.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes && $player.flags.fem_style.name == "">>
"@@.npc_technician;Oh, so, like... one last FYI tip. What with your new look and all you may be thinking of re-imagining other stuff about yourself. Like, well, your name. Just wanted to let you know that it's actually SUPER easy to take care of online.@@"<br>
<br>
You thank her for the tip and get ready to go.<br><br>
<</if>>
[<<moveTo room_mall "Pay 5 Credits and leave." 7000 "<<set $player.money.total-=5>>">>]
<</if>>
</div>/*#
#desc: free talk part of technician date
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<set _nextTheme = setup.getNextForcedTheme('npc_technician')>>
<<if _nextTheme != "">>
<<set $returnPassageTheme = "event_technician_cafe_1_4">>
<<set $returnPassageList = "event_technician_cafe_1_4_details">>
<<set $currentNpcTheme = "_forced">>
<<initRoom>>
<<moveTo _nextTheme>>
<</if>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if (setup.getNpcThemes('npc_technician')>0) && ($npc_date.themes < 3)>>
You continue to enjoy a relaxing afternoon with <<=setup.getNpcName('npc_technician', 'first')>> in this cozy maid cafe, and ponder what to talk about.<br>
<br>
<<switch $npc_date.themes>>
<<case 0>>
"@@.npc_technician;So, where do you want to lead our discussion? Does it have something to do with Orcs? Oh I hope it has something to do with Orcs....@@"<br>
<br>
<<case 1 >>
"@@.npc_technician;Hmmm... before you continue, I might go for another Cofferasque, how about you? You want to try one? Your face says no, but your coronary vessel also say no. Okay, your loss.@@"<br>
<br>
<<case 2>>
"@@.npc_technician;Good Thing I got my heart reinforced, I am not 100% sure what the recommended dose for caffeine is per day, but I am pretty sure that thing destroys it by at least 1524%.@@"<br>
<br>
<</switch>>
<<printNpcThemeCategory
'npc_technician'
'event_technician_cafe_1_4'
'event_technician_cafe_1_4_details'
>>
[<<moveTo "event_technician_cafe_1_4_leave" "You think you've had enough coffee for today.">>]
<<else>>
You spend the rest of the afternoon together with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe, and enjoy your time together. Eventually you both decide to leave and pay your separate bills.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes && $player.flags.fem_style.name == "">>
"@@.npc_technician;Oh, so, like... one last FYI tip. What with your new look and all you may be thinking of re-imagining other stuff about yourself. Like, well, your name. Just wanted to let you know that it's actually SUPER easy to take care of online.@@"<br>
<br>
You thank her for the tip and get ready to go.<br>
<br>
<</if>>
[<<moveTo room_mall "Pay 5 Credits and leave." 180 "<<set $player.money.total-=5>>">>]
<</if>>
</div>/*#
#desc: technician theme details
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $npc_date.themes >= 3>>
<<initRoom>>
<<moveTo 'event_technician_cafe_1_4_leave'>>
<</if>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;So, what do you want to talk about <<=$player.first_name>>?@@"<br>
<br>
<<printNpcThemeDetails
'npc_technician'
$returnPassage
$currentNpcTheme
>>
</div>/*#
#desc: finish drinking with admin
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You spend some more time together with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe, and enjoy your time together. Eventually you both decide to leave and pay your separate bills.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes && $player.flags.fem_style.name == "">>
"@@.npc_technician;Oh, so, like... one last FYI tip. What with your new look and all you may be thinking of re-imagining other stuff about yourself. Like, well, your name. Just wanted to let you know that it's actually SUPER easy to take care of online.@@"<br>
<br>
You thank her for the tip and get ready to go.<br>
<br>
<</if>>
[<<moveTo "room_mall" "Pay 5 Credits and leave." 180 "<<set $player.money.total-=5>>">>]
</div>/*#
#desc: apologise for looking up technician's skirt at start of game
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<set $npc_date.stress = setup.removeStress($player,10)>>
<<set $npc_date.theme += 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
Blushing in embarrassment you apologise for sneaking a glance up <<=ps(setup.getNpcName('npc_technician', 'first'))>> skirt when you were supposed to be massaging her feet.<br>
<br>
She smiles and shakes her head. "@@.npc_technician;Don't worry about it, as I told you at the time, I am not ashamed about who I am and I trust you to keep a secret. I do appreciate your honesty in making an apology, but really, it's fine, a cutie like you can peek up my skirt anyday!@@"<br>
<br>
Somehow you manage to blush even harder before quickly switching topics.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: technician gives you + tells you about HOTTIES game (first date/you didn't look up her skirt variant)
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<set $player.locations.hotties_game = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You tell her your id as her fingers race over her phonescreen.<br>
<br>
"@@.npc_technician;Cool, and you don't have it yet! I just sent you a copy of one of my favourite online games - it's called Heroes of Time: The Infinite Eternal Struggle, you play it before?@@"<br>
<br>
It sounds somewhat familiar but <<=setup.getNpcName("npc_exgirlfriend", "first")>> wasn't really into video games so you mostly stopped keeping up with new releases. You shake your head.<br>
<br>
"@@.npc_technician;It's sort of a MOBA-type thing, but with a couple of twists. It has a lot more PvE raid-type options and the group content ranges from 2-player co-op on up; I really like the way it's balanced around teamwork and, well, I recall we made a pretty good team together so I thought it'd be fun to join up online!@@"<br>
<br>
<<printThought $player "Team? I sat under your desk like a slave massaging your feet while you worked...">><br>
<br>
She continues gushing about the game for a few minutes, and it honestly sounds pretty cool, you promise to logon sometime to play together.<br>
<br>
[<<moveTo "room_mall" "Pay 5 Credits and leave." 7000 "<<set $player.money.total-=5>>">>]
</div>
/%
TODOfuture
add this to end of first date after you've become female:
<<if !$player.locations.hotties_game>>
"@@.npc_technician;Wow, I am just so, so proud of you! I understand wanting to tell me in person but I wish I'd had some warning to bring a gift in celebration... Wait, I know! You play games online, right? what's your gamerID?@@"<br>
<br>
[<<moveTo event_technician_cafe_give_game "Tell her your ID.">>]
<<else>>
normal ending goes here
<</if>>
%//*#
#desc: technician comments on your playing HOTTIES without her
#status: FINISHED 0.4.0.0
#*/
/* TODOfuture - not sure how/where this should get jammed into things, just floating here for the present */
<<=setup.getNpcName('npc_technician', 'first')>> frowns, "@@.npc_technician;so I saw you online the other day playing and you shot me down! I thought we were a team!@@"<br>
<br>
You hurriedly reassure her that it was nothing personal but fortunately she seems to be teasing you rather than actually upset.<br>
<br>
"@@.npc_technician;It's cool, I mean, I certainly know how addictive HOTTIES! can be, still, I introduced you to the thing! Hit me up next time so we can play together!@@"<br><<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_0'
5
'event_technician_theme_bodymods'
true
'theme_technician_other_header'
>>
/%
<<addNpcTheme 'npc_technician' 'boiless' 'theme_technician_food_0'
5
'event_technician_cafe_lunchdate'
false
'theme_technician_food_header'
>>
%//*#
#desc: talk about playing hotties with technician
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<set $npc_date.stress = setup.removeStress($player,10)>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_technician', 'first')>> reminisce about playing HOTTIES together, recalling victories - and defeats is almost as fun as playing was, and you resolve to get in another game session soon.<br>
<br>
As you finish up she makes a final note; "@@.npc_technician;you know, you really should join my RPG group, you're really fun to play with online and trust me when I say in person gaming is even better!@@"<br>
<br>
You blush slightly at the offer and say you'll think about it, her intense enthusiasm for RPGs is still a bit intimidating.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: technician comments on your makeup and gives tips
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $npc_date.themes += 1>>
<<if setup.getTotalValue("makeup") == 0>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addPopUpText 'New Link "Make up Tutorial" added'>>
<</if>>
<<set $scene.makeup = setup.getCurrentMakeup($player)>>
<<if $scene.makeup == "normalmakeup">>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_5'
5
'event_technician_makeup_2'
false
'theme_technician_crossdress_header'
>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Oh, makeup! What fun, let me have a look at you...@@", <<=setup.getNpcName('npc_technician', 'first')>> enthusiastic states while sliding closer to you.
<<if $scene.makeup == "">>
Her enthusiasm takes a heavy blow however, as she realises, that you're not wearing any makeup whatsoever.<br>
<br>
"@@.npc_technician;Hmm, either you have the lightest touch EVER or... you're not actually wearing makeup. Given what I know about sissy exuberance I'm going to guess it's option b. Too bad, you should really watch some videos and give it a shot, you'd be amazed at the transformation a bit of face-paint can enact.@@"
<<else>>
<<switch $scene.makeup>>
<<case "nomakeup">>
"@@.npc_technician;Hmm, going for the subtle "not actually wearing makeup" look... I like it though... I think you'd look even better if you went for it a bit more, really took advantage of the transformative power of makeup to give yourself the feminine face you deserve.@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;I also like that you've taken care to keep things up, nothing ruins the "no makeup" look like letting it run or smudge.@@"
<<case 2>>
"@@.npc_technician;Just one girl to another... you should probably do a bit of upkeep soon, the no makeup look is kind of ruined once it starts to smudge or run.@@"
<<case 3 4>>
"@@.npc_technician;Oh, and just fyi - the whole "no-makeup" effect is kind of ruined when you let your makeup get... well... ruined.@@"
<</switch>>
<<case "normalmakeup">>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;Looks like you checked out some of those online tutorials, huh? Isn't it amazing what a bit of makeup can do? Your face looks so much more soft and feminine now, it's practically magic!@@"
<<case 2>>
"@@.npc_technician;Testing out some of those online makeup tutorials? You go, girl! Though, you might want to do a bit of maintenance, the blush is coming off the rose a bit, as they say.@@"
<<case 3>>
"@@.npc_technician;Hmm, it LOOKS like you've been practicing your makeup but, well, if it looked good before it's definitely ruined now.@@"
<<case 4>>
"@@.npc_technician;I know I suggested you try on makeup but... you know you have to maintain it and reapply it? I hate to say it but right now you just look like a mess.@@"
<</switch>>
<br><br>
"@@.npc_technician;So, if you'd like, I could give you a few tips on how to take your makeup skills to the next level. Just lemme know!@@"
<<case "expertmakeup">>
<<=setup.getNpcName('npc_technician', 'first')>> spends a few moments just smiling at you until you find yourself looking away and blushing.<br>
<br>
"@@.npc_technician;I. LOVE. What you've. Done!@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;Perfect, feminine, beautiful... this is the lovely face you deserve!@@"
<<case 2>>
"@@.npc_technician;The only issue is, well... things are wearing down a bit, nothing a few minutes in the mirror couldn't address but you should really take the time sooner rather than later.@@"
<<case 3 4>>
"@@.npc_technician;Or, rather, that would be what I'd say if your makeup wasn't all but ruined. Come on, girlfriend! I can tell you put in some work painting yourself up but you gotta remember to do the maintenance too!@@"
<</switch>>
<<case "ultimatebimbo">>
<<=setup.getNpcName('npc_technician', 'first')>> looks at you wide-eyed.<br>
<br>
"@@.npc_technician;Wow... not to put too fine a point on it but, well... you kind of look like a slut. I mean, it's hawt with a capital H, but... waaaaaay slutty.@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;The artistry is perfect though, just expertly applied, so grats there!@@"
<<case 2>>
"@@.npc_technician;You're looking a bit rough around the edges though with a look like that... maybe that was intentional?@@"
<<case 3 4>>
"@@.npc_technician;The fact that you look like you just finished getting face-fucked for like... an hour... well it's a bold choice but it's almost working... for a certain definition of work.@@"
<</switch>>
<<case "sissy_doll">>
<<=setup.getNpcName('npc_technician', 'first')>> looks at you wide-eyed.<br>
<br>
"@@.npc_technician;Wow... you look so cute, like a sweet, sissy doll...@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;The artistry is perfect though, just expertly applied, so grats there!@@"
<<case 2>>
"@@.npc_technician;You're looking a bit rough around the edges so maybe a slightly messy, naughty doll?@@"
<<case 3 4>>
"@@.npc_technician;Well, you would, if the effect was not somewhat ruined by the state of disrepair your makeup is currently in.@@"
<</switch>>
<<case "moviestar">>
<<=setup.getNpcName('npc_technician', 'first')>> just stares at you in awe.<br>
<br>
"@@.npc_technician;Wow, did you do that yourself? I guess the shoe's on the other foot now 'cause I should be asking YOU for tips!@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;Seriously, though, you look like royalty, just utter perfection and beauty, I'd say I was jealous but, well... I'm the one who gets to look at you!@@"
<<case 2>>
"@@.npc_technician;No offense though, but... you should do a bit of touch-up soon or all your hard work is going to be for nothing, and that would be a real shame, like having a mint condition foil Alesha and forgetting to double sleeve!@@"
<<case 3 4>>
"@@.npc_technician;It's a shame that you let things fall apart. I mean, I can still tell that there was real artistry at the start but now... it's like looking at roman ruins and imagining what it looked like back when Caesar was still around.@@"
<</switch>>
<<default>>
"@@.npc_technician;Hmm, an interesting choice of makeup, I don't really know what to say about it.@@"
<</switch>>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: technician comments on your makeup and gives tips
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<unlockMakeup $player "expertmakeup">>
<<setThreshold "makeup" "online_makeup" "technician_tips" true>>
<<set $npc_date.themes += 1>>
<<set $player.makeup.template = "expertmakeup">>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> grins and drags you straight to the back of the cafe where there's a couple of private bathrooms. Leading you into the first one you find yourself facing a "fully armed and operational" battle station.<br>
<br>
"@@.npc_technician;The girls have to be looking perfect to go on-shift and well, I'm sure <<=setup.getNpcName('npc_maid', 'first')>> would be fine with us taking advantage of the facilities to get you done up proper.@@"<br>
<br>
Plopping you down in the chair <<=setup.getNpcName('npc_technician', 'first')>> strips off your makeup and then step by step guides you through how to apply it even better, tweaking the routine you had figured out from videos to better suit your particular complexion and facial features.<br>
<br>
It's nothing that much different from what you've done before and yet... the difference is stunning. Darker and bolder than what you were doing previously, you never would have thought such minor tweaks of colour and lines could make such a big difference. Whereas before you looked good, now you look amazing, practically radiating feminine beauty with a sexy goth edge.<br>
<br>
"@@.npc_technician;Now THAT is what I'm talking about!, You just remember what I showed you and keep practicing!@@"<br>
<br>
You thank her for the help and head back to your table.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about role playing
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $npc_date.themes += 1>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene>>
<<set $scene.canjoin = $npc_technician.flags.sawyouinfemaleclothes && (($player.flags.fem_style.name != "") && ($player.flags.fem_style.female != "")) >>
<<set $scene.failed = $currentTasks.hasOwnProperty('technician_roleplay_1') && $currentTasks.technician_roleplay_1.finished>>
<<if $scene.failed>>
<<restartTask 'technician_roleplay_1'>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $scene.failed>>
<<=setup.getNpcName('npc_technician', 'first')>> rolls her eyes. "@@.npc_technician;We've been playing, but you haven't been showing up! Sorry I haven't called about it I sometimes don't want to bother people, y'know...@@"<br>
<br>
Her disappointed expression is worse than getting punched in the gut and you feel horrible for skipping out on her.<br>
<br>
"@@.npc_technician;Anyway, we're playing again <<if $now.getUTCDay() == 6>>tonight<<else>>next week<</if>> as always, you should come back! Everyone would love to see you again and we can pick things up right where we left off.@@"<br>
<br>
<<printNpcThemeReturn 600>>
<<elseif $npc_technician.flags.rpg_campaign.session > 0>>
<<=setup.getNpcName('npc_technician', 'first')>> smiles "@@.npc_technician;I think someone needs more coffee!, You've joined us, and I hope you'll be joining us again <<if $now.getUTCDay() == 6>>tonight<<else>>next week<</if>>. We're playing Traps and Treasures and it. will. be. EPIC!@@"<br>
<br>
As always her enthusiasm is infectious and you promise to be at her place on time and ready to game.<br>
<br>
<<printNpcThemeReturn 600>>
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> lights up at you showing interest in her hobby.<br>
<br>
"@@.npc_technician;We really like the versatility of the Traps and Treasures system. Of course we don't use the latest edition but a kind of house rule modded "goodstuff" conglomeration of the best parts of multiple versions, and I'm pretty open to people rolling in with splatbooks or even homebrew stuff so long as it looks fun and balanced. We bounce around genres a bit but we've been on a classic swords and sorcery fantasy kick of late.@@"<br>
<br>
She looks at you for a moment, obviously thinking about something.<br>
<br>
<<if $scene.canjoin>>
"@@.npc_technician;You know, actually... I think you'd fit in with the group. Why don't you come join us for a game? We JUST started the new campaign so you wouldn't be behind really, we'll even roll up some characters for ya so all you have to do is show up and play!@@"<br>
<br>
"@@.npc_technician;Oh, I guess I should warn you - the games can get a bit... risque. Nothing in real life, you understand well... not since...@@" She seems lost in thought for a moment shaking her head and continuing without elaboration "@@.npc_technician;Anyway, sorry, we're there to play not, like, have an orgy or something, but IN-character, well... things can get a bit steamy.@@"<br>
<br>
"@@.npc_technician;Anyway, I host the games at my place and we meet once a week at 1900 and things go until we hit a good breaking point or we get too tired.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_1_accept' "Say that sounds fun, you'd love to join." 120>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_1_decline' "Say this isn't a good time right now with how busy you are." 120>>]
<<else>>
"@@.npc_technician;Anyway, yea, it's a pretty chill party and we have a lot of fun. I totally recommend finding a party to play with.@@"<br>
<br>
<<printThought $player "Hmm, I feel like she sort of wanted to invite me... maybe she needs to check with the rest of the group first for approval? Or I just need to build up her trust some more...">><br>
<br>
<<printNpcThemeReturn 600>>
<</if>>
<</if>>
</div>/*#
#desc: ask about joining technician's rpg campaign
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $npc_date.themes += 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
She lights up when you ask if the offer is still good to join her rpg campaign.<br>
<br>
"@@.npc_technician;Of course you can join! Same warning as before that in-game things are liable to get a bit... spicy, but everyone's understanding and it's just a game so if anything bothers you we can tone it down just... y'know, it's fun really cut loose and have a bit of fantasy fun with friends.@@"<br>
<br>
"@@.npc_technician;So I host the games at my place, we meet once a week at 1900 and things go until we hit a good breaking point or we get tired.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_1_accept' "Say that sounds fun, you're in." 60>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_1_decline' "Say that, unfortunately that isn't a good time for you." 60>>]
</div>/*#
#desc: accept offer to join technician's rpg campaign
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<if setup.checkThemeExist('npc_technician','roleplay','theme_technician_rpg_6')>>
<<changeNpcThemeRepeatable 'npc_technician' 'roleplay' 'theme_technician_rpg_6' false>>
<</if>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if $player.locations.home_technician == false>>
<<set $player.locations.home_technician = true>>
<</if>>
<<include addRPGSessionTask>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
She's smiling wide enough you're afraid her head might split in two... that, or that she's about to swallow you whole.<br>
<br>
"@@.npc_technician;Awesome! So, yeah first game will be <<=$npc_date.day>>, snacks, friendship and unique characters to choose between will be provided. You don't need to bring anything save your cute self!@@"<br>
<br>
Leaning back she shouts across the cafe. "@@.npc_technician;<<if $player.flags.fem_style.name == "">>He's<<else>>She's<</if>> joining the campaign!@@"<br>
<br>
With a bit of a lopsided smile <<=setup.getNpcName('npc_maid', 'first')>> flashes a joking double thumbs up before turning back to her customer.<br>
<br>
"@@.npc_technician;Sorry about that, just a little, y'know, excited.@@"<br>
<br>
You smile back and respond that you're looking forward to things too.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: decline offer to join technician's rpg campaign
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<if !setup.checkThemeExist('npc_technician','roleplay','theme_technician_rpg_6')>>
<<addNpcTheme 'npc_technician' 'roleplay' 'theme_technician_rpg_6'
6
'event_rpg_campaign_session_1_0_asktojoin'
true
'theme_technician_rpg_header'
>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Damn, that's a bummer. Well, if your schedule ever changes let me know. I've told the gang a bit about you and we'd all love to have you join the party!@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about sending her a sext
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $npc_date.themes += 1>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.relationship_stage >=1>>
You bring up how you sent her a pre-sleep selfie and her eyes immediately light up.<br>
<br>
"@@.npc_technician;OMG that was just so hawt! Feel free to send me stuff like that all the time... or maybe just stay over so I can witness in person? Yum.@@"<br>
<br>
You blush at her comment... which only makes her smile wider.
<<else>>
You bring up how you sent her a pre-sleep selfie.<br>
<br>
"@@.npc_technician;So... yea. On the one hand, I SHOULD be upset since y'know, unsolicited, you didn't get my consent to send me the thing.... but on the OTHER hand ZOMG you are so gorram cute! So... on balance...@@" She smirks before continuing "@@.npc_technician;well, on balance I think I am going to have to request more data points. I mean, it really wouldn't be fair for me to judge your actions from a single event, right? So...@@" She waggles her eyebrows at you as her voice trails off.
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk body modification and learn about the alley near her house
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $npc_date.themes += 1>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop.unlock_source = "technician">>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_technician', 'first')>> about some of the... changes that have been going on in your life and she nods in understanding.<br>
<br>
"@@.npc_technician;Sure, I mean... I joke a bunch but like, I know this kind of thing can be a challenge and I'm here for you, whatever you need, whatever you are.@@" She reaches across the table to hold your hand, "@@.npc_technician;and remember, you don't have to know the answer to that question now, and you can change your mind, whatever path you take is valid, ok?@@"<br>
<br>
You're a bit overcome with emotion at the show of earnest support but she seems to understand you well enough without words.<br>
<br>
"@@.npc_technician;I wish I could offer more than just words, like figuring this stuff out is hard enough before you add in expenses of a new wardrobe or more physical changes@@" at this she slightly thrusts her small, but perky, breasts forward, "@@.npc_technician;I had to put in work for these things! Oh, speaking of that sort of thing - there's an alleyway near my building, in the student quarter and well... I dunno exactly what's down there, bit nervous to check, honestly, but sometimes I see people go down and when they come back out well... they look different - and not just "new haircut" different, like DIFFERENT different. Dunno, maybe check it out if that sounds interesting to you.@@"<br>
<br>
Finally finding your voice you thank her for the tip, and the support before moving forward with your chat.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about giving her a handjob during prologue
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $npc_date.themes += 1>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You bring up the time you gave <<=setup.getNpcName('npc_technician', 'first')>> a handjob under her desk.<br>
<br>
<<if $npc_technician.stage < 2>>
She grins devilishly at you.
<<switch $npc_technician.flags.dataservice_encounter.handjob_finish>>
<<case 'mouth'>>
"@@.npc_technician;Heh, yea, that was pretty crazy... still can't believe you did it but oh-so-thankful you did! Especially how you finished! Yum... well, i guess that's more your line, heh.@@""
<<case 'hand'>>
"@@.npc_technician;Heh, yea, that was pretty crazy... still can't believe you did it but oh-so-thankful you did! Mmm, those fingers of yours are truely magical.@@"
<<case 'fail'>>
"@@.npc_technician;Heh, yea, that was pretty crazy... still can't believe you did it but oh-so-thankful you did! Even if you did need a bit of help to close the deal.@@"
<</switch>>
<br><br>
You blush at the compliment, and the memory, ignoring the fact that she's running one foot up your leg as you move on to something else.
<<else>>
<<if $npc_technician.relationship.relationship_stage >= 1>>
"@@.npc_technician;Mmm, yea, I guess you could call that our first date! Putting out like that the first time! You were so easy... and I loved you for it! I knew then you were a keeper but I should have sussed that you were a sex-pot minx as well!@@"<br>
<br>
You blush as she smoulders at you from across the table.
<<else>>
She smiles at the memory. "@@.npc_technician;Mmmm, yea, that was, like, so hot, I still can't believe you did something like that, I mean, we barely knew each other back then!@@"<br>
<br>
You blush and shrug before continuing on.
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about giving her a blowjob during prologue
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $npc_date.themes += 1>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You bring up the time you gave <<=setup.getNpcName('npc_technician', 'first')>> a blowjob under her desk.<br>
<br>
<<if $npc_technician.stage == 1>>
"@@.npc_technician;Yea that was... wow, like one of the hottest, most intense orgasm's I've ever had, not to mention the like... half-dozen times I've gotten myself off at the memory of it since!@@"<br>
<br>
You blush and nervously look away, hoping nobody overheard you.<br>
<br>
"@@.npc_technician;Oh, shit, sorry... I guess maybe that's a bit TMI? Well, let me just say, again, thank you, like... so much!@@"
<<else>>
<<if $npc_technician.relationship.relationship_stage >= 1>>
"@@.npc_technician;Mmmm, yea, that was something, easily one of the best orgasms I'd had to that point in my life. And then afterwards! Like sure, at the time I wanted to die waiting for that guy to walk away and leave me alone but now, looking back... Fuck, but the memory of him standing nearby, totally unaware that you were between my legs still sucking every last drop of tasty cum out of me...@@"<br>
<br>
You blush, which only makes her smile wider.<br>
<br>
"@@.npc_technician;What about you, knowing what I do now about you... I bet you were even more turned on you dirty girl!@@" Pausing she glances around before her gaze settles on the floor-length tablecloth. "@@.npc_technician;Hmm... don't suppose you've considered doing an encore?@@"<br>
<br>
<<if $npc_technician.relationship.her_role == 'sub'>>
[<<moveTo "event_technician_theme_blowjob_encore_1" "Smile and lean back while agreeing that sounds like a great idea... for her." 60 "<<set $scene.action='dom'>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_1" "Grin and slid down under the table." 60 "<<set $scene.action='dom_suck'>>">>]<br>
<<elseif $npc_technician.relationship.her_role == 'dom'>>
[<<moveTo "event_technician_theme_blowjob_encore_1" "Submissively slide under the table." 60 "<<set $scene.action='suck'>>">>]<br>
<</if>>
[<<moveTo "event_technician_theme_blowjob_encore_1" "Blush and say maybe you could sneak downstairs on a break sometime..." 60 "<<set $scene.action='decline'>>">>]
<<else>>
She smiles at the memory. "@@.npc_technician;talk about an introduction! I mean, sure, we'd met before casually but that... Well, to say I knew then that we'd be friends is putting it mildly!@@"<br>
<br>
You blush and change the topic.
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: oral sex under the table at maid cafe
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<switch $scene.action>>
<<case 'dom'>>
<<set $player.timebased.horny += 20>>
<<case 'dom_suck'>>
<<set $player.timebased.horny += 10>>
<<applyExperience 'oral' $npc_technician.penis_size 'terrible' $SEEN_FRIEND>>
<<case 'suck'>>
<<set $player.timebased.horny += setup.getTotalValue("bimbofication") + setup.getTotalValue("submission")>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'dom'>>
She shivers as she realises what you're telling her to do you.<br>
<br>
"@@.npc_technician;Really, here? Fuck you're so depraved...@@" After a brief pause she meekly concludes with a soft "@@.npc_technician;yes, Mistress@@" before disappearing under the table.<br>
<br>
You feel her gently part your clothes before
<<if $setup.getItemFromType("cage") != "">>
finally addressing your caged <<getWordMyPenis $player>>. Initially unconcerned by her lack of access she takes you in both hands, showering your cage and balls with gentle kisses as she worships you.<br>
<br>
<<printThought $player "Fuck that feels so good...">><br>
<br>
Your arousal sky-rockets, even though this sort of constrained stimulation will never be enough to actually get you off. From the desperate sound of things between your legs <<=setup.getNpcName('npc_technician', 'first')>> would quite like to savor your fully as well...
<<if !$inventory[setup.getItemFromType("cage")].status.lock>>
Of course the cage is just for show, not even locked, technically, so you could just remove it...<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Remove your cage and finish." 60 "<<set $scene.unlock=true>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Remain caged and leave the both of your wanting." 60 "<<set $scene.unlock=false>>">>]
<<elseif setup.checkItemInInventory(setup.getItemObjFromType("cage").lockable[1])>>
Of course, you do have the key on you, if you felt like unlocking yourself for a bit of fun...<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Remove your cage and finish." 60 "<<set $scene.unlock=true>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Remain caged and leave the both of your wanting." 60 "<<set $scene.unlock=false>>">>]
<<else>>
Unfortunately your locked and controlled state makes that quite impossible. Still, you spend several minutes enjoying the attention before signaling for her to come back up.<br>
<br>
Crawling up she glances around nervously before taking her seat, licking her lips a final time before taking a sip of coffee.<br>
<br>
"@@.npc_technician;Wow, that was, like... really hot. Thank you Mistress, I'm sorry I couldn't get you off but did you enjoy it, at least?@@" You nod and she beams with pride. "@@.npc_technician;Yay! You can sheath your broadsword in me anytime!@@"<br>
<br>
<<printNpcThemeReturn 600>>
<</if>>
<<else>>
eagerly revealing your <<getWordMyPenis $player>>. Moaning softly, but enthusiastically she sucks away, one hand wrapped around the base of your shaft while she bobs up and down.<br>
<br>
Enjoying the blowjob you glance around the cafe at all the lovely maids before getting an evil idea upon spotting <<=setup.getNpcName('npc_maid', 'first')>>.<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_2" 'Wave <<=setup.getNpcName("npc_maid", "first")>> over.' 60 "<<set $scene.maid=true>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_2" 'Just enjoy the blowjob.' 60 "<<set $scene.maid=false>>">>]
<</if>>
<<case 'dom_suck'>>
<<if $npc_technician.relationship.her_caged>>
Crawling under the table you part her skirt and panties to reveal the caged prize within.<br>
<br>
Taking it in hand you fondle and lick until she is straining desperately against every square centimeter of her prison.<br>
<br>
"@@.npc_technician;P-please, Mistress.@@" She whispers.<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" 'Remove her cage.' 60 "<<set $scene.lock=false>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" 'Leave her caged and wanting.' 60 "<<set $scene.lock=true>>">>]
<<else>>
You haven't even finished sliding under the table and between her legs before she has spread them wide and pulled aside her panties to reveal a VERY hard girl-dick.<br>
<br>
Gently slapping her hands out of the way you take charge of things, stroking and sucking away at her delicious panty-stretcher as you tease her ever-closer to orgasm.<br>
<br>
"@@.npc_technician;P-please, Mistress.@@" She whispers as you edge her yet again, her fingers just visible from below as she clings desperately to the edge of the table.<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_suck_2" 'Finish her off.' 60 "<<set $scene.her_cum=true>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_suck_2" 'Leave her wanting.' 60 "<<set $scene.her_cum=false>>">>]
<</if>>
<<case 'suck'>>
Like the obedient sub you are you slide to your knees and crawl under the table to between <<=ps(setup.getNpcName('npc_technician', 'first'))>> slowly spread legs.<br>
<br>
"@@.npc_technician;Good girl@@" she whispers as she lifts up her skirt to reveal her bulging panties. Gently freeing her aroused member you take it with both hands and lean forward. She is as delicious as you remember
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
and you unfurl every trick you have for a world-class blowjob.
<<else>>
and you set to work giving her the best blowjob you can.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
and you start to suck, trying to listen to her quiet gasps for clues to further refine your technique.
<<else>>
and you do the best to suck and stroke, hoping enthusiasm makes up for your lack of skill.
<</if>>
<</if>>
<br><br>
You can tell she's holding back but you remain focused on your goal, the world narrowing around you until you hear a bit of a commotion behind you only to realise that someone is sitting down.<br>
<br>
"@@.npc_maid;So, where'd hot other half get off to? Finally scare her away?@@"<br>
<br>
Her voice somewhat strained thanks to your distracting attentions <<=ps(setup.getNpcName('npc_technician', 'first'))>> is slow and measured. "@@.npc_technician;No... she's around just... needed to duck out to attend to something.@@"<br>
<br>
"@@.npc_maid;Something, I see...@@" <<=setup.getNpcName('npc_maid', 'first')>> notes, one of her feet brushing against your thigh. "@@.npc_maid;Well do send my regards when you see her, and remind her that she doesn't have to settle for a hot dog when there are nice thick mortadella...@@"<br>
<br>
"@@.npc_technician;I will relay the message though... you should keep in mind that mortadella is typically served... sliced.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> just chuckles before rising to go, the sound of her heels soon fading in with the background sounds of the cafe as <<=setup.getNpcName('npc_technician', 'first')>> relaxes and surrenders to the orgasm you have been trying to hard to give her.<br>
<br>
Reaching down to place one hand gently on your head as she cums <<=setup.getNpcName('npc_technician', 'first')>> holds you in place until you have drained her of every drop before giving you a gentle head-pat and signaling for you to return to your seat.<br>
<br>
"@@.npc_technician;So <<=setup.getNpcName('npc_maid', 'first')>> wanted me to tell you...@@" She starts before you roll your eyes and point out that "you heard" and that, really, her special sausage is just the best...<br>
<br>
The two of you laugh and then continue on with your conversation.<br>
<br>
<<printNpcThemeReturn 600>>
<<case 'decline'>>
"@@.npc_technician;Mmmm, that sounds fun. I'd love to have another morning, or afternoon, I'm not picky! Working with you between my legs...@@"<br>
<br>
<<printNpcThemeReturn 600>>
<<default>>
ERROR: unexpected scene.action: <<=$scene.action>>
<</switch>>
</div>/*#
#desc: unlock cage for oral sex under the table at maid cafe
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<switch $scene.action>>
<<case 'dom'>>
<<if $scene.unlocked>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $player.timebased.horny = 0>>
<<else>>
<<set $player.timebased.horny += 10>>
<<set _cage = setup.getItemFromType("cage")>>
<<if !$inventory[_cage].status.lock>>
<<manipulateItem $player $now _cage "lock" true>>
<</if>>
<</if>>
<<case 'dom_suck'>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if $scene.unlocked>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'dom'>>
<<if $scene.unlocked>>
Reaching down you remove your cage, prompting a squeal of glee from <<=setup.getNpcName('npc_technician', 'first')>> who stuffs you eagerly into her mouth as you swell to full size.<br>
<br>
"@@.npc_technician;Mmmm,@@" comes the sound from beneath the table as she swiftly finishes you off, having you white-knuckled the edge of your chair as you ride out the orgasm while attempting to conceal your little "fun" from surrounding patrons. Her lips wrapped around your tip you feel her milk every last drop out of you before accepting your cage and gently locking you back up before tucking everything underneath your clothing.<br>
<br>
Crawling back out from under the table she opens her mouth to show the pool of cum still resting on her tongue before leaning over her over-complicated coffee and letting it dribble down into it. Taking a long sip of the "enhanced" brew she smiles. "@@.npc_technician;Mmmm, Mistress cream is the best...@@"<br>
<br>
You smile as she takes another sip before continuing on with your conversation.
<<else>>
<<if !$inventory[setup.getItemFromType("cage")].status.lock>>
You feel her start to remove your cage and reach down to lightly slap her hand away. "@@.npc_technician;Aww@@" you hear her softly reply before there is a brief pause followed by an ominous click and a mock-innocent "@@.npc_technician;oops.@@"<br>
<br>
Crawling back out from under the table she adopts a smile so "innocent" it loops back
<<if setup.checkItemInInventory(setup.getItemObjFromType("cage").lockable[1])>>
around, leaving no doubt in your mind that she is quite aware that her little act has turned your symbolic imprisonment into a quite real one, being that you do not presently possess the key.
<<else>>
around. Of course the movement is little more than symbolic given that you have the key in your posession but still...
<</if>>
<br><br>
You assure her that you will be remembering this for a punishment sometime in the future but she just grins.<br>
<br>
"@@.npc_technician;You promise? I mean, yes, Mistress, your slave is sorry, Mistress.@@"<br>
<br>
You can't help but smile at your cute, if occasionally bratty, sub as she sips her coffee and your discussion continues.
<<else>>
Your cage remains securely in place leaving her to spend a bit more time worshipping your caged <<getWordMyPenis $player>> before she finally crawls back up to sit across from you.<br>
<br>
"@@.npc_technician;No that it is really a slave's place but... I'm so horny to suck you off right now, being so close to your lovely thing but not able to savor it fully is so frustrating!@@"<br>
<br>
You smile and point out that locking things up can make their occasional freedom all the sweeter.<br>
<br>
"@@.npc_technician;I guess but, like I'm hungry for you now!@@"<br>
<br>
You laugh at her over-acted pout before continuing on with the conversation.
<</if>>
<</if>>
<<case 'dom_suck'>>
<<if $scene.unlocked>>
The moment the lock of her cage clicks open <<=setup.getNpcName('npc_technician', 'first')>> lets out a sigh of relief, rapidly swelling to full size in your hands.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Not wasting an instant you give her the blowjob of a lifetime, delighting as her legs thrash and twist below you as you suck and lick and slurp.
<<else>>
Your skills combined with her pent-up desperation soon has her gasping and quietly begging your permission.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
As aroused as she is your modest skills are more than enough to push her towards the edge.
<<else>>
She is aroused enough that your miniscule skill is still more than enough to rocket her towards climax.
<</if>>
<</if>>
Sensing her orgasm approaching you consider what to do with her cum...<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_cum" 'Drink it all yourself.' 60 "<<set $scene.her_cum='drink'>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_cum" 'Share the cum with her.' 60 "<<set $scene.her_cum='share'>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_cum" 'Feed her cum back to her.' 60 "<<set $scene.her_cum='give'>>">>]
<<else>>
Savoring the delicate smell of her engorged but imprisoned lady lance you lick up the tiny bead of pre-cum that has escaped as you continue to fondle and tease.<br>
<br>
You spend several minutes continuing to play with your oh-so-desperately horny slave before returning to your seat, <<=ps(setup.getNpcName('npc_technician', 'first'))>> looking flushed and unfocused as she takes a sip of coffee and tries to find a comfortable position to sit in.<br>
<br>
"@@.npc_technician;You're evil, you know that?@@" You merely grin, her look of frustration soon melting into one of submissive adoration.
<</if>>
<<default>>
ERROR: unexpected scene.action: <<=$scene.action>>
<</switch>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: unlock cage for oral sex under the table at maid cafe
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<switch $scene.her_cum>>
<<case 'drink'>>
<<applyExperience 'cum' 12 'very' $SEEN_FRIEND>>
<<case 'share'>>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<case 'give'>>
<</switch>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.her_cum>>
<<case 'drink'>>
Sucking deep as she climaxes you savor every drop of her <<if setup.getTotalValue("cum") < 5>>surprisingly <</if>>tasty cum, licking and sucking her clean of every drop before carefully tucking her back into her cage and returning to your seat with a smile.<br>
<br>
"@@.npc_technician;My taste was to your liking?@@" She asks and you nod, privately surprised that she manages to taste so good despite her massive coffee intake.
<<case 'share'>>
Pulling back so that she is just inside of your mouth you let her spurt across your tongue, waiting until every delicious drop has been collected before locking her chastity cage back in place and returning to your feet. Standing over her you look down at her adoring face before taking hold of her head and pulling her in for a passionate kiss wherein you allow a portion of her spilt seed to flow back into her mouth.<br>
<br>
Swooning she melts in your grasp, eyes rolling back in submissive pleasure as she accepts your gift, the two of your gulping in unison, tongues searching out any stray drop before finally, and breathlessly, separating.<br>
<br>
"@@.npc_technician;Thank you, Mistress... for everything.@@" She states softly. You smile and return to your seat.
<<case 'give'>>
Sensing her imminent climax you lean back, wrapping one hand over the head of her girlcock as you give the final few pumps to push her over the edge. Catching everything in your palm you carefully rise to your feet and offer it to her. She doesn't even glance around at the somewhat crowded cafe, her eyes remaining only for you as she leans in and licks your hand clean.<br>
<br>
"@@.npc_technician;Thank you, Mistress@@" she states softly. You smile and tell her to put her cage back in place as you return to your seat. Though she winces slightly as she stuffs her wilted, but still-sensitive member into its prison she obeys the command without hesitation.
<</switch>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: you finish dominantly sucking her off
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<if $scene.her_cum>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $scene.her_cum>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
With unsurpassed skill
<<else>>
With expert skill
<</if>>
you keep her dancing on the edge of orgasm, alternating between savoring her tender tip with your tongue and swallowing her full length with ease. Shuddering in her seat you wait until she is panting and begging you for permission to cum before pushing her over the edge, smiling as you gulp as she somehow manages to suppress the rolling orgasm.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
With somewhat more skill than the first time
<<else>>
With a similar substitution of enthusiasm for skill as the first time
<</if>>
you lick and suck at her delicious rod, turning stroking and sucking until, with a sharp gasp, she cums, spurting delicate, thin juices down your throat.
<</if>>
<br><br>
Wordlessly returning to your seat you look down at her, her face pressed against the table, her breaths slow and deep as she gradually recovers. You reach down and pat her head prompting a purr of contentment. "@@.npc_technician;Th-thank you, Mistress@@" she whispers, looking up at you with adoration for a long moment before finally returning to an upright position and refreshing herself with a sip of her potent coffee.
<<else>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
With unsurpassed skill
<<else>>
With expert skill
<</if>>
you keep her dancing on the edge of orgasm, bringing her within a hairs breadth of climax before leaning back as she trembles and gasps. Carefully waiting for her to recover slightly you resume sucking her deep, going back and forth until she is a trembling mess before placing the gentlest kiss on her tip and returning to your seat.<br>
<br>
"@@.npc_technician;You're so, so cruel...@@" She whines desperately, her voice tinged with desperation, lust, and deep, deep submission. You merely smile taking a sip of your coffee as you wait for her to recover enough to continue the conversation.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You still aren't exactly an expert at oral but you try to pay attention to her silent tells to keep her dancing near the edge of orgasm. It's a tricky thing, and there is one too-close call where you stare at her too-hard, trembling member almost afraid to even breath lest your hard work go to waste but, hearing the desperate tremble in her voice you finally return to your chair, satisfied with her withheld of satisfaction.
<<else>>
Failing to get someone off is less of a challenge than the default state given your minimal skills at fellatio. Several minutes sees your jaw tiring and you retreat to your chair, leaving <<=setup.getNpcName('npc_technician', 'first')>> flushed and contrite as she attempts to suppress her frustration.
<</if>>
<br><br>
"@@.npc_technician;Thank you, Mistress. Perhaps next time I can earn an orgasm?@@"<br>
<br>
You smile and tell her "perhaps" before continuing on with the conversation.
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: technician finishes sucking you off under the table at maid cafe
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<set $player.timebased.horny = 0>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if $scene.maid>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $scene.maid>>
Catching the attention of <<=setup.getNpcName('npc_maid', 'first')>> the maid briskly walks over to your table.<br>
<br>
"@@.npc_maid;Is there something else I can get you, and where did <<=setup.getNpcName('npc_technician', 'first')>> get off to, I don't recall seeing her stand up.@@"<br>
<br>
At the first sound of her friend <<=setup.getNpcName('npc_technician', 'first')>> freezes, only to shortly after resume with even greater enthusiasm as if to distract you as "revenge" ... or perhaps in indication of just how much the potential humiliation is turning her own.<br>
<br>
You explain that <<=setup.getNpcName('npc_technician', 'first')>> had to "take care of something," with a wink before adding that she was feeling "very thirsty." <br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> grins knowingly as she glances from your flushed expression as you hold back an orgasm to the empty chair and finally down at the table under which <<=setup.getNpcName('npc_technician', 'first')>> is kneeling and sucking frantically.<br>
<br>
"@@.npc_maid;I see, well let me go fetch her a drink with some... special cream that should be just the thing for a parched throat.@@"<br>
<br>
You manage to hold your cool just long enough for <<=setup.getNpcName('npc_maid', 'first')>> to turn away before flooding <<=ps(setup.getNpcName('npc_technician', 'first'))>> belly with a powerful orgasm. Sucking you dry <<=setup.getNpcName('npc_technician', 'first')>> fixes your clothes before quickly sliding back into her chair, making it just in time for <<=setup.getNpcName('npc_maid', 'first')>> to re-appear with a very frothy looking drink.<br>
<br>
"@@.npc_maid;Whipped... just the way you like it... slut.@@" <<=setup.getNpcName('npc_maid', 'first')>> states with a grin as she places the drink down in front of her blushing friend. You thank the waitress for the swift delivery before telling <<=setup.getNpcName('npc_technician', 'first')>> to try it.<br>
<br>
If looks could kill <<=setup.getNpcName('npc_technician', 'first')>> would be shooting Cupid-like arrows of submission at you as she takes a sip in full view of her friend, smiling and showily licking her lips "@@.npc_technician;mmm, like salted caramel... though not as good as <<=$player.first_name>> makes.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> just smirks before heading off to another table and leaving you two alone.<br>
<br>
"@@.npc_technician;Fuck that was humiliating... and I am so, so turned on right now. Like... you're the one who got sucked off but right now I feel... just promise me you'll do something like this again, soon.@@"<br>
<br>
You smile as she takes another sip of her "special" drink and assure her that you'll "think of something."
<<else>>
Enjoying the private, secret happenings between your legs you relax and let the orgasm wash over you, particularly enjoying the way she hilts your deep as you cum, holding in place and milking you with throat and lips and tongue and hand until the need to breath becomes too much and she finally separates with a gasp.<br>
<br>
Resting her head against your thigh she kisses you as you soften and you reach down under the table to stroke her hair, enjoying the quiet, tender moment for several minutes before finally signaling for her to return to her chair.
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk to technician about your gender identity
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You bring up the various changes you've been going through, culminating in changing your name.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smirks "@@.npc_technician;yea, you already told me about that. Love the new name bee tee dubs but I'm guessing you wanted to talk about something else, maybe?@@"<br>
<br>
You nod considering your words carefully as you mentally parse who you are now.<br>
<br>
<<include technician_gender_select>>
</div>/*#
#desc: repeat talk to technician about your gender identity
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You bring up the idea of gender to <<=setup.getNpcName('npc_technician', 'first')>> once again.<br>
<br>
"@@.npc_technician;Ah, that thorny thing. Don't worry if it takes you a few tries to figure out, it's bullshit. Totally made up.... and yet totally real, all at the same time, y'know? Anyway, tell me about you.@@"<br>
<br>
You nod considering your words carefully as you mentally parse who you are now.<br>
<br>
<<include technician_gender_select>>
</div>/*#
#desc: choose what gender to tell technician you identify as
#status: WRITTEN 0.7.0.0
#*/
[<<moveTo "event_technician_comingout_2" "Try to tell her you're a normal guy and all this cross-dressing is an act." 60 "<<set $scene.gender='male'>>">>]<br>
[<<moveTo "event_technician_comingout_2" "Tell her you're a guy who likes crossdressing and such." 60 "<<set $scene.gender='xdress'>>">>]<br>
[<<moveTo "event_technician_comingout_2" "Tell her you don't fully feel like you identify with either gender." 60 "<<set $scene.gender='agender'>>">>]<br>
[<<moveTo "event_technician_comingout_2" "Tell her your gender is feeling very fluid." 60 "<<set $scene.gender='fluid'>>">>]<br>
[<<moveTo "event_technician_comingout_2" "Come out to her that you're a girl." 60 "<<set $scene.gender='girl'>>">>]<br>
<<if setup.getAverageFemstyle($player) == "voluntary" || setup.getTotalValue("feminization") == 20>>
[<<moveTo "event_technician_comingout_2" "Confidently inform her you're a girl." 60 "<<set $scene.gender='conf_girl'>>">>]
<</if>>/*#
#desc: tell technician what gender you identity as
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange==true>>
<<switch $scene.gender>>
<<case 'male'>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $player.flags.identify_as = 'male'>>
<<case 'xdress'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $player.flags.identify_as = 'male'>>
<<case 'agender'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $player.flags.identify_as = 'agender'>>
<<case 'fluid'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $player.flags.identify_as = 'fluid'>>
<<case 'girl'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $player.flags.identify_as = 'female'>>
<<case 'conf_girl'>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<set $player.timebased.stress -= Math.max(0,$player.timebased.stress-20)>>
<<set $player.flags.identify_as = 'female'>>
<</switch>>
<<if !setup.checkThemeExist('npc_technician', 'crossdressing', 'theme_technician_crossdress_11')>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_11'
10
'event_technician_comingout_1_alt'
false
'theme_technician_crossdress_header'
>>
<</if>>
<<if !setup.checkThemeExist('npc_admin', 'transition', 'theme_admin_transition_20')>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_20'
20
'event_admin_comingout_1'
true
'theme_admin_transition_header'
>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.gender>>
<<case 'male'>>
You want to tell her that you're a guy, and that this whole thing has been a nightmare... but you stop yourself. Remembering the NDA you hold back out of fear of what the consequences for you, and her too, probably, might be if you let her in on any of the secretive things that seem to go on at Social Interaction Service Syndicate Inc.<br>
<br>
Realizing that she's waiting for an answer you awkwardly explain that you're not really sure what you are anymore.<br>
<br>
She smiles in comfort "@@.npc_technician;it's ok. These things can be complicated and confusing. Just know that whatever you identify as is about you, not what anyone else expects of you and whichever path you end up traveling. Male, female, something in between or none of the above, it's valid. And well, if you come to any conclusions or want to talk to someone, I'm always happy to help.@@"<br>
<br>
You thank her for her good friendship and then continue on.
<<case 'xdress'>>
You explain that, while you're enjoying crossdressing and other experiments in femininity you still consider yourself male, yup, definitely male.<br>
<br>
"@@.npc_technician;Cool! I mean, you make a totes cute girl but just because you look like a thing doesn't mean you have to identify that way. Do what you like I mean, stiletto heels aside, lady clothes are like, so much better than dude options so you've made quite the rational choice in any sense.@@"<br>
<br>
You nod, thanking her for the encouragement before continuing on.
<<case 'agender'>>
You explain that you don't really feel like you identify with a gender at all.<br>
<br>
She nods sagely before replying. "@@.npc_technician;Totes valid. Look, gender is bullshit. Totally made up.... and yet totally real, all at the same time. Which means what you do with it well... that's up to you. You can buy in to a paradigm, pick and choose or skip it entirely. In other words, you do you and fuck the haterz, make your own way!@@"<br>
<br>
You half expect her to jump up on the table and start in with "Do You Hear the People Sing?" but instead she just takes another quaff of her overly-complicated coffee concoction and continued on to other topics.
<<case 'fluid'>>
You explain that your gender identity seems to shift back and forth.<br>
<br>
"@@.npc_technician;Mmm, fluids, easily one of my favorite states of matter. I mean coffee is a fluid and it's like... the best!@@"<br>
<br>
You laugh as she takes a theatrical sip of her overly complicated concoction. "@@.npc_technician;Real-talk though, that's totally cool, why be constrained by normal labels when you can just go with whatever feels best for you, no reason to ascribe to any strict structure unless it meets your needs just, y'know, enjoy yourself, have fun!@@"<br>
<br>
You thank her for the encouragement and continue on.
<<case 'girl'>>
Somewhat nervously you tell her that you think you're a girl.<br>
<br>
With a comforting smile she reaches across the table to take your hand.<br>
<br>
"@@.npc_technician;And a very cute girl you are. I just want you to know that I'm proud of you - I mean sure, I joke around a bunch and I'm a bit of a dork but... well hearing you say that, seeing the way your face seemed to light up... I'm just really, really happy that you would trust me to take part in your journey. If you ever need someone to talk to, or ask for advice or anything well... I'm here for you and whatever you decide to do is valid and correct for YOU.@@"<br>
<br>
You blush at the outflowing of support before steering the conversation forward.
<<case 'conf_girl'>>
With a confident grin you look across the table and ask her "who has two thumbs and is a girl?" Before she can reply you smirk and do the double thumbs up towards yourself.<br>
<br>
She grins, "@@.npc_technician;attagirl! Oh, I'm just so happy for you! Isn't being a girl the best! This calls for celebration, waitress, a celebratory cake for mine lovely lady friend!@@"<br>
<br>
Summoned from across the room <<=setup.getNpcName('npc_maid', 'nickname')>> drops in to take the order then returns a minute later with a lovely pink strawberry cupcake. Feeling as if a weight has lifted you let her gushing words of congratulation wash over you before finally continuing on.
<<default>>
ERROR unexpected scene.gender: <<=$scene.gender>>
<</switch>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: call technician root
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<set _firstcall = false>>
<<set _call = 0>>
<<if (
( (($now.getUTCDay()>0)&&($now.getUTCDay()<5)) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=17)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==5) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=13)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==6)||($now.getUTCDay()==0) && (($now.getUTCHours()>=10) && ($now.getUTCHours()<=24)) )
)>>
<<set _call = 1>>
<<else>>
<<set _call = 0>>
<</if>>
<<if $npc_technician.firstcall==false>>
<<set $npc_technician.firstcall=true>>
<<set _firstcall = true>>
<<if $npc_technician.flags.dataservice_encounter.looked_up_skirt == true>>
<<set $npc_technician.flags.knowTrans = true>>
<</if>>
<</if>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch _call>>
<<case 0>>
<<if ($now.getUTCHours()>7) || ($now.getUTCHours()< 17)>>
You try to call <<=setup.getNpcName('npc_technician', 'first')>>. She does not answer her phone. Hmm... You suppose she's busy somehow. Maybe you should try it later.
<<else>>
You try to call <<=setup.getNpcName('npc_technician', 'first')>>. She does not answer her phone. Either she's DMing another all-night gaming session, or she's asleep.
<</if>>
<br><br>
[<<moveTo $beforePhonecalllocation "Back" 1 "<<set $currentcall = false>>">>]
<<case 1 2>>
You try to call <<=setup.getNpcName('npc_technician', 'first')>>. She picks up the phone after a short time ringing. A sleepy sounding voice answers you: "@@.npc_technician;Who dares interrupt the great wizard's beauty sleep? Oh hey <<=setup.getPcFirstName('npc_technician')>>, it's you!@@"
<br><br>
<<if _firstcall==true>>
<<if $npc_technician.flags.dataservice_encounter.handjob_finish == "">>
"@@.npc_technician;So, <<=setup.getNpcName('npc_admin', 'first')>> finally gave you my contact informations. It was about time :D@@"
<<else>>
"@@.npc_technician;Finally you call! I've totally been thinking about you like... a LOT :D@@"
<</if>>
<br><br>
<<printThought $player "Did she just... pronounce an emoji?">><br>
<br>
"@@.npc_technician;So...@@"<br>
<br>
<</if>>
<<if ($npc_technician.lastdate != null) && ($now.getTime()<=$npc_technician.lastdate.getTime())>>
"@@.npc_technician;I'm really looking forward seeing you again :D. Is there something else?@@"<br>
<br>
<<else>>
<<switch $npc_technician.stage>>
<<case 1>>
"@@.npc_technician;What have you been up to lately? Say, you wanna meet and consume a lot of caffeinated hot liquid of black complexion?@@"
<<case 2>>
"@@.npc_technician;What have you been up to lately? Say... you wanna meet and consume a lot of caffeinated hot liquid of black complexion... or maybe do something else?@@"
<</switch>>
<br><br>
<</if>>
<<if ($npc_technician.lastdate == null) || ((setup.dayDiff($now, $npc_technician.lastdate)>=2) && $now.getTime()>$npc_technician.lastdate.getTime())>>
[<<moveTo "room_call_technician_date" "Meet at a cafe." 60 "<<set $technician_date=_call>>">>]<br>
<<if $npc_technician.stage>1>>
[@@.link_locked;Ask her out for a date (Not yet implemented)@@]<br>
<</if>>
<<elseif (setup.dayDiff($now, $npc_technician.lastdate)<2)>>
<<switch $npc_technician.datetype>>
<<case 'cafe'>>
[@@.link_locked;You've just been on a cafe with <<=setup.getNpcName('npc_technician', 'first')>> lately.@@]<br>
<<case 'date'>>
[@@.link_locked;You've just been on a date with <<=setup.getNpcName('npc_technician', 'first')>> lately.@@]<br>
<</switch>>
<<else>>
<<switch $npc_technician.datetype>>
<<case 'cafe'>>
[@@.link_locked;You've already agreed to meet at a cafe with <<=setup.getNpcName('npc_technician', 'first')>>.@@]<br>
<<case 'date'>>
[@@.link_locked;You managed to ask <<=setup.getNpcName('npc_technician', 'first')>> out for a date.@@]<br>
<</switch>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
[<<moveTo "call_technician_ask_uniform_upgrade" "Ask her for outfit suggestions." 120>>]<br>
<</if>>
[<<moveTo $beforePhonecalllocation "Say you just called to say hello." 1 "<<set $currentcall = false>>">>]
<</switch>>
</div>/*#
#desc: ask technician on a date over the phone
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $roomchange>>
<<setScene>>
<<set $scene.first_date = false>>
<<if ($npc_technician.affection>=$npc_technician.anger)>>
<<if !$player.locations.mallcafe>>
<<set $player.locations.mallcafe = true>>
<</if>>
<<set _tmpName = setup.getNpcName('npc_technician')>>
<<if ($now.getUTCDay()==6) || ( ($now.getUTCDay()==0) && ($now.getUTCHours()<15) )>>
<<set _tmpDay = (7-$now.getUTCDay())>>
<<if (_tmpDay == 7)>>
<<set _tmpDay = 0>>
<</if>>
<<set _tmpDate = setup.setNextDate($now, _tmpDay, 16, 0)>>
<<if ($now.getUTCDay()==0 && $now.getUTCHours()<15)>>
<<set $scene.day = "today">>
<<else>>
<<set $scene.day = "on Sunday">>
<</if>>
<<else>>
<<set _tmpDay = (6-$now.getUTCDay())>>
<<set _tmpDate = setup.setNextDate($now, _tmpDay, 16, 0)>>
<<if ($now.getUTCDay()==6 && $now.getUTCHours()<15)>>
<<set $scene.day = "today">>
<<else>>
<<set $scene.day = "on Saturday">>
<</if>>
<</if>>
<<set $npc_technician.lastdate = _tmpDate>>
<<set _taskCondition = setup.getConditions(_tmpDate, ['atMallCafe'])>>
<<set _taskDone = {
"trigger_event": "event_technician_cafe_1_1",
"text": "task_technician_cafe_1_done"
}>>
<<set _taskFailed = {
"trigger_event":"event_technician_cafe_1_1_failed",
"text": "task_technician_cafe_1_failed"
}>>
<<addTask 'technician_cafe_1'
$now
'npc_technician'
'task_technician_cafe_1'
_taskCondition
_taskDone
_taskFailed>>
<<set $npc_technician.dateType = "cafe">>
<<else>>
<<decrementEmotion 'anger' 'npc_technician' 1>>
<<set $npc_technician.lastdate = $now>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.affection>=$npc_technician.anger>>
You tell <<=setup.getNpcName('npc_technician', 'first')>> that you've rolled a natural 20 on decrypting messages and figured out what she means; and that you'd love to get together with her for coffee.<br>
<br>
"@@.npc_technician;Just as I predicted. Let's meet at the Newtype IV <<=$scene.day>> at 4 pm!
<<if $scene.first_date>>
That's the new Maid cafe in the Kaiser Franz Josef mall in the inner city, and let me tell you, as a regular: the maids are really hot. You're going to love it there :3.
<</if>>
See you there <<=$player.first_name>>!@@"<br>
<<else>>
You ask <<=setup.getNpcName('npc_technician', 'first')>> if she wants to go for a coffee in the near future..<br>
<br>
"@@.npc_technician;Sorry <<=$player.first_name>>, maybe another time, I'm ... I'm not feeling too well today.@@"<br>
<</if>>
<br>
[<<moveTo $beforePhonecalllocation "Say goodbye and hang up." 1 "<<set $currentcall = false>>">>]
</div>/*#
#desc: mux to route for staying after to help/schmooze with technician
#status: FINISHED 0.5.0.0
#*/
<<initRoom>>
<<if $npc_technician.flags.rpg_campaign.has_stayed_behind>>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<moveTo "event_technician_rpg_cleanup_x">>
<<else>>
<<moveTo "event_technician_rpg_cleanup_1_alt">>
<</if>>
<<else>>
<<moveTo "event_technician_rpg_cleanup_1">>
<</if>>
/* require session 2+ and technician happiness *//*#
#desc: help technician cleaning up after rpg session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if !$npc_technician.flags.rpg_campaign.has_stayed_behind>>
<<set $npc_technician.flags.rpg_campaign.has_stayed_behind = true>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_5'
7
'event_psychiatrist_theme_technician_cleanup_1'
true
'theme_psychiatrist_technician_header'
>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
Sticking around after the rest of the party has left you help <<=setup.getNpcName('npc_technician', 'first')>> pick up the empty cans, dirty plates and other detritus left behind from the session, as well as helping her gather and organize her supplies.<br>
<br>
She is very careful not to let you peek inside her DM's folder, declaring that "@@.npc_technician;such secrets are not to be viewed by a poor mortal such as yourself!@@"<br>
<br>
Hanging out with her alone like this you reflect on her dichotomy - how she uses the rambunctious facade of the "Tech Wizard" persona to maintain a certain separation and shield around her real self.<br>
<br>
You mention how much you've enjoyed spending time with her and that you'd like to do so more often. She's suddenly looking excited and nervous at the same time and you ask her what's wrong.<br>
<br>
"@@.npc_technician;Sorry, it's a bit silly but, like... as much as I joke around a bit and play the all-knowing wizard I'm sometimes not that great at figuring people out. And with you... you've changed so much since we worked together and even back then I didn't know you all that well. Sometimes I wish life was more like a game, if casting detect motive was as easy as using my phone to lookup what you're wearing under your clothes. I mean, we all wear masks of one sort or the other, and that's fine and understandable but also a bit scary since it's hard to know what, exactly is going on underneath.@@"<br>
<br>
<<printThought $player "Hmmm, I wonder...">><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup_1_2' 'Agree that it is kind of tricky and head home.' 500>>]<br>
[<<moveTo 'event_technician_seduce_1' 'Let her in on the secret that, actually, you have a particular vulnerability to zone of truth effects...' 600>>]
</div>/*#
#desc: help technician cleaning up after rpg session (if you didn't seduce her previously)
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
Sticking around after the rest of the party has left you help <<=setup.getNpcName('npc_technician', 'first')>> pick up the empty cans, dirty plates and other detritus left behind from the session, as well as helping her gather and organize her supplies.<br>
<br>
She is very careful not to let you peek at her DM's folder, declaring that "@@.npc_technician;such secrets are not to be viewed by a poor mortal such as yourself!@@"<br>
<br>
Recalling previous time together you can tell that she's a little nervous about pushing you any further but if you were willing to make the first move...<br>
<br>
[<<moveTo 'event_technician_rpg_cleanup_1_2' 'Just finish cleaning and head home.' 600>>]<br>
[<<moveTo 'event_technician_seduce_1' 'Let her in on the secret that you have a bit of a vulnerability to zone of truth effects...' 600>>]
</div>/*#
#desc: head home after helping technician cleanup (ie: don't try to seduce her)
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
Things are suddenly a bit silent and awkward and you both find yourself at a loss for words. Busying yourself with the last of the cleanup you thank her again for the game and head for the door.<br>
<br>
"@@.npc_technician;Yea, uh... you too, thanks for joining me- us!, I mean. See you next week?@@"<br>
<br>
You nod, saying you're looking forward to the next session before heading off.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 660>>]
</div>/*#
#desc: seduce technician
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $npc_technician.relationship.relationship_stage = 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Zone of truth-@@"<br>
<br>
It takes her a moment as she is putting away the last of her reference books. When she turns around you adopt your most innocent expression, hands behind your back and turning back and forth a bit as you smile at her.<br>
<br>
You can see the gears churning behind her eyes as her minor confusion blossoms into an expression of joy and then a facade of stoic control.<br>
<br>
Grabbing a pencil and wielding it like a wand she waves it in your direction.<br>
<br>
"@@.npc_technician;By the power of Gayskull I bind you to speak naught but your heart's truth for soever you are within these walls!@@"<br>
<br>
Grabbing a die you roll it on the table only to nudge it over to a 1 before she can see the result. Looking up and biting your lip you inform her that you appear to have critically failed your saving throw against her spell...<br>
<br>
"@@.npc_technician;Very well fair maid. Since your tongue is now bound to speak of naught but true things... tell to me what is thy purpose?@@"<br>
<br>
Taking a step towards her you flutter your eyelids and say that you were very much hoping to kiss her...<br>
<br>
"@@.npc_technician;A noble request! And one which I will happily grant!@@"<br>
<br>
You close your eyes and lean in. Her lips are soft and wet, parting tenderly even as she pushes back into you. Your heart races as you reach out, one hand wrapping gently around her waist. She returns the favour, reflecting your embrace and pulling you closer as your mouths press tight and your tongue tentatively darts forth.<br>
<br>
Your hesitant embrace turns into a seductive spar, move and escalating counter move. Her fingers run through your hair, her tongue wrestling with your own as she takes control until you start to melt in her arms... and then she leans slightly back, letting you pull her closer and take the lead. Momentum swings back and forth until who is the initiator and who is the subject becomes unknowable and, finally short of breath and with dual racing hearts the two of you part, opening your eyes to look bashfully back at one another.<br>
<br>
The silence lingers, finally broken as you ask permission to say another true thing.<br>
<br>
"@@.npc_technician;Speak,@@" She states softly, still holding your hands as you feel her pulse pounding in anticipation of your reply.<br>
<br>
You smile and make eyes towards the couch as you "confess" that you would very much like to kiss her again.<br>
<br>
She smiles bright enough to light the room like the sun, the two of you lunging towards each other, arms wrapped around as you stumble onto the couch, hugging and kissing, your bodies entwined and pressed against one another.<br>
<br>
Despite your mutual enthusiasm you both quickly tire, the late hour and long session prior conspiring to leave you wrapped in each other's arms, cuddled together on the couch as you "merely" stare into each other's eyes.<br>
<br>
"@@.npc_technician;So, as part of the sympathetic component of the spell the caster is compelled to tell the truth as well and...@@" She blushes for a moment as you blink up at her a moment before continuing. "@@.npc_technician;Well, anyway... since we're both forced to be truthful... I think you're a wonderful person whom I very much like spending time with and I like you a lot.@@"<br>
<br>
Darting forward for another kiss you smile and agree that you "like" her a lot too.<br>
<br>
Spooning together for a bit longer you start to drift pleasantly off to sleep only to slide off the narrow couch and go crashing to the floor, accidentally dragging her down on top of you.<br>
<br>
Letting out a yelp as she lands on you in a tangle of arms and legs she manages to get up first, rising to her hands and looking down at you, the ceiling light above lending her a bit of a radiant glow.<br>
<br>
She smiles before adopting her "best" southern accent. "@@.npc_technician;Why, ah do believe I may have just fallen for you.@@"<br>
<br>
You grin, both of you laughing at the corny joke before she helps you back to your feet where you reluctantly arrive at the mutual conclusion that you should probably be heading home.<br>
<br>
Reaching for the door you turn the knob only for her to grab your hand. You look back and she pulls you in for another passionate kiss that has you knees weak.<br>
<br>
"@@.npc_technician;Sorry, uh... see you soon?@@"<br>
<br>
You smile back, replying "of course... and that's the truth." before darting in for a final peck on the cheek that leaves her blushing bashfully and waving as you quickly slip out the door before anything else can happen.<br>
<br>
Riding the elevator back down from her apartment you finally release your held breath, light-headed as you replay every delightful moment since the end of the game session.<br>
<br>
The rest of your trip home passes in a fog, barely noticing your surroundings as you skip along, light as a cloud, your tingly feelings only refreshing as you walk into your flat and get a text.<br>
<br>
"@@.npc_technician;Hey, so... I had a REALLY great time tonight... I hope you stay late next session to help me "clean."@@"<br>
<br>
Clutching your phone to your chest as you lean back against your door and take a moment to compose your reply.<br>
<br>
[<<moveTo 'event_technician_seduce_2' "Reply that you're looking forward to it." 0 "<<set $scene.sub=false>>">>]
<<if setup.getTotalValue("submission") > 7>>
<<timed 45s t8n>>
<br>
[<<moveTo 'event_technician_seduce_2' "Text back of course... Mistress." 0 "<<set $scene.sub=true>>">>]
<</timed>>
<</if>>
</div>/*#
#desc: text back technician after your first cuddlefest
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if $scene.sub>>
<<set $npc_technician.relationship.called_her_mistress_first_date = true>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sub>>
Firing off your submissive reply your heart thunders in your chest as you await her response, staring in nervous anticipation at the "..." indicating that she's typing.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_technician;Wow, you really ARE a seductive demon. Have a good sleep my dear, your demon queen will be looking forward to our next visit with delight.@@"
<<else>>
"@@.npc_technician;Oh, wow I... I was looking forward to seeing you again anyway but now I REALLY can't wait!@@"
<</if>>
<br><br>
Letting out a sigh of relief you shoot off an emoji response, not wanting to risk any more lest you end the evening enslaved to a lovely, correction ANOTHER lovely woman.
<<else>>
Shooting off your reply you smile at the "(-inf, 3)" that she fires back.
<</if>>
<br><br>
Yawning at the late hour you figure you should probably get ready for bed.<br>
<br>
[<<moveTo 'room_foyer' 'Continue.' 0>>]
</div>/*#
#desc: repeatable help technician cleaning up after rpg session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene.tech_horny = (random(0,1) == 0)>>
<<set $scene.you_horny = ($player.timebased.horny >= 50)>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
By the time you've finished helping <<=setup.getNpcName('npc_technician', 'first')>> clean up her apartment
<<if $scene.tech_horny && $scene.you_horny>>
the air is dripping with sexual tension. As horny as you are it is <<=setup.getNpcName('npc_technician', 'first')>> who breaks the ice, posing on the couch and beckoning you to join her.<br>
<br>
"@@.npc_technician;Come over here, hot stuff. You're already in my lair now... come forth into my clutches.@@"<br>
<br>
Joining her on the couch you cuddle face to face, tongues intertwined for a long kiss before you take turns letting your lips go exploring, shuddering as she nibbles your neck and then returning the favour to have her gasp.<br>
<br>
As you caress her face and shower her with kisses her hands go exploring further afield, grabbing your butt with both hands and pulling you closer as she grinds against you. Pressed together about as close as two full-clothed humans can be you snuggle and grope, too tired to take things to another level, but too horny not to have some fun.
<<elseif !$scene.tech_horny && !$scene.you_horny>>
you're both too tired to do much else. Migrating towards the couch you softly cuddle, too tuckered out for anything more but happy to merely enjoy the comforting touch of one another.<br>
<br>
Wrapped around one another like a pair of schoolgirls you share the occasional soft kiss, the whispered comment of praise, just savoring each other's company.
<<elseif $scene.you_horny>>
<<=setup.getNpcName('npc_technician', 'first')>> is looking tired and you're feeling very horny. Taking the initiative you guide her over to the couch, pulling her into your embrace as you assume full cuddle control on her back, gently caressing her breasts with one hand while you nibble on her neck and whisper sweet nothings in her ear.<br>
<br>
She smiles and presses back into you, turning slightly to share a kiss before relaxing into your arms. Content that she is not currently up for much more you merely savor her smell, her soft skin, nuzzling the back of her neck as you enjoy holding her.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> is looking quite worked up. With a sly grin she lays across the couch, beckoning you in with her eye.<br>
<br>
"@@.npc_technician;Come, my dear, I long to feel your embrace.@@"<br>
<br>
Blushing and smiling you swiftly join her on the couch, her arms wrapped around you as she takes the position of the big spoon, grinding against you and nibbling on your neck.<br>
<br>
You're content to just lay in her arms, pressing back and cooing in contentment as she burns off energy playing with you. Too tired to get up to any serious mischief you find yourself reflecting on how nice this sort of quasi-chaste fun can be as she curls around you like a friendly cat.
<</if>>
<br><br>
You spend the better part of an hour snuggling with your favourite lady wizard before reluctantly concluding that you either need to head home or you're going to pass out in her apartment. As tempting as the latter sounds you bid her goodbye and head on your way.
<br><br>
[<<moveTo 'room_foyer' 'Return home.' 1200>>]
</div>/*#
#desc: chastity play w/technician after session 5
#status: STUB 0.5.0.0
#*/
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if !$scene.was_caged>>
<<removeItem $player $now "c_cage_steel" true>>
<</if>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<removeItem $player $now "rpg_succubus_collar" true>>
<<deleteItem $player $now "rpg_succubus_collar">>
<<removeItem $player $now "rpg_succubus_leash" true>>
<<deleteItem $player $now "rpg_succubus_leash">>
<<removeItem $player $now "rpg_succubus_ankle_cuffs" true>>
<<deleteItem $player $now "rpg_succubus_ankle_cuffs">>
<<removeItem $player $now "rpg_succubus_wrist_cuffs" true>>
<<deleteItem $player $now "rpg_succubus_wrist_cuffs">>
<<removeItem $player $now "rpg_succubus_demon_hood" true>>
<<deleteItem $player $now "rpg_succubus_demon_hood">>
<<removeItem $player $now "rpg_succubus_arm_bondage" true>>
<<deleteItem $player $now "rpg_succubus_arm_bondage">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_role == "sub">>
<<elseif $npc_technician.relationship.her_role == "dom">>
<<if $npc_technician.relationship.keyholder || $scene.was_caged>>
<<else>>
<</if>>
<<else>>
<</if>>
Alas, those wishing to know what (absolutely totally innocent, yes 110% innocent) things you get up to with your lovely tech wizard friend shall need wait for a future release.<br>
<br>
[<<moveTo 'room_foyer' 'Head home.' 0>>]
</div>/*#
#desc: play with technician after finishing campaign
#status: STUB 0.5.0.0
#*/
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_role == "sub">>
<<elseif $npc_technician.relationship.her_role == "dom">>
<<else>>
<</if>>
You have unspeakable fun with your friend, <<=setup.getNpcName('npc_technician', 'first')>>. Cuddling may have even been involved. Who knows, this scene hasn't been written yet.<br>
<br>
[<<moveTo 'room_foyer' 'Head home.' 0>>]
</div>/*#
#desc: play with technician after finishing campaign as succubus
#status: STUB 0.5.0.0
#*/
<<if $roomchange==true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<removeItem $player $now "rpg_succubus_leash" true>>
<<deleteItem $player $now "rpg_succubus_leash">>
<<removeItem $player $now "rpg_succubus_ankle_cuffs" true>>
<<deleteItem $player $now "rpg_succubus_ankle_cuffs">>
<<removeItem $player $now "rpg_succubus_wrist_cuffs" true>>
<<deleteItem $player $now "rpg_succubus_wrist_cuffs">>
<<removeItem $player $now "rpg_succubus_demon_hood" true>>
<<deleteItem $player $now "rpg_succubus_demon_hood">>
<<removeItem $player $now "rpg_succubus_arm_bondage" true>>
<<deleteItem $player $now "rpg_succubus_arm_bondage">>
<<removeItem $player $now "rpg_succubus_pentagram_harness" true>>
<<deleteItem $player $now "rpg_succubus_pentagram_harness">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_role == "sub">>
<<elseif $npc_technician.relationship.her_role == "dom">>
<<else>>
<</if>>
Ooops, infernal powers or no, this scene is as yet unwritten.
<br>
[<<moveTo 'room_foyer' 'Head home.' 0>>]
</div>/*#
#desc: psychiatrist topic: staying after rpg session to help technician cleanup
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk about staying behind after the RPG session was over to help <<=setup.getNpcName('npc_technician', 'first')>> with the cleanup.<br>
<br>
"@@.npc_psychiatrist;Good for you! Being the DM and hosting is a lot of work. It's always great when a player pitches in to help out a bit. Though...@@" she pauses, looking at you with a sly smile. "@@.npc_psychiatrist;Tell me, did you have, perhaps some... additional motivation in staying behind, alone, with <<=setup.getNpcName('npc_technician', 'first')>>?@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
[<<moveTo event_psychiatrist_theme_technician_seduce_1 "Admit that you kind of seduced her a little." 600>>]
<<else>>
[<<moveTo event_psychiatrist_theme_technician_seduce_1 "Assert that no, you just stayed behind to help out." 600>>]
<</if>>
</div>/*#
#desc: psychiatrist topic: seducing technician after rpg session
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.relationship_stage > 0>>
You find yourself blushing and excited as you explain that, after helping with cleanup, you and <<=setup.getNpcName('npc_technician', 'first')>> found yourself flirting and, well, one thing lead to another and soon you were kissing and cuddling on the couch.<br>
<br>
"@@.npc_psychiatrist;Aww, that's so sweet! And I'm so very, very happy for you, <<=setup.getNpcName('npc_technician', 'first')>> sounds like a real catch and you had the courage to put yourself out there and go for it! Keep it up and I wish the two of you all the fortune in the world!@@"<br>
<br>
<<if $npc_technician.relationship.called_her_mistress_first_date>>
You're about to move on when you confess that, after things were over and you were on your way home you... maybe may have called <<=setup.getNpcName('npc_technician', 'first')>> "Mistress." <br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles wide enough you think she might tear something.<br>
<br>
"@@.npc_psychiatrist;Oh you rascal! I do hope your lovely friend knows what she's in for... "Mistress" on the first night! My, my, my...@@"
<</if>>
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems obviously disappointed at your response.<br>
<br>
"@@.npc_psychiatrist;Huh, I'm surprised, I mean, from how you've spoken of her before I thought there was a real spark going between you and <<=setup.getNpcName('npc_technician', 'first')>>. I really encourage you not to let an opportunity like this pass you by, fortunately there's always next week, right?@@"<br>
<br>
<<printThought $player "Hmm, maybe she's right...">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: utility passage for removing RPG succubus attire
#status: FINISHED 0.5.0.0
#*/
<<if $npc_technician.flags.rpg_campaign.session == 5 && $npc_technician.relationship.relationship_stage > 0>>
/* no op */
<<else>>
<<if $scene.collared != 'locked'>>
<<if !($npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[6] || $npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[7])>>
<<removeItem $player $now "rpg_succubus_collar" true>>
<<deleteItem $player $now "rpg_succubus_collar">>
<</if>>
<</if>>
<<useClothSetPop 'scene' $player $now>>
<<if $npc_technician.flags.rpg_campaign.session > 3>>
<<removeItem $player $now "rpg_succubus_demon_hood" true>>
<<deleteItem $player $now "rpg_succubus_demon_hood">>
<<if $npc_technician.flags.rpg_campaign.session >= 4>>
<<removeItem $player $now "rpg_succubus_arm_bondage" true>>
<<deleteItem $player $now "rpg_succubus_arm_bondage">>
<<if $npc_technician.flags.rpg_campaign.session > 6>>
<<removeItem $player $now "rpg_succubus_pentagram_harness" true>>
<<deleteItem $player $now "rpg_succubus_pentagram_harness">>
<</if>>
<</if>>
<</if>>
<<if setup.isItemEquipped("rpg_succubus_leash")>>
<<removeItem $player $now "rpg_succubus_leash" true>>
<<deleteItem $player $now "rpg_succubus_leash">>
<</if>>
<<if setup.isItemEquipped("rpg_succubus_ankle_cuffs")>>
<<removeItem $player $now "rpg_succubus_ankle_cuffs" true>>
<<deleteItem $player $now "rpg_succubus_ankle_cuffs">>
<</if>>
<<if setup.isItemEquipped("rpg_succubus_wrist_cuffs")>>
<<removeItem $player $now "rpg_succubus_wrist_cuffs" true>>
<<deleteItem $player $now "rpg_succubus_wrist_cuffs">>
<</if>>
<</if>>/*#
#desc: utility passage to remove collar if possible and record status
#status: FINISHED 0.5.0.0
#*/
<<set $scene.collared = "none">>
<<if $npc_technician.flags.rpg_campaign.session < 7>>
<<useClothSetPush 'scene'>>
<</if>>
<<if setup.isItemTypeEquipped('choker')>>
<<if setup.getItemObjFromType("choker").hasOwnProperty("lockable") && setup.getItemObjFromType("choker")["lockable"][0]>>
<<set $scene.collared = "locked">>
<<else>>
<<set $scene.collared = "worn">>
<</if>>
<</if>>/*#
#desc: arrive at npc_technician's apartment for first RPG session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.cur_campaign_id = "fantasy">>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_0'
0
'event_psychiatrist_theme_group_1'
false
'theme_psychiatrist_rpg_header'
>>
<<set $npc_rpg_warlock.profile = true>>
<<set $npc_rpg_dude.profile = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
You knock on the door and <<=setup.getNpcName('npc_technician', 'first')>> opens it with a smile before theatrically gesturing for you to enter.<br>
<br>
"@@.npc_technician;Step forth, adventurer; for an evening of action and excitement!@@"<br>
<br>
You can't help smiling at her enthusiasm as she leads you into the living room where several other people are already gathered.<br>
<br>
"@@.npc_technician;<<=$player.first_name>>, meet the gang!@@" She moves around to point to each person in turn for introductions as they smile back in greeting. "@@.npc_technician;First off, you already know <<=setup.getNpcName('npc_maid', 'first')>>.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> sits on a chair at one end of a coffee table scattered with dice and papers. Judging by her maid outfit you figure she came straight from work.<br>
<br>
The next two, seated at one end of a couch, look to be in some sort of relationship given the way the woman is draped across across the guy's lap. The girl, introduced as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> is dressed in a red trenchcoat over a matching corset, skintight jeans and chunky platform boots. Her (presumed) boyfriend, <<=setup.getNpcName('npc_rpg_dude', 'first')>> tilts towards the stereotypical "skinny metal guy" side of things with long hair, combat boots, skinny jeans, a black short sleeved shirt and a spiked collar save for it having a ring dangling from the front that she occasionally toys with.<br>
<br>
Finally there is <<=setup.getNpcName('npc_barista', 'nickname')>>, who waves at you with a wide smile.<br>
<br>
"@@.npc_barista;Hiya <<=$player.first_name>>!@@"<br>
<br>
"@@.npc_technician;So, I, uh guess you've met <<=setup.getNpcName('npc_barista', 'first')>>?@@"<br>
<br>
"@@.npc_barista;Yup! <<=$player.first_name>> comes in for coffee, like, every day!@@"<br>
<br>
"@@.npc_technician;Tsk, tsk, careful there <<=setup.getNpcName('npc_maid', 'first')>> might get jealous!@@"<br>
<br>
"@@.npc_barista;Aww, I promise to share!@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> rolls here eyes as <<=setup.getNpcName('npc_technician', 'first')>> moves on from introductions. You take a seat on the couch, sitting at the far end from the lovebirds.<br>
<br>
Waving a foot in your direction <<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles. "@@.npc_rpg_warlock;why so far? Come on, scooch a bit closer! We don't bite... much.@@"<br>
<br>
You blush and struggle for words at the blatant flirting despite her boyfriend being right there. <<=setup.getNpcName('npc_rpg_dude', 'first')>> just smiles as the rest of the group roll their eyes.<br>
<br>
"@@.npc_technician;Come on! All of you promised to be on your best behaviour tonight!@@"<br>
<br>
"@@.npc_maid;Yea, I wanna actually get to the game.@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> flutters her eyelashes in mock innocence and pouts before turning back towards you to flash an enticing smile. You compromise and shuffle a little closer to the middle of the couch.<br>
<br>
<<printThought $player "What is it with ladies treating me like a toy to tease and taunt?">><br>
<br>
"@@.npc_technician;Alright, let's get this show on the road, how about everyone introduces their characters then <<=$player.first_name>> can choose what she wants to play. To save time we each rolled up a character for you, so you can choose one of those to play as.@@"<br>
<br>
You nod, sitting back to listen to the rest of the "party." <br>
<br>
[<<moveTo 'event_rpg_intro_characters' 'Listen.' $scene.stepLength>>]
</div>/*#
#desc: other rpg players describe their characters
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_maid', 'first')>> goes first. "@@.npc_maid;I'm playing <<=setup.getNpcName('npc_maid', 'character')>>, a half-celestial barbarian. Her mother was a Valkyrie and her father was a tribal chieftain and she channels her battle-rage to defend the innocent.@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> is next. "@@.npc_rpg_warlock;I'm playing the warlock: <<=setup.getNpcName('npc_rpg_warlock', 'character')>>. Binder of Demons! Caster of spells! All shall bow before my infernal magical might!@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> shakes his head at her theatrics as she almost falls out of his lap in exuberance. "@@.npc_rpg_dude;My character is named <<=setup.getNpcName('npc_rpg_dude', 'character')>> - undead warrior, I'm the group's tank but I can dish it out as well thanks to the greater lightning elemental bound into my sword.@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> has been bouncing in her chair the whole time as she waited for her turn. "@@.npc_barista;I'm playing <<=setup.getNpcName('npc_barista', 'character')>>, she's a half-elf who loves nothing more than exciting and inspiring those around her!@@"<br>
<br>
Coming back around <<=setup.getNpcName('npc_technician', 'first')>> smiles from behind her screen, looking even more like a ruler on her throne than she does in her cubicle. "@@.npc_technician;And *I* am the Dungeon Mistress! Crafter of tales, builder of worlds, the hand of fate and the Goddess to whom your prayers are cast!@@"<br>
<br>
"@@.npc_maid;Yea, we get it, your game, your story, your rules. But maybe cut back on the delusions of grandeur?@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> snorts, pretending to be miffed though you get the feeling this sort of taunting is all part of whatever quirky friendship the two of them share.<br>
<br>
"@@.npc_technician;Ignore the heathen! Anyway, the game is a bit of a homebrew modification of Traps and Treasures third that we call three point <<glitchText "sex">>. Don't worry too much about the details, you'll pick it up as we go along. Just consider it your classic fantasy world but with a bunch of additional houserules, splatbooks and a few loottables from the classic edition that we find make things more fun.@@"<br>
<br>
You've heard of the game before, though whatever familiarity you have obviously won't cover what sounds like their substantial modifications. You seem to recall there was a new version released a year or two ago but before you can mention anything <<=setup.getNpcName('npc_maid', 'first')>> leans over and whispers in your ear. "@@.npc_maid;Whatever you do, do NOT mention fourth edition she, uh... has OPINIONS.@@"<br>
<br>
Ignoring the whispered exchange as she organizes some papers <<=setup.getNpcName('npc_technician', 'first')>> hands you a stack of character sheets.<br>
<br>
"@@.npc_technician;Now that you've got an idea as to the rest of the party you'll be needing a character of your own. To save time, and make sure you'd have something that would mesh with the party, we each rolled up a full character to give you a variety to select from.@@"<br>
<br>
[<<moveTo 'event_rpg_character_select' 'Look through your options.' $scene.stepLength>>]
</div>/*#
#desc: select your character for the rpg campaign
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/characters/rpg_none.png">>
<div id="invframe" class="scrolltext">
Flipping through the sheets you find <<if $fetish.bestiality_hard>>five<<else>>four<</if>> characters to choose between. Each comes with a hand-drawn portrait, a short background description and fully allocated stats.<br>
<br>
What character do you want to look at?<br>
<br>
[<<moveTo 'event_rpg_character_orc_mage' 'The Half-Orc Mage.' 0>>]<br>
[<<moveTo 'event_rpg_character_elf_priestess' 'The Elf Priestess.' 0>>]<br>
[<<moveTo 'event_rpg_character_succubus' 'The Succubus Pirate.' 0>>]<br>
[<<moveTo 'event_rpg_character_bard' 'The Bard.' 0>>]<br>
<<if $fetish.bestiality_hard>>
[<<moveTo 'event_rpg_character_druid' 'The Shape-shifting Druid.' 0>>]
<</if>>
</div>/*#
#desc: character description for orc mage
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/characters/rpg_orc_mage_0.png">>
<div id="invframe" class="scrolltext">
Mahn-kurk is an atypical member of his species. Wearing a robe and holding a staff high in the midst of channeling a spell in a classic "wizard" pose what sets things apart is the muscle-bound form filling the robe, and the tusked face of a brown half-orc looking boldly out from beneath the hood.<br>
<br>
His background is interesting, having decided to pursue the arcane arts rather than fall back on his natural strength. Racial bonuses means he still has a hearty constitution and strength to go with intellect for spellcasting, balanced out with somewhat lower scores in charisma and the rest. For spells it looks like your primary school is something called Somniumic, which apparently means "sleep" magic, though looking through his spell list it seems like you have access to some standards such as fireball as well.<br>
<br>
Given all that's happened to you it'd be a bit interesting to swing the other direction and pretend to be a big, hulking man backed up by some magical know-how.<br>
<br>
You glance up and <<=setup.getNpcName('npc_maid', 'first')>> nods. "@@.npc_maid;I came up with that one, I think it's fun to make a character that goes against expectations and stereotypes.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_1' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='orc_mage'>>">>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='orc_mage'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character'>>]
</div>/*#
#desc: character description for elf priestess/healer
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/characters/rpg_elf_priestess_0.png">>
<div id="invframe" class="scrolltext">
A cliche fantasy elf, her billowing, revealing robes defying gravity thanks to impossible winds. The priestess lists as her skills expertise in healing magic as well as spreading blessings to her allies. Under "Deity Worshipped" it states "The Power of the Divine Three." <br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> flashes a smile. "@@.npc_rpg_dude;That was my idea, bit self-serving, to be honest. Y'know, with me playing a tank and well... we were a bit strapped for healing in the last campaign!@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_1' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='elf_priestess'>>">>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='elf_priestess'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character'>>]
</div>/*#
#desc: character description for succubus pirate
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/characters/rpg_succubus_0.png">>
<div id="invframe" class="scrolltext">
You look at the character sheet for Myserra Antoire, mighty pirate.<br>
<br>
A succubus complete with horns, wings and unearthly beauty the only attire, aside from a jaunty pirate hat, that she wears is an ensemble of magical restraints, most notably a collar that, according to the inventory description, prevents her from returning to the infernal realms. Her other cuffs appear to provide magical bonuses as well, though that doesn't make them any less kinky or scandalously slutty.<br>
<br>
Under skill summary it lists "bending the will of men," "plundering booty" so it sounds like this would be a thief/mentalist, a pretty potent combination, then at the bottom it also notes that she can suppress her gag reflex for up to ten minutes.<br>
<br>
Looking up from the character sheet you find <<=setup.getNpcName('npc_rpg_warlock', 'first')>> sporting an already familiar grin. "@@.npc_rpg_warlock;I came up with that one. You'd actually be bound to me as my demonic servant. I figured it'd be a bit easier for you that way, if you aren't as familiar with playing. Plus... well, it seemed appropriate given that you seemed to have ensorcelled <<=setup.getNpcName('npc_technician', 'first')>> with your lust magic IRL.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> turns beet red but tries to hide it hunkered down behind her DM screen. A bit of cardboard is hardly protection from the ribbing of the rest of her friends, <<=setup.getNpcName('npc_maid', 'first')>> cutting deepest as she tells you that "@@.npc_maid;hey, don't worry, being the DM's girlfriend comes with perks, y'know?@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
Trying to stand up for your girlfriend you straighten up a bit and ignore the teasing, insisting that she would never betray her responsibilities as Dungeon Mistress in such a way.
<<else>>
Now it's your turn to blush... at the idea of being a "girlfriend"... then again, if you were going to be anyone's wouldn't you like to be <<=ps(setup.getNpcName('npc_technician', 'first'))>>?
<</if>>
<br><br>
<<=setup.getNpcName('npc_technician', 'first')>> recovers her composure, coughing loudly and breaking up the chatter. "@@.npc_technician;Come on, stop teasing the new player!, I invited <<=$player.first_name>> here as a friend so let's just, like focus on the game, huh?@@"<br>
<br>
You think <<=setup.getNpcName('npc_rpg_warlock', 'first')>> was about to say something more but you spot <<=setup.getNpcName('npc_rpg_dude', 'first')>> giving her a pinch. For her part <<=setup.getNpcName('npc_maid', 'first')>> just laughs it off.<br>
<br>
"@@.npc_maid;Come on, you know we're just joshing you!, Seriously though, play whatever character you like - this is a safe space and we're all just here to have fun.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_1' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='succubus'>>">>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='succubus'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character'>>]
</div>/*#
#desc: character description for lucksack bard
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/characters/rpg_bard_0.png">>
<div id="invframe" class="scrolltext">
With a certain gender ambiguity that reminds you a little of your recent past this character is HAWT with a capital H. Sporting a dual purpose axe that looks to be both a guitar and a weapon the skill list indicates that you can buff your allies and bring fear to your enemies while able to expertly play everything "from the lyre to the skin flute." Judging by your godlike charisma and social stats you'd slot into the classic "face" role, with enough agility to not be a liability in combat.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smiles. "@@.npc_technician;That was one of mine. Some people kind of trash bards but I think they're fun! I mean what's more badass than rolling up to a fight and just rocking the fuck out, y'know?@@"<br>
<br>
"@@.npc_barista;Yea! Bards are, like, the best, I'm playing one too!@@"<br>
<br>
"@@.npc_technician;Wait- you're?, again? But I thought...@@" <<=setup.getNpcName('npc_technician', 'first')>> pinches the bridge of her nose and shakes her head.<br>
<br>
"@@.npc_barista;Like, duh! Bards are the best, especially with a five person party, my bardsong of power is effectively zero point seven additional standard unit character's worth of DPS... averaged over the length of a typical encounter, so once you add in my own point six contribution we're MUCH better off than if I was just another beater. And if you, like did it together with me we'd be able to take on encounters of one point four eight higher average level, which is just pure gravy for xp.@@"<br>
<br>
<<printThought $player "Wait... what did she just say?">><br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> chuckles. "@@.npc_maid;It's called a duet, by the way, not "doing it together."@@"<br>
<br>
"@@.npc_barista;Oh! Well, like, that too!@@"<br>
<br>
Though you blink in confusion the rest of the group takes <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> mathy outburst in stride.<br>
<br>
"@@.npc_technician;Fine, whatever, we can have two bards. Just choose whatever you thing you'd most enjoy playing.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_1' 'Choose this character.' 300 '<<set $npc_technician.flags.rpg_campaign.character="bard">>'>>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='bard'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character'>>]
</div>/*#
#desc: character description for shape-shifting druid
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/characters/rpg_druid_0.png">>
<div id="invframe" class="scrolltext">
The actual character somewhat indistinct they are surrounded by a multitude of animals representing the various forms you can shift between. You find it a bit odd that all of the forms appear to be anatomically correct with... both types of primary and secondary sexual characteristics? It's weird, but hardly the strangest thing you've seen of late and you chalk it up to them using some random picture they found online and, well, everyone know's what the internet is like.<br>
<br>
Flipping to the skills section it looks like you'd have pretty good versatility thanks to your different form, though the power seems to come with the downside that you're subject to animalistic urges that can lead to you losing control in stressful situations and your actions being determined by die roll.<br>
<br>
"@@.npc_barista;That one was mine! Being like, super versatile and able to do everything is great!@@"<br>
<br>
"@@.npc_technician;Yea... just an fyi that <<=setup.getNpcName('npc_barista', 'nickname')>> went a little hog wild with splatbooks. Let's just say that one's if you feel like being a bit more adventurous - you're powerful, but you'll be at the whims of fate on occasion so I'd only choose it if the idea of riding... or getting ridden, by the beast, as it were, sounds ok.@@"<br>
<br>
"@@.npc_barista;Randomness is fun! And, like the odds are totally in your favour, wheee!@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_1' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='druid'>>">>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='druid'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character'>>]
</div>/*#
#desc: first rpg campaign start
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 0>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_10'
7
'event_psychiatrist_theme_rpg_succubus'
true
'theme_psychiatrist_rpg_header'
>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
Having made your selection you pass the other character sheets back to <<=setup.getNpcName('npc_technician', 'first')>>. Everyone seems quite pleased with your choice, and even more excited to get started.<br>
<br>
With a wide grin on her face <<=setup.getNpcName('npc_technician', 'first')>> leans forward, the rest of the group relaxing back into their seats as she starts the session rolling.<br>
<br>
"@@.npc_technician;Descending deeper into the Bloodfel Lair you come upon what looks to be a makeshift prison. Rusted iron bars have been sunk deep into the stone cave walls to secure a handful of dank cells...@@"<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
All but one of the cells are empty, at least, empty of anything still living. In the final cell you spot a large robed figure.<br>
<br>
She nods in your direction. "@@.npc_technician;That's you, tiger; you just woke up to the sound of these adventurers entering the room.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<case "elf_priestess">>
All but one of the cells are empty, at least, empty of anything still living. In the final cell you spot a robed elf, her clean, sylvan beauty a stark contrast to the dingy cell in which she is imprisoned.<br>
<br>
She nods in your direction. "@@.npc_technician;That's you, tiger; you were praying when these adventurers entered the room.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<case "bard">>
All but one of the cells are empty, at least, empty of anything still living. In the final cell you spot an attractive figure casually laying on a cot, humming to themselves.<br>
<br>
She nods in your direction. "@@.npc_technician;That's you, tiger; you were just passing the time composing a new ballad when this group of adventurers entered the room.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<case "druid">>
All but one of the cells are empty, at least, empty of anything still living. In the final cell you spot a large bear sitting on its haunches.<br>
<br>
She nods in your direction. "@@.npc_technician;That's you, hunny-bear; you recently woke to the smell of these adventurers approaching the room.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<case "succubus">>
The cells are all empty but there is a lingering sensation of evil hanging in the air.<br>
<br>
"@@.npc_rpg_warlock;Alright, looks like we're safe here for a few, so I'm going to go ahead and summon my bound demon.@@"<br>
<br>
"@@.npc_technician;Ok, you spend a few minutes preparing the ritual. Make an occult check?@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> rolls a die. "@@.npc_rpg_warlock;After modifiers that's 23!@@"<br>
<br>
"@@.npc_technician;Alright, your summoning circle pulses with mystical power as you chant. After a few moments a figure starts to appear, purple shadow coalescing into a feminine shape. You continue chanting, the lines of power traced on the ground rising into the air and then entwining the demonic succubus as she materializes. You finish the spell, magical restraints materialising on her otherwise naked body as she finishes getting pulled into the mortal world. The glow of the restraints fades but their mystical power remains strong, binding her to this realm, and to your control.@@"<br>
<br>
Turning towards you <<=setup.getNpcName('npc_technician', 'first')>> nods. "@@.npc_technician;Alright, you've been summoned.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_1_1' 'Read the note.' $scene.stepLength>>]
</div>/*#
#desc: released from your cell and join the party
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
You read the note.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Traveling through the area you were captured by the nefarious monsters occupying the dungeon. They tried to recruit you to their cause but when you refused you were thrown into the cell.<br>
<br>
Explaining your situation to the party they quickly free you as you gratefully offer to lend your arcane might in vanquishing the remaining occupants of the dungeon before other innocents fall victim to their raids.
<<case "elf_priestess">>
You had been on a pilgrimage to a nearby temple when the caravan you had been traveling with was set upon by monsters. You tried to lend your divine power to aid the guardsman but your display of magical might only drew the focus of the attackers. Before you knew it you had been captured and hurried away, deposited into the cell you now find yourself in.<br>
<br>
You convey your plight to the adventures who quickly free you from your cell. Explaining their plan to vanquish the summoner responsible for the monstrous occupants of the dungeon you eagerly offer to lend "the divine power of the three" to their cause.<br>
<br>
For some reason <<=setup.getNpcName('npc_barista', 'nickname')>> titters at your phrasing.
<<case "bard">>
You don't really remember how you ended up in this cell, just that you were partying it up after a successful tavern show and then you woke up here, your treasured axe leaning against the far wall out of sight, your head pounding with something worse than a mere hangover.<br>
<br>
Happy to see the arriving adventurers you explain your situation and they break open your cell. Grabbing your treasured instrument/weapon you strike a power chord, feeling energy flow back through you as you promise to lend your melodic magical might to help defeat the dungeon dwellers who had captured, kidnapped and contained you.<br>
<br>
"@@.npc_rpg_dude;Nice alliteration!@@"
<<case "druid">>
You had been minding your own business in the forest when a troupe of monsters had set upon you. Though you put up quite the fight in your powerful ursin form you were eventually trapped and subdued, finally dumped in this cage and left alone.<br>
<br>
Sensing that these adventurers are friendly you shift back into human form, offering your primal might if they would free you from your captivity to get revenge on your captors. They welcome you to the party as the group of you head deeper into the dungeon. Taking point position you assume cat form for stealth and to better sense any ambushes.
<<case "succubus">>
Ripped from your infernal home you feel the power of your magical bindings preventing you from returning or taking revenge on your summoner... Not that you have particular urge to, the mortal world is quite a pleasant one and it is always a bit of fun to join up and seduce a party of do-gooders.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles at you in real life.<br>
<br>
"@@.npc_rpg_warlock;Come along my pet, we have an evil summoner to vanquish!@@"<br>
<br>
Unconsciously you find yourself scooting across the couch to sit a little closer to <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and her boyfriend.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
Proceeding on from the dungeon the party easily squashes a small roving patrol of enemies before making it down another level to outside what looks like a guard barracks that appears to be the final obstacle between the party and the evil summoner responsible for the monstrous hordes filling the dungeon and terrorising the surrounding communities.<br>
<br>
The party takes a few moments to prepare and strategize for the room beyond.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_2' 'Listen to the plan.' $scene.stepLength>>]
</div>/*#
#desc: decide how to deal with barracks leading into final fight of the dungeon
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
Carefully peeking into the barracks you count over a dozen monsters lounging in wait. You can tell from looking at your fellow players that, outnumbered as you are, the battle ahead could be a tough one - especially since the longer you take the greater the chance that the evil summoner lurking at the end of the dungeon will notice the commotion and join in.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You consider that your sleep spells could allow the party to bypass this entire encounter and head straight for the big bad.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_active' 'Attempt to work your magic.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Stay quiet and just play spell-slinging support as the party moves to combat.' $scene.stepLength>>]
<<case "elf_priestess">>
Hanging back with the other ranged you channel an aura, preparing a spell to heal whichever of your compatriots is the first to take damage.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Time to fight..' $scene.stepLength>>]<br>
<<case "bard">>
You're a musical badass with an axe to grind and enemy faces to melt.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_active' 'Throw caution to the wind and shred a magic solo to lead the party into battle.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Play it safe and just try to survive as the party moves to combat.' $scene.stepLength>>]
<<case "druid">>
<<=setup.getNpcName('npc_technician', 'first')>> calls for you to make a roll to resist frenzy at the prospect of battle. Looking at your various forms you realise that if you could surrender to the frenzy you'll net a huge bonus to combat abilities at the cost of losing control of your actions to the whim of the dice, or you could try to remain calm at the cost of primal power.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_active' "Embrace the chaos, go bear and let out a roar. It's time to do it!" $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Play it safe and remain in cat form to just try to survive as the party moves to combat.' $scene.stepLength>>]
<<case "succubus">>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles wickedly in your direction.<br>
<br>
"@@.npc_rpg_warlock;Alright my slutty servant. Let's see you put those devilishly seductive abilities to use. Sneak in there and distract the guards so we can get the jump on our foes.@@"<br>
<br>
Given your character there's little doubt what manner of "distraction" she has in mind, but refusing her order could result in her using your mystical restraints to punish you.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_active' 'Obey her command and deploy your sneaky, seductive abilities.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Refuse the order.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: don't take action to help the party deal with the barracks encounter
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = false>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<include rpg_choker_check>>
<<addItem "rpg_succubus_leash">>
<<wearItem $player $now "rpg_succubus_leash" true>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "rpg_succubus_collar">>
<<wearItem $player $now "rpg_succubus_collar" true>>
<<case 'worn'>>
<<set $scene.collared = "worn">>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $player $now true>>
<<addItem "rpg_succubus_collar">>
<<wearItem $player $now "rpg_succubus_collar" true>>
<</switch>>
<<else>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "bondage_collar">>
<<wearItem $player $now "bondage_collar" true>>
<<case 'worn'>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $player $now true>>
<<addItem "bondage_collar">>
<<wearItem $player $now "bondage_collar" true>>
<</switch>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Not speaking up to offer strategic suggestions you just hang back with the casters as <<=setup.getNpcName('npc_rpg_dude', 'first')>> kicks down the door and battle is joined.<br>
<br>
The fight is pitched, the undead warrior drawing most of the heat but the number of enemies such that a few get past to attack you and the warlock.<br>
<br>
Throwing out fireballs as you can there are a couple close calls but the party manages to pull through. Unfortunately just as the final foe falls you hear a sound from the next room. The door ahead swings open...
<<case "elf_priestess">>
Standing with the warlock in the back of the party you throw out heals as the party enters into pitched combat. With <<=setup.getNpcName('npc_rpg_dude', 'first')>> and his undead warrior at the front the party slices through your less organised foes. Outnumbered as you are you each take more than a few hits but your healing magics are more than up to the task of neutralizing the damage.<br>
<br>
A crackled of lightning arcing from <<=ps(setup.getNpcName('npc_rpg_dude', 'first'))>> blade through the final enemy you have but a moment to catch your breath before hearing a sound from the next room. The door ahead swings open...
<<case "bard">>
Not wanting to draw attention with your music you wield your axe in the conventional sense as the party enters pitched battle with the foes beyond. A few lucky rolls see you take out a couple monsters, but at the cost of some damage yourself. Though you weather the hits significantly worse than the slender juggernaut of an undead warrior woman at your side, but you and <<=setup.getNpcName('npc_rpg_dude', 'first')>> barely manage to hold the line as you finish battling the room full of monsters.<br>
<br>
You hear sound from the next room and the door opens...
<<case "druid">>
The barracks is crowded and it is a challenge for even your lithe feline form to manoeuvre amidst the flying spells and swinging swords. You try to work flanking manoeuvres with the party's tank but it isn't long before <<=setup.getNpcName('npc_rpg_dude', 'character')>> is forced to unleash the full power of her sword in a chain lightning attack, your own fur scorched a bit as you catch the edge of it.<br>
<br>
Low on hit points the party looks around to make sure the last of your foes are defeated only to hear a sound coming from the next room as the door ahead swings open...
<<case "succubus">>
<<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> gaze narrows at your refusal of her order only for a smile to spread across her face... which is somehow even scarier.<br>
<br>
"@@.npc_rpg_warlock;Oooh, a feisty one... that can be fun too. I invoke the power of your bonds to make my words your law.@@"<br>
<br>
"@@.npc_technician;Roll to resist@@" announces the DM and you cast the die.<br>
<br>
"One..." you whisper nervously as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> grins even wider.<br>
<br>
"@@.npc_rpg_warlock;Critical fail!@@" She gloats, "@@.npc_rpg_warlock;now you're REALLY mine! But... I think we should make this a bit more fun. Come over here!@@"<br>
<br>
Sliding off her boyfriend's lap she motions towards the floor in front of her feet.<br>
<br>
Though nervous you feel somehow... safe? It is, after all, just a game so why not have a bit of fun? You do as she commands, kneeling at her feet.
<<if $scene.collared == 'none'>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
She produces a leather dog collar from her purse.
<<else>>
She produces a leather collar from her purse... a collar that bears a striking resemblance to the one your character was wearing in the concept art you saw earlier.
<</if>>
Buckling it around your neck she clips a leash to the ring at its front and then leans down to whisper in your ear.
<<elseif $scene.collared == 'locked'>>
"@@.npc_rpg_warlock;Already enslaved, are we?@@" She states noting your locked-on neck adornment. "@@.npc_rpg_warlock;How lovely! Well I hope your owner doesn't mind that I'm taking charge for a bit.@@"<br>
<br>
<<if $npc_technician.relationship.her_role == "dom">>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> winks at <<=setup.getNpcName('npc_technician', 'first')>> who gives an approving nod in return.<br>
<br>
The subtle trade of your submissive self has you biting your lip and squirming with arousal.<br>
<br>
<</if>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> clips a leash to the front of your collar then leans down to whisper in your ear.
<<else>>
Delicately removing your current collar she replaces it with
<<if $npc_technician.flags.rpg_campaign.session > 7>>
a leather collar that bears a striking resemblance to the one your character is illustrated as wearing.
<<else>>
a leather dog collar she has produced from her purse.
<</if>>
Buckling it around your neck she clips a leash to the ring at its front and then leans down to whisper in your ear.
<</if>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
"@@.npc_rpg_warlock;There, that should help you better get into character, and keep you mindful of the hierarchy between us, hmm?@@"
<<else>>
"@@.npc_rpg_warlock;Not quite as nice as the one you're wearing in-game but it should help you stay in character and keep you mindful of the hierarchy between us, hmm?@@"
<</if>>
She laughs, rubbing your side with one booted foot as you obey her previous in-game order, your character sneaking into the barracks.<br>
<br>
Feeling a bit meek you review your character sheet and choose to cast a spell of mass seduction. Rolling mediocre you manage to turn a couple of your enemies, the rest of the party rushing into the room to join the melee as the monsters fight amongst themselves.<br>
<br>
Even with the help of your turncoats it is a difficult battle, and by the time the last foe is struck down you're all five running a tad low on spells and hp, your ensourced minions long defeated.<br>
<br>
There is a sound coming from the next room as the door ahead swings open...
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
"@@.npc_technician;Striding through the doorway is the cloaked summoner. You catch the faintest whiff of brimstone as he is joined by a freshly conjured hulking demonic dire wolf. He prepares to cast a spell as his pet leaps forward to attack <<=setup.getNpcName('npc_rpg_warlock', 'first')>>.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_4' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: take action to aid the party in the barracks encounter
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<include rpg_choker_check>>
<<addItem "rpg_succubus_leash">>
<<wearItem $player $now "rpg_succubus_leash" true>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "rpg_succubus_collar">>
<<wearItem $player $now "rpg_succubus_collar" true>>
<<case 'worn'>>
<<set $scene.collared = "worn">>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $player $now true>>
<<addItem "rpg_succubus_collar">>
<<wearItem $player $now "rpg_succubus_collar" true>>
<</switch>>
<<else>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "bondage_collar">>
<<wearItem $player $now "bondage_collar" true>>
<<case 'worn'>>
<<set $scene.collared = "worn">>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $player $now true>>
<<addItem "bondage_collar">>
<<wearItem $player $now "bondage_collar" true>>
<</switch>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Preparing your most potent sleep spell, overloaded, you hold your breath and roll the dice as your character steps into the room and casts.<br>
<br>
The die bounces twice as the whole party holds their breath. All eyes are on the implement of fate as it rolls and rolls and comes to a rest - critical success! The room breaks out with a collective shout of excitement.<br>
<br>
"@@.npc_technician;Woo!@@" <<=setup.getNpcName('npc_technician', 'first')>> cheers, caught up in the moment before coughing and resuming her normal Dungeon Mistress demeanour. "@@.npc_technician;Alright, the foes in the room beyond barely have a chance to notice the door opening before your potent spell washes over them. Almost as one they slump to the ground, weapons slipping from their fingers as they crumple into deep slumber.@@"<br>
<br>
"@@.npc_rpg_warlock;Alright! That's how we do it, lets go ice that big bad!@@"<br>
<br>
"@@.npc_barista;Nice roll! Circumventing an estimated CR plus two encounter, that's good for at least 1187 xp, you're gonna ding tonight for sure!@@"<br>
<br>
<<printThought $player "Is she some sort of weird statistical savant? The contrast with her airheadedness is kind of weird...">><br>
<br>
Bypassing the comatose barracks the party heads forth for the final boss battle, fresh and ready.
<<case "elf_priestess">>
ERROR: impossible, active option for priestess happens later!
<<case "bard">>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> kicks down the door as you follow a half-step behind, the melody of your magical guitar sending waves of fear through the surprised monsters of the barracks as battle commences.<br>
<br>
Like a choreographed music video sword and spell fly free. You roll like a <<getWordGod $player>>, stacking boosts with <<=setup.getNpcName('npc_barista', 'nickname')>> as your empowered allies strike fast and true and your foes struggle to fight back, disorganised and clumsy. It isn't more than a few rounds before the five of you stand victorious and you finish off with a triumphant riff to pump people up for the next encounter, none of you having sustained more than minimal damage in the one-sided fight.
<<case "druid">>
Shoulder to shoulder with <<=ps(setup.getNpcName('npc_rpg_dude', 'first'))>> comparatively diminutive undead warrior you charge into the barracks, her shield and your hulking ursin form bowling through the first line of the enemy as spells fly past in either direction.<br>
<br>
In the thick of melee your battle-rage has your hide shrugging off sword and axe with ease, each blow of your mighty paw smashing another monster as the party swiftly routes and destroys the forces arrayed against you.
<<case "succubus">>
Striding into the room with confidence the monsters inside pause in shock to stare at your alluring and enticing demonic form. Activating your lust powers you move to the middle of the room and make a roll for mass seduction.<br>
<br>
"@@.npc_technician;Success, let's see...@@" She checks a chart and makes a few rolls behind her screen before looking back up. "@@.npc_technician;Alright. All but a handful of the monsters in the barracks are under your thrall to one degree or another, what are you going to do now?@@"<br>
<br>
Activating one of your other powers you start role-playing teasing your enraptured admirers, egging them on with a wink, a kiss, playing with your breasts and cunt lewdly as you ask who among them wishes to join your crew for a share of booty...<br>
<br>
It isn't long before the inspired lusts start to take a darker turn, the monsters arguing amongst themselves as they rush to be the first to sample your fruits.<br>
<br>
Lying back and spreading your legs you are soon at the centre of a gang-bang, using your parasitic powers to drain your partners even as they are compelled to fuck you with every last ounce of their strength. Reveling in the sexual energy your restraints glow as they struggle to hold you to the material plane.<br>
<br>
Any thought of taking advantage of this moment of strength to escape is ignored in favour of embracing the debauchery. Reaching out mentally you sow chaos amongst those monsters who have not yet been subdued by your vampiric love-making. Soon they are drawing weapons, fighting with all they have for the right to be your next lover-victim.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> weaves a scene that has all four of you squirming in their seats, the culmination of which sees you standing triumphant, every occupant of the barracks either drained or dead at one another's hand as the rest of the party finally walks into the room.<br>
<br>
"@@.npc_rpg_warlock;Wow, I didn't realise you had that in you!@@" <<=setup.getNpcName('npc_rpg_warlock', 'first')>> remarks with a grin. You are uncertain if she is speaking in character or not. "@@.npc_rpg_warlock;Role-playing of that quality deserves a reward! Scooch on over here!@@"<br>
<br>
"@@.npc_barista;Yea, that was like, so hot! But next time I wanna be part of it! Did you know that shibari technically counts as a bardic art?@@"<br>
<br>
Sliding off her boyfriend's lap onto the couch <<=setup.getNpcName('npc_rpg_warlock', 'first')>> motions for you to kneel in front of her. Heart pounding you do as she commands.
<<if $scene.collared == "none">>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
She produces a leather dog collar from her purse.
<<else>>
She produces a leather collar from her purse... a collar that bears a striking resemblance to the one your character was wearing in the concept art you saw earlier.
<</if>>
Buckling it around your neck she clips a leash to the ring at its front and then leans down to whisper in your ear.
<<elseif $scene.collared == "locked">>
"@@.npc_rpg_warlock;Already enslaved, are we? How lovely, well I hope your owner doesn't mind that I'm taking charge for a bit.@@"<br>
<br>
<<if $npc_technician.relationship>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> winks at <<=setup.getNpcName('npc_technician', 'first')>> who gives an approving nod in return.<br>
<br>
The subtle trade of your submissive self has you biting your lip and squirming with arousal.<br>
<br>
<</if>>
She clips a leash to the front of your collar then leans down to whisper in your ear.
<<else>>
Delicately removing your current collar she replaces it with
<<if $npc_technician.flags.rpg_campaign.session > 7>>
a leather collar that bears a striking resemblance to the one your character is illustrated as wearing.
<<else>>
a leather dog collar she has produced from her purse.
<</if>>
Buckling it around your neck she clips a leash to the ring at its front and then leans down to whisper in your ear.
<</if>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
"@@.npc_rpg_warlock;There, that should help you better get into character...@@"
<<else>>
"@@.npc_rpg_warlock;Not quite as nice as the one you're wearing in-game but you more than earned it.@@"
<</if>>
She rubs a booted leg against your side as you kneel at her feet. The weight of the leash is a potent, seductive reminder of what sort of character you're "role playing", yet you feel like it is all in good fun, that even if things have taken a turn for the risque, you are safe and among friends, at no risk of anything save more harmless, sexy fun.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
Bolstered by success the party moves forward, opening the door into the next room to reveal the summoner chanting over a large portal that reeks of brimstone.<br>
<br>
Turning in surprise at your rapid defeat of his minions he lets out a final cry in some fel tongue, a great demonic dire wolf leaping from the portal to attack you and your compatriots. The portal collapses as the summoner readies another spell.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_4' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: defeat the evil summoner to finish first RPG session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num]>>
Facing your foe you try to end the fight early with another sleep spell but he has enough magic resistance to easily shrug it off.<br>
<br>
"@@.npc_technician;Come on, you didn't think it would be that easy, did you?@@"<br>
<br>
You shrug, it was worth a shot. Fortunately your efficient neutralization of the barracks has the rest of the party fresh and raring to go.<br>
<br>
With a berzerker howl <<=setup.getNpcName('npc_maid', 'character')>> leaps into the fray, spectral wings glowing in her trail in echo of her celestial heritage as she bounds over the hound swinging a weapon in each hand. She severs the summoner's arm with a single blow before rolling out and readying her next attack.<br>
<br>
Spells fly between the other casters as <<=setup.getNpcName('npc_rpg_dude', 'character')>> engages the demonic wolf head on. You cast fireballs where you can as <<=setup.getNpcName('npc_barista', 'character')>> bolsters your concentration with a bardic song. Before long the demon blinks away in a puff of fire, returning to its infernal home. Shortly later the summoner falls to the combined four person onslaught.<br>
<br>
Triumphant the four of you quickly set to that most important of role-playing activities: checking for loot.
<<else>>
Already tired from the long fight the party is quickly on the defensive. <<=setup.getNpcName('npc_rpg_dude', 'character')>> leaps into the path of the demonic hound, her undead durability pushed to the limit absorbing the impact.<br>
<br>
On the back foot you and <<=setup.getNpcName('npc_rpg_warlock', 'character')>> manage to drive the beast back long enough for <<=setup.getNpcName('npc_rpg_dude', 'character')>> to chug a potion and get back to her feet.<br>
<br>
Shrugging off spells thanks to some clutch bardic songs <<=setup.getNpcName('npc_maid', 'character')>> goes full berzerker, trailing spectral angelic wings as she smashes into the summoner, breaking his concentration with her first blow then following up with a second than cuts him in twain.<br>
<br>
With its master defeated the fel hound lets out a final evil howl before disappearing in a puff of smoke. The four of you almost collapse in exhaustion, taking time to recover and bandage your wounds before searching the area for loot.
<</if>>
<br><br>
With the big bad defeated the slumbering minions in the barracks disappear, returned to the plane from whence they were summoned.<br>
<br>
Searching for loot you find some gold, a few minor magical items and the McGuffin that the party had been tasked with retrieving. Doing a final pass through the barracks lest you missed anything of value you stumble upon a hidden chest, <<=setup.getNpcName('npc_technician', 'first')>> flipping open a book to the loot table page and rolling before announcing what you've found.<br>
<br>
"@@.npc_technician;You find a broad leather belt, well-made but otherwise unremarkable in design it bears the unmistakable imprint of magic.@@"<br>
<br>
You quickly look through your character sheet for an identification spell only for <<=setup.getNpcName('npc_rpg_warlock', 'character')>> to offer her assistance. Noting the roll <<=setup.getNpcName('npc_technician', 'first')>> hands her a note. <<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles before passing along the information.<br>
<br>
"@@.npc_rpg_warlock;It's a somewhat specialized item, designed to make men swoon. I think you would make the best use of it.@@" She announced with an even wider smile.<br>
<br>
You're a bit curious at her cryptic phrasing but quickly thank her. With your specialization in somniumic effects you figure the bonus to spells would be welcome and announce that you are putting it on.<br>
<br>
The laughter that you suddenly realise your five friends had all been holding in suddenly bursts forth. It takes almost a full minute before <<=setup.getNpcName('npc_technician', 'first')>> manages to compose herself enough to explain things.<br>
<br>
"@@.npc_technician;Alright. As you buckle the girdle around your waist you feel a strange tingle go through your body. Transformative magic washes over you and the world appears to slightly shrink. Your robes hang looser and your balance feeling subtly off by the time the feeling fades and you try to move.@@"<br>
<br>
<<printThought $player "Wait... what?">><br>
<br>
"@@.npc_technician;Examining yourself you find your fingers are much more slender and delicate than you remember. Looking down you make another startling realization - though your body is still toned it is not quite as bulky as it was... and you appear to be sporting a large pair of breasts on top of what was previously just pectoral muscles.@@"<br>
<br>
With characteristic bluntness <<=setup.getNpcName('npc_maid', 'first')>> cuts in. "@@.npc_maid;It was a girdle of masculinity/femininity, your character is female now.@@"<br>
<br>
"@@.npc_rpg_warlock;If only such transformation was so easily enacted in real life!@@"<br>
<br>
"@@.npc_technician;Here here! Anyway, I swear this was a random result and not planned... I guess the fates just have a special liking for you, eh? Anyway your only stat changes are that your Appearance has gone up three points, so you now look a bit better than average, even in spite of your half-orc racial penalties. The effects remain after you remove the girdle which seems to have have now lost all of its magic.@@"<br>
<br>
<<printThought $player "Even in a fantasy world it seems like I can't get away from this sort of thing...">>
<<if setup.getTotalValue("feminization") > 10>>
<br><br>
That thought plunges you into a world of your own imagination. What if it really was just that easy to flip genders? Certainly modern medical technology is potent but it still isn't equal to pure magic turning you into a beautiful girl... You reflect on your journey to date; maybe the slow route was what you needed to accept who you were but still... the idea of an instant transformation into feminine perfection is quite an enticing one...<br>
<br>
You realise you've kind of tuned out the game as you enjoyed your fantasy, trying to refocus on what's going on with the party.
<</if>>
<<case "elf_priestess">>
Even with you slinging every heal you have the fight is a pitched one, more than once turning on a key die roll with all five of your characters knocking on deaths door by the time you finally bring down the summoner and banish his fel hound. <<=setup.getNpcName('npc_maid', 'character')>>, in glorious full berzerker form, lands the final blow, her axe striking swift and true with an extra bonus from <<=ps(setup.getNpcName('npc_barista', 'character'))>> bardic song to near chop the man in half.<br>
<br>
With the big bad defeated the minions in the barracks disappear, their corpses returned to the plane from whence they were summoned.<br>
<br>
Searching for loot you find some gold, a few minor magical items and the McGuffin that the party had been tasked with retrieving previously. Securing your gear the party prepares to make the journey back up out of the dungeon and return to town.<br>
<br>
Out of spells you look through your character sheet to see if there's anything else you could do to help the party. As beat up as you are it'd be pretty risky to head back up through the dungeon lest there are any lurking monsters you missed, and setting up camp in the depths seems equally risky.<br>
<br>
You notice a ritual ability named FITH that lets you full heal and recover half of your spellslots all at once. Figuring that it's a typo and it's meant to say faith you announce that you're going to enact the ritual.<br>
<br>
The entire group falls silent before <<=setup.getNpcName('npc_maid', 'first')>> coughs and gives an explanation to resolve your suddenly mounting confusion.<br>
<br>
"@@.npc_maid;So, um... You're a priestess of the divine three - FITH means Fucked In Three Holes. Using that ability more or less means enlisting the rest of the party to gang-bang you...@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> grins gleefully wide while looking almost... jealous? <<=setup.getNpcName('npc_rpg_warlock', 'first')>> just smiles and stares at you as her boyfriend shakes his head in amusement.<br>
<br>
"@@.npc_technician;So... like, I guess I should have been a bit more up-front that our games can get a little, um, risque. If you want we can just handwave and say you used your holy implements to take care of yourself, but then the rest of the party won't get the full-heal bonus that comes from participation in the ritual...@@"
<<case "bard">>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num]>>
Still riding high from the previous fight the party roars into battle like they are performing an encore.<br>
<br>
Undead warrior clashing with demonic wolf, fel magics streaming between warlock and summoner as <<=setup.getNpcName('npc_maid', 'character')>> rages through the fight trailing the spectral wings of her celestial heritage; all with the backing accompaniment of your shredding guitar and <<=ps(setup.getNpcName('npc_barista', 'character'))>> lewd vocals would make for a helluva metal album cover were there an artist around to capture it.<br>
<br>
Beaten steadily back <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_barista', 'character')>> pile up the hits, sword and axe and lightning striking the demon wolf repeatedly until it disappears in a cloud of fire and brimstone, tail tucked as it returns to the infernal realms.
<<else>>
Desperate to do something to help the party against these new enemies, and not wanting to put your beaten up character in melee range of the oversized demonic dire wolf, you flip through your character sheet to find a song of bolstering that you hope will help.<br>
<br>
The fight is a close one, <<=setup.getNpcName('npc_rpg_dude', 'character')>> getting rag-dolled across the room by the fel hound before <<=setup.getNpcName('npc_maid', 'character')>> manages to find an opening and bring down the summoner, her blow strengthened by <<=ps(setup.getNpcName('npc_barista', 'character'))>> bardic song.<br>
<br>
With its master defeated the wolf disappears in a cloud of brimstone and fire, returned to its infernal home to leave the party barely victorious.
<</if>>
<br><br>
Searching for loot you find some gold, a few minor magical items and the McGuffin that the party had been tasked with retrieving from the dungeon. Securing your gear and patching your wounds the party prepares to make the journey back up out of the dungeon and return to town.
<<case "druid">>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num]>>
You let out a roar and leap towards the demonic wolf. Slamming into each other you tumble to the ground, a clawing biting ball of fur and fury.<br>
<br>
"@@.npc_technician;Alright, roll to control frenzy.@@"<br>
<br>
You grab a die and toss it across the table only for it to come up a two - not a crit fail but as close as you can get.<br>
<br>
"@@.npc_technician;Ok, you're in the full throws of uncontrolled frenzy now. That means you get a bonus to strength and stamina and we check the "bestial action" table to see what you do.@@"<br>
<br>
You roll again and she checks the table.<br>
<br>
"@@.npc_technician;With your increased strength you quickly overpower the wolf, but just defeating it is far from your priority. Holding it down you mount the creature; literally. Roaring in dominance your engorged ursin cock plunges into its hot lupine hole.@@"<br>
<br>
With the utter subjugation of his minion the summoner is left to face the rest of the party four on one and it is a matter of a couple of turns before they succeed in beating down his remaining magical protection and dispatching him.<br>
<br>
With its master gone the wolf disappears in a puff of fire and brimstone. You hump the air for a moment in frustration before the frenzy fades and you return to humanoid form.
<<else>>
<<=setup.getNpcName('npc_rpg_dude', 'character')>> manages to block the beast before it lays claw or teeth upon any of the squishier party members but then all five of you are fighting for your lives.<br>
<br>
For your part you attempt to leap onto the creature's back but are thrown off without managing to do more than scratch and anger it futher and it leaps onto you in attack.<br>
<br>
In a battle frenzy of her own <<=setup.getNpcName('npc_maid', 'character')>> dashes past, distracting the beast with a run-by attack before leaping towards its master. Trailing spectral angelic wings behind her she crashes axes first into the summoner, the caster distracted by his magical duel with <<=setup.getNpcName('npc_rpg_warlock', 'character')>> leaving an opening for the barbarian to chop and hack at him, her blows guided by <<=ps(setup.getNpcName('npc_barista', 'character'))>> bardsong.<br>
<br>
On your last few hp the demonic wolf comes in for another bite only to disappear in a puff of fire and brimstone, banished back to its infernal home by the death of its master.<br>
<br>
Catching your breath you lick your wounds as the rest of the depleted party regroups.
<</if>>
<br><br>
Searching for loot you find some gold, a few minor magical items and the McGuffin that the party had been tasked with retrieving from the dungeon. Securing your gear the party prepares to make the journey back up out of the dungeon and return to town.
<<case "succubus">>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num]>>
Thanks to your demonically lusty nature your gangbang has you effectively turbo-charged, almost pulsing with power as you join the party in battle.<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'character')>> breaks off to engage the demonic wolf as the rest of you charge the summoner. With a wave of his hand he attempts to dismiss you. The pull of the infernal realms tugs at you but the magic of your bindings holds you securely to the mortal plane.<br>
<br>
With a roar of rage <<=setup.getNpcName('npc_maid', 'character')>> leaps into action, almost hanging in the air as she trails spectral wings echoing her parentage before crashing into the summoner from above.<br>
<br>
His defences hold against her mighty blow but it jars his concentration, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> following up with a spell of ennervation. Staggering slightly he is unable to defend against the follow-up attack, beaten back by <<=ps(setup.getNpcName('npc_maid', 'character'))>> berzerker onslaught as <<=ps(setup.getNpcName('npc_barista', 'character'))>> bardic song bolsters your saving throws against his spells.
<br>
A final blast of magical power hits the summoner and he crumples, his singed robe going limp as his dead body falls to the ground. Without its master to hold it to the plane the demonic wolf lets out a final cry before disappearing in a burst of flame and brimstone.
<<else>>
<<=setup.getNpcName('npc_rpg_dude', 'character')>> manages to intercept the beast before it lays claw or teeth upon <<=setup.getNpcName('npc_rpg_warlock', 'character')>> but then all five of you are fighting for your lives.<br>
<br>
Compelled to come to her defence by your magical bindings you act as a demonic shield for the summoner's spells as <<=setup.getNpcName('npc_rpg_warlock', 'character')>> fires back with magic of her own.<br>
<br>
Somewhat cloaked by a distracting bardic song from <<=setup.getNpcName('npc_barista', 'character')>> <<=setup.getNpcName('npc_maid', 'character')>> exerts the full force of her barbaric rage ability in an epic leap attack that sees her sail through the air trailing spectral wings in echo of her heritage. Her power attack landing hard, fast and true she almost cuts the summoner in half, the evil mage crying out a final death rattle as he falls to the floor.<br>
<br>
With the summoner's defeat the demonic wolf lets out a final hair-raising howl before disappearing back to the infernal realms in a puff of smokey brimstone.<br>
<br>
"@@.npc_rpg_warlock;Not bad@@" notes <<=setup.getNpcName('npc_rpg_warlock', 'first')>>, patting your head, the leash swaying from your collar to remind you of your restraint.
<</if>>
<br><br>
The party starts to divvy up the loot - gold, some minor magical items and a McGuffin that the party had been tasked with retrieving when <<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles and fingers your leash. "@@.npc_rpg_warlock;I think you've gotten reward enough already, my pet, I'll be keeping your share.@@"
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.character == "elf_priestess">>
[<<moveTo 'event_rpg_campaign_session_1_5_priestess_active' 'Stay in character and ask the rest of the party to use your body that you might heal them.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_5_priestess_passive' "Doing something like that with relative strangers... even just in game seems a bit much." $scene.stepLength>>]
<<else>>
The party uneventfully travels back up out of the dungeon, making camp to end the session once you're at a safe distance.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_2' 'Continue.' 0>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_1_6' 'Finish the session.' $scene.stepLength>>]
<</if>>
<</if>>
</div>/*#
#desc: slut it up to heal the party at the end of the session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
Blushing a little you "role play it out" offering the use of your body to your fellow characters.<br>
<br>
First to spread her legs to "help" with the spell is <<=setup.getNpcName('npc_rpg_dude', 'character')>>. You crawl between her thighs to lick her hot snatch, informed that, despite her undead nature she is quite "functional" downstairs.<br>
<br>
You part your robe to reveal your lower holes.<br>
<br>
Sliding underneath your body <<=ps(setup.getNpcName('npc_rpg_warlock', 'character'))>> cock slides into your cunt, filling you with demonic warmth as her lips tease your full breasts.<br>
<br>
Your surprise at finding out that the sexy female warlock was "packing heat" is redoubled as <<=setup.getNpcName('npc_maid', 'character')>> slides a thick cock of her own into your waiting ass, all three of your holes in use sexually servicing your partymembers as the magic of the ritual swells.<br>
<br>
Enjoying the fun <<=setup.getNpcName('npc_barista', 'character')>> jumps in with "mood music," singing a song both bawdy and inspiring that extols the wonder of being being used in every hole at once as she switches off between shoving her delicate elvish cock down your throat then into <<=setup.getNpcName('npc_rpg_dude', 'character')>> and then back again until there is a whole web of cum, pussy juice and drool linking the three of you.<br>
<br>
Confirming your lusty debauchery in-game you glance around the room, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> winks at you and shifts to display a tell-tale bulge between her legs as you realise that though four of you are quite feminine in appearance, every member of this little RPG troupe, save <<=setup.getNpcName('npc_barista', 'character')>>, are in possession of penises.<br>
<br>
Glancing between your fellows you find yourself laughing a bit at the fact that <<=setup.getNpcName('npc_rpg_warlock', 'first')>>, the only male in real life was <<if (setup.getTotalValue("feminization") > 5) || ($player.flags.fem_style.name != "")>>(prior to your joining the group) <</if>>also playing the only conventionally female genitalia'd character in-game.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> reigns in the little verbal fuck-fest you and the other players have going before anyone gets TOO hot and bothered in real life, informing you that your successful ritual has not only restored your spells but fully healed and rejuvenated the whole party.<br>
<br>
"@@.npc_barista;Wow, that was like... so hot! I think my next character is totally going to be a priestess...@@"<br>
<br>
Healed and restored the group confidently heads back up through the dungeon, having an uneventful trip as you make your way up, out and a short distance away to find a safe location to set camp for the night as the session draws to a close.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_2' 'Continue.' 0>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_1_6' 'Finish the session.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: don't slut it up to heal the party at the end of the session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = false>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
Other than learning that the three "holy implements" listed in your inventory are a trio of enchanted dildos the act of performing your "ritual" is handwaved as your spells are restored and you spend some time healing the party back into fighting shape.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
Though it is handwaved in-game the thought of fucking yourself at once, of feeling not just two but three cocks penetrating you... The fantasy has you shuddering in your seat, wishing you were your avatar, getting pounded and filled in every direction...<br>
<br>
Blinking to attention you realise that the session is continuing on without you and you try to re-focus on the game.<br>
<br>
<</if>>
With that out of the way the party uneventfully travels back up out of the dungeon, making camp to end the session once you're at a safe distance.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_2' 'Continue.' 0>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_1_6' 'Finish the session.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: finish first session and go home
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<if $scene.collared != "locked">>
<<removeItem $player $now "bondage_collar" true>>
<<deleteItem $player $now "bondage_collar">>
<</if>>
<<removeItem $player $now "rpg_succubus_leash" true>>
<<deleteItem $player $now "rpg_succubus_leash">>
<<useClothSetPop 'scene' $player $now>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> distributes xp and then it's time for everyone to start packing things up. They all thank <<=setup.getNpcName('npc_technician', 'first')>> for running the session and you for joining in.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> removes your <<if $scene.collared>>collar<<else>>leash<</if>> and plants a quick peck on your cheek.<br>
<br>
"@@.npc_rpg_warlock;Until next time! Oh, you just make the best sissy demon slave...@@"<br>
<br>
Your eyes flick towards her boyfriend but <<=setup.getNpcName('npc_rpg_dude', 'first')>> appears merely amused without displaying the slightest hint of jealousy.<br>
<br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num]>>
"@@.npc_technician;Great job tonight, you really jumped in there and participated. I know it can be a bit intimidating.@@"<br>
<br>
"@@.npc_rpg_dude;Yeah, you really helped out and played your character well, I dunno if we would have won that last fight without your assistance.@@"<br>
<br>
The other players nod their assent and you blush at the compliments.
<<else>>
"@@.npc_technician;Not bad for a first game, I hope you had fun though I think you'd enjoy it even more if you were more involved.@@"<br>
<br>
"@@.npc_rpg_warlock;Yea, we rolled up a pretty solid character for you, that final fight would have definitely been less fraught with you taking a more active role.@@"<br>
<br>
Despite the admonition it seems everyone enjoyed your company, more just concerned that you don't feel left out.
<</if>>
<br><br>
The others filing out of the room you're the last to go, <<=setup.getNpcName('npc_technician', 'first')>> throwing her arms around you in a hug and making you promise that you'll be back for the following session.<br>
<br>
At the threshold you hesitate, a part of you wanting to stay, but you're too slow, already out the door and alone in the hallway as the lock softly clicks behind you.<br>
<br>
<<printThought $player "Maybe next time...">><br>
<br>
Feeling a bit tired as you realise just how late the game ran you quickly head for the apartment elevator to return home.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 1200>>]
</div>/*#
#desc: arrive/start second campaign session (orcs)
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 1>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<include rpg_choker_check>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "rpg_succubus_collar">>
<<wearItem $player $now "rpg_succubus_collar" true>>
<<case 'worn'>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $player $now $scene.collar true>>
<<addItem "rpg_succubus_collar">>
<<wearItem $player $now "rpg_succubus_collar" true>>
<</switch>>
<<addItem "rpg_succubus_leash">>
<<wearItem $player $now "rpg_succubus_leash" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
You arrive at her apartment to find half the party still yet to arrive.<br>
<br>
"@@.npc_technician;Come on in! Everyone else should be showin' up soon, <<=setup.getNpcName('npc_maid', 'first')>> is on closing shift and so we'll be starting a few minutes late.@@"<br>
<br>
"@@.npc_rpg_dude;So what'd you spend your xp on from the last session?@@"<br>
<br>
You confess that you hadn't actually remembered to allocate xp and he motions you to come over to the couch where he and <<=setup.getNpcName('npc_technician', 'first')>> give you advice on what would best improve your character.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
You've just finished up when <<=setup.getNpcName('npc_rpg_warlock', 'first')>> appears carrying a large bag.<br>
<br>
Sporting a smile that has you feeling more than a little nervous she heads straight towards you, dropping the bag next to her booted feet and then pulling an impressive leather collar out from it.<br>
<br>
"@@.npc_rpg_warlock;Time to get into character!@@" She says with a grin as you recognise that the collar looks nigh identical to the one depicted on your character portrait.<br>
<br>
<<if $scene.collared == 'none'>>
Large and thick it rests on your shoulders, feeling quite stout but relatively comfortable
<<else>>
It fits over and around your current collar, thick, heavy leather resting on your shoulders for a quite severe look. It's fairly comfortable
<</if>>
and definitely makes you feel submissive, especially when she padlocks a matching leash to the front with a click.<br>
<br>
<<if $scene.collared == 'none'>>
"@@.npc_rpg_warlock;There we go, oh I don't know why you don't wear a collar all the time. It looks so natural and proper around your neck!@@"
<<else>>
"@@.npc_rpg_warlock;There we go, oh I'm so glad it fits, I can see why you normally wear a collar, your neck was meant for it, and this way is like, twice as good!@@"
<</if>>
<<else>>
You've just finished up when <<=setup.getNpcName('npc_rpg_warlock', 'first')>> appears carrying a bag.<br>
<br>
"@@.npc_rpg_warlock;Can't believe I forgot the snacks!@@" She notes with a chuckle, placing a bag of chips, and other munchies on the table.<br>
<br>
"@@.npc_barista;Yay, popsickles!@@" She shouts with glee, grabbing a long pink popsickle and practically deep-throating the thing.
<</if>>
<br><br>
A minute later the last of the group arrives, <<=setup.getNpcName('npc_maid', 'first')>> greeting everyone with a wave before flopping into her designated chair. From the look of things today was quite an exhausting shift.<br>
<br>
"@@.npc_technician;Alright, let's get started! When we cut last week you had defeated the summoner and were on your way back to return the jewel of power he had stolen from the king. Though you post watches nobody is disturbed during the night and you quickly break camp in the morning and head on your way.@@"<br>
<br>
"@@.npc_technician;Making your way to the road you don't run into any other travellers - the predation of the summoner and his monsters having greatly depressed trade in the area. It is mid-afternoon when you are suddenly beset by a tribe of orcs!@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_1' 'Roll for initiative!' 1200>>]
</div>/*#
#desc: attacked by orcs
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
You don't roll all that great on your initiative, the rest of the party going first as they enact what are obviously fairly practiced battle tactics. The dead and divine duo of <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> moving to the front as <<=setup.getNpcName('npc_rpg_warlock', 'character')>> and <<=setup.getNpcName('npc_barista', 'character')>> falling back to sling spells and songs.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You try for a sleep spell since a fireball at this range would cause friendly fire but it turns out that the orcs have a racial bonus to their saves and you just can't seem to pierce it. Combined with your ineffectiveness a few unlucky rolls soon have the party on the back foot, what was presumably a generic random encounter suddenly a real fight for survival.<br>
<br>
A particularly nimble orc manages to get past your front lines and, in an attempt to dodge, you end up getting knocked to the ground, your robe parting to reveal your feminine form.<br>
<br>
Making a couple quick rolls <<=setup.getNpcName('npc_technician', 'first')>> announces that the orcish band has suddenly broken off, retreating just out of range as their leader steps forward.<br>
<br>
"@@.npc_technician;You are outmatched, travellers! But I will spare your lives, and your freedom, if yon lovely maiden would share but a night in my tent!@@"<br>
<br>
"@@.npc_barista;By my calculations we've only got a 22.7% chance of avoiding a TPK and without some real hot dice there's a 48% chance someone could be rollin' up a new character tonight...@@"<br>
<br>
You're still a bit baffled where the ditz is getting her numbers but from the look of concern on the rest of the groups faces you have a sinking feeling they're probably accurate.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' '"Sacrifice" yourself for the sake of the party.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Take this opportunity to unleash a fireball on the clustered orcs.' $scene.stepLength>>]
<<case "elf_priestess">>
Rather than commencing battle the orcs stop just out of range as what looks to be their chieftain steps forward.<br>
<br>
"@@.npc_technician;We do not wish to fight, we ask only that your priestess joins us in prayer to bless our clan, for which we will grant you safe passage through our territory.@@"<br>
<br>
You can't help but think of the "ritual" you performed as you contemplate the otherwise simple request.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' 'Agree to "pray" with them.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Refuse their offer.' $scene.stepLength>>]
<<case "bard">>
You step forward to play a bardic song only for the orcs to start shouting in excitement.<br>
<br>
Making a sense motive check <<=setup.getNpcName('npc_rpg_warlock', 'character')>> points out that they don't seem to be hostile, <<=setup.getNpcName('npc_barista', 'character')>> chipping in after casting a bardic spell of tongues that they appear to be calling out your character's name.<br>
<br>
"@@.npc_technician;As you listen closely you recognise their chant as a somewhat off-key version of one of your most famous songs; it appears that they're actually fans! They're shouting for you to come back to their camp to celebrate with a night of song and festivities.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' 'Agree to perform a concert for the orcs.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Inform your "fans" that you do not have time to spend the night.' $scene.stepLength>>]
<<case "druid">>
As the rest of the party engages the main orc force you zero in on what looks to be their chief. You make your roll to "unleash the beast" as you shift into bear form, nailing a huge modifier to your toughness and power while barely succeeding on the "control" roll.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' 'Surrender to the beast for even more power and charge forward to try to take out their leader.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Play it safe and hold onto control as you stick with the party.' $scene.stepLength>>]
<<case "succubus">>
"@@.npc_rpg_warlock;Alright, their leader is hanging back a bit, you need to flank them and then mind control him to flee - the rest of them aren't liable to stick around if their chief turns coward.@@"<br>
<br>
Looking at the number of orcish miniatures on the other side of the board separating from the party seems dangerous... but, on the other hand, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> seems like a pretty experienced player and you doubt she'd intentionally give you an order that would get you killed.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' 'Do as she says and split off from the group.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Refuse her order and stick with the party.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: do something "active" to defuse or defeat the situation with the orcs
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_ankle_cuffs">>
<<wearItem $player $now "rpg_succubus_ankle_cuffs" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You agree to the chieftain's demands. The orcs are suddenly all very friendly, inviting the party back to their camp for a big meal and celebration. You are seated in a place of honor beside the chieftain, who you learn is named "Tog, The Three Handed Club" (which is odd given that he's wielding a zweihander). Raising a toast to extol your beauty he places a tiara on your head that magically has your hair growing out long and full and beautiful.<br>
<br>
The party takes advantage of the opportunity to rest and recuperate a bit. You aren't sure if it's just a bit of <<=ps(setup.getNpcName('npc_technician', 'first'))>> own dorky awkwardness or intentional characterization but the chieftain's flirting is kind of cute, like something out of a cheesy high school anime.<br>
<br>
The rest of the party staying behind to enjoy the party there is a final cheer from the orcs as you "retire" to Tog's tent, carried easily in his arms.<br>
<br>
Placing you down on a surprisingly nice bed he sheds his armour to reveal the REAL source of his nickname. His cock is huge as <<=setup.getNpcName('npc_technician', 'first')>> demonstrates helpfully by way of stacking up three empty pop cans on the table.<br>
<br>
"@@.npc_technician;It's about like this. It swells and rises once released from his clothing as you find yourself staring it down from your position on the bed. Naked before you he is big and strong and muscled, the scars of innumerable battles giving him a savage beauty as he stalks forward with an eager, tusked grin.@@"<br>
<br>
You take a deep breath and confirm that you're still going to make good on your bargain, spreading your legs as he leans in for a kiss and then, surprisingly gently, claims your virginity with his mammoth member. Fortunately for your character your half-orc blood gives you some additional durability as you take a hard, deep dicking that would have broken most human women.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<set $player.timebased.horny += 20>>
Though <<=setup.getNpcName('npc_technician', 'first')>> refrains from going TOO deep into detail you can't help but find yourself fantasizing about orcish cock. The thought of being fucked like in game, of being pounded deep and stretched wide by such a strong caricature of masculinity. You shift in your seat, your arousal rocketing upwards as you are unable to think of being in the place of your character, a big, manly orc looming over you, his wet cock plunging in and out of your body as you tremble and gasp and moan.<br>
<br>
Distracted by your fantasy you return your attention to reality as <<=setup.getNpcName('npc_technician', 'first')>> sums up the actions of the rest of the party and continues the adventure along.
<</if>>
Spending a passionate night together the two of you drift to sleep without any need for your somniumic assistance. Rising in the morning he helps you back into your robe, insisting you keep the tiara and parading you back out in front of his clan.<br>
<br>
While you enjoyed your night with the chief the rest of the party has taken the opportunity to "relax" as well, <<=setup.getNpcName('npc_maid', 'character')>> smiling at a smaller orc who looks to be sitting a bit gingerly while <<=setup.getNpcName('npc_barista', 'character')>> cavorts boisterously at the centre of a small clique of orcs, kissing and stroking and teasing.<br>
<br>
After a hearty breakfast it is time to get back on the road. Bidding the orcs goodbye you continue down the road, a short while later meeting a group of mounted knights.
<<case "elf_priestess">>
Agreeing to the orc's request you and the rest of the party are escorted back to the clan's encampment. Showered with praise you are led to a central raised platform around which are arrayed the chief and a trio of veteran warriors.<br>
<br>
Led up onto the platform, that looks more and more like a bed as you approach, <<=setup.getNpcName('npc_technician', 'first')>> adopts a deeper voice to enact the chieftan's speech.<br>
<br>
"@@.npc_technician;I Tog, The Three Handed Club, give you the thanks of my clan and ask that you share your divine blessing with myself and my greatest warriors.@@"<br>
<br>
Knowing exactly what sort of "blessing" he has in mind you ham it up a bit, describing how you crawl onto the platform and willingly offer your body to his entire clan, that all may share in the gifts of the divine three.<br>
<br>
There are a few whistles of approval from around the gaming table at your daring as your character lays back, swiftly discovering the reason the zweihander wielding Tog got his nickname as he stretches even your blessed and expert hole. You moan, while in front you spread your mouth wide to accept the futa cock of the female warrior in front of you.<br>
<br>
One of the orc men steps up to your side and removes his codpiece to reveal not another cock but a beautiful, juicy cunt.<br>
<br>
"@@.npc_technician;Fair's fair y'know!@@" she states as you announce that you will service the man by hand while you take it from both ends. You slender fingers prove insufficient and soon you are thrusting your full fist into him.<br>
<br>
Tog continues to fill you below as you gulp the first load down your throat. The rest of the clan has already organised by seniority and they begin filing in as <<=setup.getNpcName('npc_barista', 'character')>> gleefully announces that she'll be your "fluffer" to aid you in distributing your "blessing" to the entire clan.<br>
<br>
Thanks to your divine mandate you become neither sore nor tired as you are gang-banged by the entire clan of orcs. The final, most junior warrior finishes in your ass as you slip forward onto your hands and knees. Leaking cum from every hole you wobble to your feet to finish the ceremony, thanking the clan for their generous offering and promising divine blessing on them and their lands.<br>
<br>
It already being late the party spends the night with the clan.<br>
<br>
Waking the next morning you find that the rest of the group has had a bit of fun as well <<=setup.getNpcName('npc_maid', 'character')>> smiling at a smaller orc who looks to be sitting a bit gingerly while <<=setup.getNpcName('npc_barista', 'character')>> cavorts boisterously at the centre of a small clique of orcs, kissing and stroking and teasing.<br>
<br>
After a hearty breakfast it is time to get back on the road. Bidding the orcs farewell you continue down the road, a short while later meeting a group of mounted knights.
<<case "bard">>
Striking a pose and a chord that sounds across the battlefield you triumphantly announce that you. will. play!<br>
<br>
The orcs cheer, raising you onto their shoulders as they escort you and the rest of the party back to their camp and quickly assemble a concert stage.<br>
<br>
With <<=setup.getNpcName('npc_barista', 'character')>> on backing vocals you pump up the already raucous crowd as the physical dancing quickly descends into full-on orgy.<br>
<br>
Looking out from the stage as you continue to shred as you note the rest of the party "getting in on the fun." <br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> and <<=setup.getNpcName('npc_rpg_dude', 'character')>> have coupled off with a pair of orcs. <<=setup.getNpcName('npc_rpg_dude', 'character')>> lays on top of one of the orcs taking it in the rear while <<=setup.getNpcName('npc_rpg_warlock', 'character')>> avails herself of her boy/girlfriend's front hole, <<=setup.getNpcName('npc_rpg_dude', 'character')>> mouth eagerly licking the orcish cunt squatted over her face while that same orc makes out with <<=setup.getNpcName('npc_rpg_warlock', 'character')>>.<br>
<br>
<<=setup.getNpcName('npc_maid', 'character')>> has found herself a slender, almost bookish looking orc shaman, bending him over and plowing his ass, her cock glowing with celestial power as the orc moans and grunts with each stroke.<br>
<br>
Even (or is that, especially?) <<=setup.getNpcName('npc_barista', 'character')>> is getting in on the fun, inviting several orcs up onto the stage where she seems as eager to fuck as get fucked while somehow never missing a note of her performance.<br>
<br>
The boisterous concert running into the night everyone eventually passes out where they are as you close with an erotic lullaby number, looking out across the sea of flesh cuddled together in every imaginable configuration.<br>
<br>
The following morning everyone is a bit hung over, but happy, the orcs gifting you coin and gold before bidding you farewell.<br>
<br>
Continuing down the road around mid-morning you meet up with a group of mounted knights.
<<case "druid">>
Sacrificing the slightest shred of control for a few more +'s in combat you charge into battle with a roar. Barelling past <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> you knock orcs aside like bowling pins, crashing directly into their chief and knocking him to the ground.<br>
<br>
Letting out a dominant roar you square off with the chief as the other orcs step back for the mano-a-bear-o clash of champions.<br>
<br>
He is strong, you are stronger. He is tough but your magical hide is more stout than his armour. Ripping off his armour as you scarcely notice his sword blows as you slam him to the ground. Holding him down with both paws you rear back for a primeval roar as you "finish" him by plunging your thick ursine cock into his exposed ass.<br>
<br>
Watching their champion's humiliation takes all the fight out of the orcs as they scatter and flee. Finishing off you leave the ex-chieftain in a pile of dust and cum as you come down from your frenzied state and return to humanoid form.<br>
<br>
"@@.npc_maid;So, uh... you may have gone a leetle bit far with "optimizing" that character...@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> shrugs innocently as the narrative continues, the party soon meeting up with a group of mounted knights coming from the other direction.
<<case "succubus">>
Nodding obediently you split off from the party while the orcs charge forward.<br>
<br>
"@@.npc_rpg_warlock;Oh, one final thing!@@" She casts a spell in game to temporarily enchant your ankle bindings to enhance your stealth and speed before reaching into her bag in real life and producing a pair of matching leather cuffs.<br>
<br>
"@@.npc_rpg_warlock;Ta-da! Gimme those cute feet so I can get you outfitted.@@"<br>
<br>
As she buckles the cuffs in place you notice that they are linked by a short chain, your restrained situation significantly increased as you sit at her feet, collared, leashed and hobbled.<br>
<br>
Back in game you move swift and silent, unnoticed by your foes as you circle around until you are within range of the large orcish chieftain. Reaching out with your seductive powers you pull his attention away and then hold it as you do an erotic dance, your siren-like activity drawing him away from his forces.<br>
<br>
Fearing that your friends might not last much longer you throw everything you have into a command for him to recall his forces from the field. Around the table everyone holds their breath as the die rolls, and rolls and stops just on the edge of the table. All eyes are on <<=setup.getNpcName('npc_technician', 'first')>> as she adds up the modifiers and announces the result.<br>
<br>
"@@.npc_technician;You are successful. The orc barks out a command and he and the rest of his forces fall back, breaking into a sprint once they are out of melee.@@"<br>
<br>
Bruised and bloodied <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> nod in thanks as <<=setup.getNpcName('npc_barista', 'character')>> and announces that she found some loot.<br>
<br>
It isn't much, just a few coins and some rations but it's better than nothing. The party patches up their wounds and continues on, grateful to meet a cadre of mounted knights a bit further up the road.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_3' 'Continue.' $scene.stepLength>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_2_3' "Finish up." 600>>]
<</if>>
</div>/*#
#desc: flee from orcs, rescued by knights
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = false>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_ankle_cuffs">>
<<wearItem $player $now "rpg_succubus_ankle_cuffs" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You unleash a fireball right into the centre of the clustered orcs. Casting a fistful of dice onto the table <<=setup.getNpcName('npc_barista', 'nickname')>> somehow instantly mentally sums and calls out the damage total.<br>
<br>
Despite the swing in momentum you're still outmatched and the party takes the opportunity to flee from battle before the smoke clears and the orcs can regroup.
<<case "elf_priestess">>
You refuse the request and the mood shifts in an instant, the orcs unsheath their weapon as their leader calls out in anger.<br>
<br>
"@@.npc_technician;If you will not give us your blessing, we will take it!@@"<br>
<br>
It isn't long into the fight when the party comes to the realization that you're quite outmatched, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> throwing out covering fire as <<=setup.getNpcName('npc_barista', 'character')>> plays a song of swiftness and the party takes flight.
<<case "bard">>
You reject the orcs' request and they instantly turn hostile.<br>
<br>
"@@.npc_technician;The orcish leader calls out in anger. Raaaah! If will not play... then die!@@"<br>
<br>
The battle is pitched but it isn't long into the fight when the party comes to the realization that you're quite outmatched, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> throwing out covering fire as you and <<=setup.getNpcName('npc_barista', 'character')>> play a duet of swiftness and the party takes flight.
<<case "druid">>
Taking your place on the front line between the other melee the three of you form a stout bulwark between the attacking orcs and your squishier casters. Despite this the party doesn't seem to have enough raw output to stem the tide of the orcs and you steadily fall back before finally, with cover of a final darkness spell from <<=setup.getNpcName('npc_rpg_warlock', 'character')>> the group takes flight.
<<case "succubus">>
Ignoring the order you stick with the party as the fight commences. Unfortunately your seductive, swashbuckling skill-set is less suited to this sort of close quarters combat without room to manoeuvre and, combined with some poor rolls by the rest of the party it isn't long before you are forced to turn flight and flee.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
Fleeing at a dead run with the orcs on your heels it's looking a bit dicey when the literal cavalry comes charging up the road.<br>
<br>
Recognizing the livery the party calls out a greeting - the knights hail from the Castle Lochemere where the quest first began. The orcs scatter as the knights wheel around and offer to escort you the rest of the way.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_rpg_warlock;Ah, ah, since you got cold feet earlier, well, I guess I just need to exert some more stringent control.@@" Reaching into her back in real life she produces a pair of matching leather cuffs.<br>
<br>
"@@.npc_rpg_warlock;Ta-da! Gimme those cute feet so I can get you equipped.@@"<br>
<br>
She buckles them in place and you notice that they are linked by a short chain, your restrained situation increased further as you sit at her feet, collared, leashed and hobbled.<br>
<br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_3' 'Continue.' $scene.stepLength>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_2_3' "Finish up." 600>>]
<</if>>
</div>/*#
#desc: knights arrive to escort you back to the castle/end of session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
The knights from Castle Lochemere hail you in greeting, having been sent from whence the party originally set off on their quest. Happy for the escort you mount up and literally ride into the sunset as the session wraps up.<br>
<br>
"@@.npc_technician;Well that was fun - next week we'll be taking a bit of a break from combat for a more political session.@@"<br>
<br>
"@@.npc_maid;Here's hoping it goes better than that time in the court of Atlantis!@@"<br>
<br>
"@@.npc_rpg_dude;Hey, how was I to know about the prophecy? Beside, I wasn't the one who made a joke about "going down" while their entire civilization was sinking into the sea!@@"<br>
<br>
"@@.npc_barista;What? Who doesn't like going down?@@"<br>
<br>
You join in with the laughter, feeling a part of the group even if you weren't around for what was obviously a literally disasterous previous campaign.<br>
<br>
Quickly passing out xp <<=setup.getNpcName('npc_technician', 'first')>> wraps things up as everyone sets about packing up their stuff.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
With a friendly smile <<=setup.getNpcName('npc_rpg_warlock', 'first')>> thanks you for playing along before removing your collar and cuffs.<br>
<br>
<</if>>
[<<moveTo 'event_rpg_post_session_2' "Finish up." 600>>]
</div>/*#
#desc: packing up/option to stay after the RPG session w/npc_technician
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<if $scene.collared != 'locked'>>
<<if !($npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[6] || $npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[7])>>
<<removeItem $player $now "rpg_succubus_collar" true>>
<<deleteItem $player $now "rpg_succubus_collar">>
<</if>>
<</if>>
<<removeItem $player $now "rpg_succubus_leash" true>>
<<deleteItem $player $now "rpg_succubus_leash">>
<<removeItem $player $now "rpg_succubus_ankle_cuffs" true>>
<<deleteItem $player $now "rpg_succubus_ankle_cuffs">>
<<useClothSetPop 'scene' $player $now>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
Everyone is saying their goodbyes and packing up when you notice that the evening of fun has left a fair bit more of a mess behind in terms of trash and the like than the first session.<br>
<br>
You're feeling pretty tired but you bet <<=setup.getNpcName('npc_technician', 'first')>> would really appreciate the help.<br>
<br>
<<printThought $player "This would be a great opportunity to get some time alone with her...">><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to help cleanup." $scene.stepLength>>]<br>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
</div>/*#
#desc: start 3-7 campaign session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<include rpg_choker_check>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "rpg_succubus_collar">>
<<wearItem $player $now "rpg_succubus_collar" true>>
<<case 'worn'>>
<<set $scene.collared = "worn">>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $player $now true>>
<<addItem "rpg_succubus_collar">>
<<wearItem $player $now "rpg_succubus_collar" true>>
<</switch>>
<<addItem "rpg_succubus_leash">>
<<wearItem $player $now "rpg_succubus_leash" true>>
<<addItem "rpg_succubus_ankle_cuffs">>
<<wearItem $player $now "rpg_succubus_ankle_cuffs" true>>
<<if $npc_technician.flags.rpg_campaign.session > 3>>
<<addItem "rpg_succubus_wrist_cuffs">>
<<wearItem $player $now "rpg_succubus_wrist_cuffs" true>>
<<if $npc_technician.flags.rpg_campaign.session > 4>>
<<addItem "rpg_succubus_demon_hood">>
<<wearItem $player $now "rpg_succubus_demon_hood" true>>
<<if $npc_technician.flags.rpg_campaign.session > 4>>
<<addItem "rpg_succubus_arm_bondage">>
<<wearItem $player $now "rpg_succubus_arm_bondage" true>>
<<if $npc_technician.flags.rpg_campaign.session > 6 && $npc_technician.flags.rpg_campaign.session_actions.fantasy["succubus"][5]>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && $scene.plug != "dice_anal_jumbo_plug">>
<<removeItem $player $now $scene.plug true>>
<</if>>
<<if $scene.plug != "dice_anal_jumbo_plug" && setup.getTotalValue("anal") > setup.getItemObj("dice_anal_plug").effect.anal>>
<<if $scene.plug == "dice_anal_plug">>
<<removeItem $player $now $scene.plug true>>
<</if>>
<<addItem "dice_anal_jumbo_plug">>
<<wearItem $player $now "dice_anal_jumbo_plug" true>>
<<elseif $scene.plug != "dice_anal_jumbo_plug" && $scene.plug != "dice_anal_plug">>
<<addItem "dice_anal_plug">>
<<wearItem $player $now "dice_anal_plug" true>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.relationship_stage > 0>>
You're the first to arrive, sharing a kiss with <<=setup.getNpcName('npc_technician', 'first')>> before taking your seat.<br>
<br>
"@@.npc_technician;So just a reminder, when it comes to the game I'm the impartial Dungeon Mistress, so don't expect any special treatment for being snuggle buddies.@@"
<<else>>
You're the first to arrive, <<=setup.getNpcName('npc_technician', 'first')>> greeting you at the door and welcome you in.
<</if>>
<br><br>
The rest of the group trickles in, first <<=setup.getNpcName('npc_maid', 'first')>> then the couple of <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_rpg_dude', 'first')>>.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
Making a beeline for you <<=setup.getNpcName('npc_rpg_warlock', 'first')>> drops her bag next to the couch and motions for you to kneel before her.<br>
<br>
"@@.npc_rpg_warlock;Time to get equipped!@@" She states with a grin as she starts pulling familiar restraints out of her bag.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 3>>
By the time <<=setup.getNpcName('npc_barista', 'nickname')>> arrives a couple minutes later you're collared, leashed and hobble cuffed.<br>
<br>
"@@.npc_barista;You look pretty hot like that, tho, personally, I don't like anything that interferes with me spreading my legs...@@"
<<case 4>>
By the time <<=setup.getNpcName('npc_barista', 'nickname')>> arrives a couple minutes later you're collared, leashed, cuffed at the wrist and ankle and hobbled.<br>
<br>
"@@.npc_barista;You look pretty hot like that... even better if your wrist cuffs were functional instead of just adornments!@@"
<<case 5>>
Pulling the rubber hood over your head <<=setup.getNpcName('npc_rpg_warlock', 'first')>> follows up with cuffs, collar, leash and hobbles to have you sitting at her feet looking quite the demonic slave.<br>
<br>
"@@.npc_technician;Unfortunately <<=setup.getNpcName('npc_barista', 'first')>> has another engagement tonight so we'll be proceeding without her.@@"
<<case 6>>
The rubber hood puts you in the "headspace" of your demonic alter ego, followed by the limb restraints that have your arms all but useless, collared at the end of <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> leash.<br>
<br>
"@@.npc_warlock;Mmm, delightful, you're definitely my second favourite pet.@@"<br>
<br>
Reaching over to grab <<=ps(setup.getNpcName('npc_rpg_dude', 'first'))>> collar to pull him in for a kiss to affirm who, exactly, ranks above you.
<<case 7>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> grins as she unpacks her bag of "goodies," swiftly equipping you with the familiar bondage set; leaving you cuffed, collared, hooded, leashed and restrained.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy["succubus"][5]>>
<<if setup.getTotalValue("anal") > setup.getItemObj("dice_anal_plug").effect.anal>>
She grins as she produces an even larger version of the D20 buttplug.<br>
<br>
"@@.npc_rpg_warlock;With how well you took the other one... I thought you could bring use a bit of "extra" luck. Come on, show me that sexy ass.@@"<br>
<br>
Bending over you moan as she slides it into place, the weighty girthyness impossible to ignore.
<<else>>
She grins as she produces another "D20 buttplug." You obediently bend over and let out a little gasp as she installs it in your rear hole.
<</if>>
<</if>>
<br><br>
Walking in the door <<=setup.getNpcName('npc_barista', 'nickname')>> gushes about your appearance.<br>
<br>
"@@.npc_barista;Wow! You're like... making me horny just seeing you like that.@@"<br>
<br>
Groans loop the table at her terrible pun.<br>
<br>
"@@.npc_maid;What DOESN'T make you horny, exactly?@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> strains in thought for a moment before shrugging and taking her seat with her normal ditzy smile.
<<default>>
ERROR; unhandled session: <<=$npc_technician.flags.rpg_campaign.session>>
<</switch>>
<<else>>
<<if $npc_technician.flags.rpg_campaign.session == 5>>
"@@.npc_technician;Unfortunately <<=setup.getNpcName('npc_barista', 'first')>> has another engagement tonight so we'll be proceeding without her.@@"
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>> is the last to arrive, bouncing across the room before flopping onto her chair.
<</if>>
<</if>>
<br><br>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 3>>
[<<moveTo 'event_rpg_campaign_session_3_0' "Start the session." 60>>]
<<case 4>>
[<<moveTo 'event_rpg_campaign_session_4_0' "Start the session." 60>>]
<<case 5>>
[<<moveTo 'event_rpg_campaign_session_5_0' "Start the session." 60>>]
<<case 6>>
[<<moveTo 'event_rpg_campaign_session_6_0' "Start the session." 60>>]
<<case 7>>
[<<moveTo 'event_rpg_campaign_session_7_0' "Start the session." 60>>]
<<default>>
ERROR: unknown session: <<=$npc_technician.flags.rpg_campaign.session>>
<</switch>>
</div>/*#
#desc: start 3rd campaign session (castle intrigue)
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 2>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Ok, that's everyone, let's get started! When we left off last session you were on your way to Castle Lochemere. With your armed escort the journey proceeds without incident and you are brought straight to the throne room.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_1' "Continue." $scene.stepLength>>]
</div>/*#
#desc: meet regent, given quest
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_wrist_cuffs">>
<<wearItem $player $now "rpg_succubus_wrist_cuffs" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_technician;Though they are grateful for your assistance there is some concern about allowing an infernal being in front of the regent. It is insisted that you wear a set of magical cuffs that will temporarily "de-power" you for the duration of your meeting.@@"<br>
<br>
"@@.npc_rpg_warlock;Oh! I've got just the thing!@@" Digging through her bag she comes up with a pair of leather wrist cuffs that she quickly locks onto your arms. "@@.npc_rpg_warlock;Perfect! All secure now, let's head in!@@"
<</if>>
<br><br>
"@@.npc_technician;You are greeted by the worried regent. Quickly thanking you for defeating the summoner who had been menacing the area the regent motions for the regal sorceress who is the court magician to accept the item you brought back from his lair.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "orc_mage">>
"@@.npc_technician;The court magician seems to avoid looking at you, an apparent dismissiveness that reminds you somewhat of traditionalists who don't believe it proper for a half-orc to study the arcane arts.@@"<br>
<br>
<</if>>
"@@.npc_technician;With old business out of the way the regent continues on to explain the issue that now vexes him.@@"<br>
<br>
"@@.npc_technician;Some foul enchantment has befallen Princess Hedina, the kingdom's rightful heir. We have called in clerics and casters from far and wide but, though they all agree it is some manner of poison, none seem able to reverse the course of it and she grows weaker and weaker. Please, adventurers, if you know of anything that might help her...@@"<br>
<br>
The party agrees to do what they can and the regent dismisses you to first visit your room and clean off the grime of the road.<br>
<br>
Reconvening after you've cleaned up the party discusses what you can do.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_2' "Make a plan." $scene.stepLength>>]
</div>/*#
#desc: presented with problem of poisoned royal daughter, choose action
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
If the affliction is magical in nature perhaps you can help. It would be best to consult with the court magician though there is the matter of her strange behaviour earlier.<br>
<br>
Tracking her down while the rest of the party works their own angles you try to talk to her only for the sorceress to seem to almost shut down, giving little more than monosyllabic answers, unwilling to even meet your gaze.<br>
<br>
<<printThought $player "Dammit, this isn't working and I'm sure she knows something...">><br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' "Confront her on her obvious bigotry." $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' 'Let the other players figure something out.' $scene.stepLength>>]
<<case "elf_priestess">>
Attention naturally falls upon you to attempt to heal the sickly royal.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' 'Suggest you perform a ritual with the girl and seek a divine miracle.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' "Say you can't do anything and leave it to the other players to figure something out." $scene.stepLength>>]
<<case "bard">>
Not having a proper healer in the party you come at it from the other direction wondering if maybe you might track down the source of the poison.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' 'Suggest you put on a concert for the castle; drinks will loosen tongues and make getting to the bottom of things easier.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' 'Let the other players figure something out.' $scene.stepLength>>]
<<case "druid">>
All your skill points are in shape-shifting and combat rather than any sort of nature based healing powers so you're probably better focusing on finding the cause of the poisoning than making any attempt to cure it directly.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' "State that you're going to sneak around the castle in cat form to see what you can turn up any clues." $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' 'Let the other players figure something out.' $scene.stepLength>>]
<<case "succubus">>
With a sly grin <<=setup.getNpcName('npc_rpg_warlock', 'character')>> manipulates your newest bindings, leaving them in place but disabling them so that your powers are no longer nullified.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' 'See what information you can seduce out of the castle dwellers.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' 'Let the other players figure something out.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: investigate/deal with poisoning
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Confronting the sorceress you start into a rant about how just because one of your parents was an orc doesn't mean you are any less worthy of practicing arcane magic and besides-<br>
<br>
"@@.npc_technician;You're just getting up to speed when she interrupts you with a gasp. Wide-eyed in horror she shakes her head quickly before speaking. "No-no-no! It's nothing like that you see, I-, I-" The sudden shift from her previous brusqueness to apparent humiliated embarrassed has you quite confused as she stares at the floor and mumbles something.@@"<br>
<br>
You have to make a hearing roll to catch her word, fortunately your racial bonus is just enough to put you over.<br>
<br>
"@@.npc_technician;She says you're pretty.@@"<br>
<br>
It's your turn to be confused.<br>
<br>
"@@.npc_technician;When you first walked into the throne room... you were the most beautiful woman I'd ever seen! Your tusks, the colour of your skin... I'm sorry for earlier but the fact that you're a mage as well... it was just too much... I'm sorry?@@"<br>
<br>
"@@.npc_technician;There's a heartbeat hesitation and then she throws herself at you, her smaller frame easily supported by your orcish strength. After the two of you compose yourselves you are able to coordinate, figuring out that the princess' symptoms match those of a rare poison, Hapatra's venom which originates from a nearby nation.@@"
<<case "elf_priestess">>
<<=setup.getNpcName('npc_barista', 'character')>> volunteers to join you with the princess while the rest of the party goes searching for the cause of the woman's mysterious ailment.<br>
<br>
Entering the princess' bedchambers you find her looking older than you expected. A full-formed adult woman her age raises the question of why she has not ascended to the throne. Putting that aside she looks quite beautiful... somewhat pale, but still quite gorgeous. Approaching the bedside you beseech the divine for aid in healing her, channeling a small amount of holy energy into her that revives her a little.<br>
<br>
"@@.npc_technician;Well, maybe more than a little - as you look down her body you notice that her blankets are suddenly tenting over her crotch. Pulling things aside reveals a perfectly proportion, VERY hard girlcock between her legs.@@"<br>
<br>
"@@.npc_barista;Oooh, yum!@@"<br>
<br>
Despite your compatriot's slutty comment it IS the way of your church and you lean in to begin sucking her off as you continue to channel healing energy into her.<br>
<br>
Gasping in arousal at the touch of your lips the princess starts to look a bit healthier. Crawling onto the bed you ride her before finally giving <<=setup.getNpcName('npc_barista', 'character')>> permission to join in, the slutty bard helping sate the princess' sudden thirst with her own juicy cock as you work your hips and ride her through several orgasms, her health improving with each time she cums.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
With <<=ps(setup.getNpcName('npc_technician', 'first'))>> narration of the "ritual" fading into the background you find yourself sinking into a quasi sub-space fantasy. Serving the Princess with your body your fantasy turns from riding her cock to stradling <<=setup.getNpcName('npc_technician', 'first')>>, looking down at your <<if $npc_technician.relationship.relationship_stage >=1>>girlfriend<<else>>friend<</if>>, her expression a blissful smile as her hips rise up into you, your own <<getWordMyPenis $player>> forgotten as you delight in being penetrated, her hands squeezing your hips as you moan and grope yourself.<br>
<br>
Caught up in your fantasy you barely stop yourself from rubbing yourself in real life, stifling a gasp as you re-focus on the game at hand, hoping that nobody noticed your distraction... though the slight smile on <<=ps(setup.getNpcName('npc_technician', 'first'))>> has you unsure.
<</if>>
When the ritual is finally completed you are able to speak with the newly healed princess and learn that the last thing the princess did before falling ill was share a meal with the new ambassador from Khmet.
<<case "bard">>
Though the regent isn't enthused at the idea of hosting a celebration whilst the princess is ill the party finally manages to convince him of the potential benefits.<br>
<br>
You take the stage with <<=setup.getNpcName('npc_barista', 'character')>> singing backup, reigning it in so as to "merely" encourage some reduced inhibitions without going so far as to induce a full-on orgy.<br>
<br>
The rest of the party works the crowd to learn that the ambassador from the Kingdom of Khmet had arrived only shortly before the princess first became ill. With the castle occupied and entertained the party is able to sneak away to the ambassador's quarters, returning with a vial of Hapatra's venom a poison that, after dragging the slightly tipsy court magician out of the party, you confirm matches the symptoms of the princess' ailment.
<<case "druid">>
Shifting into a shadow cat you skulk through the castle, your semi-ephemeral form able to slip through cracks and creep along walls and ceilings as you attempt to discover the castle's secrets.<br>
<br>
Failing to find anything related to the princess it is when you move higher up the royal tower towards the royal residence that you find something of another sort of interest.<br>
<br>
Just below the royal chamber you find a harem... a harem filled with catgirls.<br>
<br>
"@@.npc_technician;I'm uh... going to need you to make a self control roll here.@@"<br>
<br>
Grabbing the dice you wince at the huge negative modifier you apparently have for this sort of thing.<br>
<br>
"@@.npc_maid;Don't worry, you've got, like... a 15% chance of success!@@"<br>
<br>
Casting the dice you look down at what would normally be considered a decent roll, but in this case...<br>
<br>
"@@.npc_technician;Yea... so... it's about to go full hentai for you... have fun!@@"<br>
<br>
<<if setup.getTotalValue("bestiality") > 15>>
Though <<=setup.getNpcName('npc_technician', 'first')>> keeps things "professional" by not going into further details that does nothing to stop your own depraved imagination. You aren't sure what excites you more, the thought of plunging your barbed, yet still pleasure-giving, feline cock into catgirl after catgirl... or the idea of being a catgirl yourself, mounted and bred by a primal, powerful great cat.
<</if>>
While you enjoy your shadow cat on catgirl orgy the rest of the party (including a jealous <<=setup.getNpcName('npc_barista', 'nickname')>>) does some ACTUAL investigation, sussing out that the princess' illness started shortly after a new ambassador from the kingdom of Khmet arrived at the castle. A search of the ambassador's quarters turns up a half filled vial of Hapatra's venom; an exotic poison that the court magician confirms matches the symptoms of the princess' ailment.
<<case "succubus">>
Wandering through the castle your let your passive aura work its magic, flirting with guards and servants to learn that while the princess was generally well-liked she had a stalkeresque paramour. Tracking him down you turn your powers on full blast. After you've finished fucking his brains out you learn that he attempted to administer a "love potion" on the princess that he procured from the recently arrived ambassador from the kingdom of Khmet.
<<if setup.getTotalValue("whoring") > 10>>
<br><br>
Though the in-game summary of your actions are brief you find them triggering some real life memories of your side-gig as a prostitute. You imagine what it would be like to be a literal court courtesan, secretly serving the depraved urges of royalty, showered with wealth to "hush up" your latest session of acting out yet another perverted fantasy, even though you would gladly indulge their every depravity -
<<if setup.getTotalValue("cum") >= 10>>guzzling cum, <</if>>
<<if setup.getTotalValue("piss") >= 10>>bathing in their piss, <</if>>
<<if setup.getTotalValue("bdsm") >= 10>>lashed by their whips, <</if>>
<<if setup.getTotalValue("foot") >= 10>>worshipping at their feet, <</if>>
<<if setup.getTotalValue("bondage") >= 10>>helplessly bound for days at a time, <</if>>
<<if setup.getTotalValue("submission") >= 10>>submitting to their every whim, <</if>>
<<if setup.getTotalValue("bestiality") >= 10>>
even offering yourself up to the royal hounds, the prince's prized stallion <<if setup.getTotalValue("bestiality") > 15>>and every beast in the king's menagerie,<</if>>
<</if>>
every orgiastic delight as much a dream come true for yourself as for your "client." <br>
<br>
"@@.npc_maid;Hey, <<=$player.first_name>>!@@" <<=setup.getNpcName('npc_maid', 'first')>> calls out, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> giving a tug on your leash to further bring you back to reality.<br>
<br>
"@@.npc_rpg_warlock;Tsk, tsk, I know things are a bit exciting, but you mustn't get distracted.@@" She states as you blush and focus back on the game.
<</if>>
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_3_4' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: wallflower your way through the session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = false>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Failing to get an answer out of the sorceress you leave to catch up with the rest of the party.
<<case "elf_priestess">>
Convinced to visit the princess, who looks more than of age as a woman making it quite puzzling why she would have not ascended the throne, you try conventional healing spells to no avail, only to hear the princess trying to speak. Leaning close she whispers the word "ambassador." Leaving her in the care of her servants you head off to bring this cryptic clue to the rest of the party.
<<case "bard" "druid" "succubus">>
Not really speaking up much you follow along with the rest of the party as they investigate the origins of the princess' ailment.<br>
<br>
After getting sidetracked by one of the princess' previous paramours you end up zeroing in on the recently arrived ambassador from the kingdom of Khmet. A secret search of his quarters turns up a vial of Hapatra's venom; an exotic poison whose effects match the princess' symptoms.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_3_4' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: finish up session, giving followup mission
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Regrouping with the rest of the party you're able to put things together - the symptoms coinciding with the arrival of the ambassador from Khmet you find a half-empty vial in their quarters. Working together with the sorceress you brew up an antidote while the rest of the party helps arrests the implicated ambassador.<br>
<br>
Still somewhat bashful around you the court magician tries to make things up to you with a gift - special enchanted stockings that enhance your concentration and lower enemy spell resistance.<br>
<br>
<<printThought $player "Stockings... am I doing a slow in-game magical girl transformation? Oh well, the stats are too good to pass up...">>
<<case "elf_priestess">>
Reconvening with the rest of the party you bring your combined evidence to the regent who quickly sends the royal guard to arrest the implicated ambassador from Khmet. A half-empty vial of Hapatra's venom is found in their quarters and the court magician uses it to brew an antidote that has the princess up and about for the first time since her ailment began.
<<case "bard">>
The court magician uses the remaining poison to fabricate an antidote, the princess almost immediately looking better once it has been administered.
<<case "druid">>
Eventually exhausting your newfound catgirl friends you slink back to the party, joining them in hominid form as you present your case to the regent, helping arrest the implicated ambassador and watching as an antidote concocted from the remaining poison is used to revive the royal heir.
<<case "succubus">>
Synching up with the rest of the party they, too, have found clues pointing towards the ambassador. Searching his room you find a mysterious vial that your demonic senses immediately confirm is no love potion.<br>
<br>
Bringing the sample to the court magician she appears a bit leery of you, but confirms that not only is it an exotic poison, Hapatra's venom, but the effects would almost perfectly match the princess' symptoms. She uses the remaining poison to brew up an antidote while you assist the royal guards in arresting the implicated ambassador.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.character != "elf_priestess">>
The regent thanks you profusely for saving the princess. Bejewelled in royal finery Princess Hedina appears to great fanfare looking much older than you expected, a fully of age woman to the point that it seems puzzling why she has not yet ascended the throne. She sits silently with a neutral expression in witness of the regent declaring war against the Kingdom of Khmet before retiring to continue her recovery.<br>
<br>
<</if>>
"@@.npc_technician;Showering you with gold in thanks for saving the princess the regent assigns you as "neutral parties" to escort the incriminated ambassador back home while he begins mustering his forces for the coming war.@@"<br>
<br>
Cutting the session there the four of you spend time doing a bit of shopping as you spend your new fortune on upgrades and magic items in anticipation of what looks to be a rapidly forming war.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_rpg_warlock;Great job again. Oh, I just love seeing you restrained! Alas, it is time to go so lemme let you out.@@"<br>
<br>
She removes your restraints with a wink as her boyfriend packs up the rest of their things.<br>
<br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_4' 'Continue.' $scene.stepLength>>]
<<else>>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: packing up/option to stay after the RPG session w/npc_technician
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus" && $scene.sessionId == 'fantasy'>>
<<include remove_succubus_items>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.session == 5>>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
Once the rest of the party has left <<=setup.getNpcName('npc_technician', 'first')>> drops to her knees at your feet, looking up at you with wide, lustful eyes.<br>
<br>
"@@.npc_technician;Please, Mistress...@@"<br>
<br>
Ideas dancing in your head you smile, fingering her key in one hand as you consider your next move...<br>
<br>
[<<moveTo 'event_technician_chastity_session' "Time to play with your caged sub." 0>>]
<<case "neutral">>
<<if $npc_technician.relationship.keyholder || !$scene.was_caged>>
She smiles as she produces the key to your cage. You do the same, mutually unlocking each other as you share a gentle kiss.<br>
<br>
"@@.npc_technician;Mmm, much better, now let's have a little fun...@@"<br>
<br>
<<else>>
You produce the key to her cage as she frowns and apologises.<br>
<br>
"@@.npc_technician;Sorry I can't return the favour - oh that's soooo much better - but... I promise we can still have some fun...@@"
<</if>>
<br><br>
[<<moveTo 'event_technician_chastity_session' "Have some fun." $scene.stepLength>>]
<<case "sub">>
You've barely shut the door behind the final guest before dropping to your knees. Still restrained in your succubus attire you tremble in anticipation as you look up at your Mistress, feeling ready to explode out of your cage you're so excited.<br>
<br>
[<<moveTo 'event_technician_chastity_session' "Time to play with your sub." $scene.stepLength>>]
<</switch>>
<<else>>
<<=setup.getNpcName('npc_maid', 'first')>> taunts a bit before returning <<=ps(setup.getNpcName('npc_technician', 'first'))>> key as the cute tech wizard bites her lip in anticipation, quickly shooing you all out of her apartment.<br>
<br>
<<printThought $player "Damn, I wish I could have stuck around...">><br>
<br>
[<<moveTo 'room_foyer' "Head home." $scene.stepLength>>]
<</if>>
<<else>>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num]>>
The rest of the group all congratulates you on your active role in the latest session.<br>
<br>
<<switch random(0,3)>>
<<case 0>>
"@@.npc_maid;Yea, great job, you really pulled your weight tonight!@@"
<<case 1>>
"@@.npc_rpg_dude;Solid job, you really helped the party out.@@"
<<case 2>>
"@@.npc_rpg_warlock;You were great tonight, good job!@@"
<<case 3>>
<<if $npc_technician.flags.rpg_campaign.session != 5>>
"@@.npc_barista;You were like, so awesome tonight, woo!@@"
<<else>>
"@@.npc_maid;Yea, great job, you really pulled your weight tonight!@@"
<</if>>
<<default>>
ERROR: bad random
<</switch>>
<<elseif $scene.sessionId == 'fantasy'>>
They all thank you for coming, though you feel a bit guilty about how minimally you contributed.<br>
<br>
<<switch random(0,3)>>
<<case 0>>
"@@.npc_maid;Buck up a bit and maybe try to be a bit more active next game.@@"
<<case 1>>
"@@.npc_rpg_dude;I know it can be a bit intimidating, but you should try to assume a more active role, it's more fun that way, for everyone!@@"
<<case 2>>
"@@.npc_rpg_warlock;You were so shy tonight! You need to come out of your shell and be more daring!@@"
<<case 3>>
<<if $npc_technician.flags.rpg_campaign.session != 5>>
"@@.npc_barista;Like, you totally need to do more during game, you're so cute and your character is so fun, you need to get in there!@@"
<<else>>
"@@.npc_maid;Buck up a bit and maybe try to be a bit more active next game.@@"
<</if>>
<<default>>
ERROR: bad random
<</switch>>
<<else>>
Another successful session in the books you spend a few minutes reminiscing about highlights as everyone get's prepared to leave.
<</if>>
Everyone packs up and says their goodbyes leaving just you and <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
<<printThought $player 'I bet she would appreciate me staying to "help."'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' 'Stick around to assist with cleanup.' $scene.stepLength>>]<br>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
<</if>>
</div>/*#
#desc: arrive/start 4th campaign session (race to negotiate peace treaty)
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 3>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Riding the fastest horses available you race towards the Kingdom of Khmet. Though the ambassador's guilt is lacking all but a confession you gallop towards the border in hopes that he was a mere rogue element and full scale war may yet be avoided.@@"<br>
<br>
"@@.npc_technician;The weather turns hotter as you approach the desert kingdom of Khmet, it taking a full two days of hard riding to reach the border where you are greeted by a sizable force. It would appear word of the regent's mobilization has preceded you and you find yourself being tensely escorted towards a meeting with the general who acts as defender and administrator for the border region.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_4_1' "Continue" 0>>]
</div>/*#
#desc: failed race to prevent war
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;The meeting with the general is a tense one. You lay out the evidence gathered against their ambassador but she claims to wish only peace between the kingdoms, that her marshalling forces are only to defend their lands against the forces gathering across the border.@@"<br>
<br>
"@@.npc_technician;Excusing herself to magically communicate with the Pharaoh and her other superiors she leaves you to wait nervously in the heart of her fortress.@@"<br>
<br>
"@@.npc_maid;This stink of a setup to anyone else?@@"<br>
<br>
"@@.npc_barista;Yea, like, I calculate a 37% chance that she's going to betray us, and a 72% chance that this whole war has been concocted for nefarious reasons.@@"<br>
<br>
<<printThought $player "How does she have such precise numbers for such subjective story notes?">><br>
<br>
Even if you still find <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> spouting probabilities a bit jarring you've also learned that she's savant-like in her accuracy.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_4_2' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: option to fight back against being captured
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_demon_hood">>
<<wearItem $player $now "rpg_succubus_demon_hood" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;The general returns trailed by several guards and you immediately sense something is wrong.@@"<br>
<br>
"@@.npc_technician;By the power invested in me by our divine ruler, Pharaoh Kyassia I place you under arrest for your part in the conspiracy against our ambassador and bringing us towards war.@@"<br>
<br>
The party starts rolling for initiative as you consider what you're going to do.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Attempt to put the guards to sleep so that you might make your escape.' $scene.stepLength>>]<br>
<<case "elf_priestess">>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Prepare to heal the party while pleading for a less combative solution.' $scene.stepLength>>]<br>
<<case "bard">>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Whip out your axe and get ready to rock.' $scene.stepLength>>]<br>
<<case "druid">>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Shift into your battle form to better resist arrest.' $scene.stepLength>>]<br>
<<case "succubus">>
/* NOTE: rpg_session_4_succubus_horns.jpg */
Making a quick pre-combat roll <<=setup.getNpcName('npc_rpg_warlock', 'character')>> announces that she is unleashing your full demonic form for the battle ahead, producing from her bag a latex hood that she pulls over your face.<br>
<br>
Tightly covering you save for eyes and mouth the hood is finished off with a pair of inflatable horns. A quick (well, accounting for your hobbled gait) trip to the bathroom to check yourself in the mirror confirming that you are looking quite devilish indeed.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Show your would-be captors the power of all nine hells.' $scene.stepLength>>]<br>
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
[<<moveTo 'event_rpg_campaign_session_4_3_passive' 'Surrender and go quietly.' $scene.stepLength>>]
</div>/*#
#desc: fight back against capture
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_arm_bondage">>
<<wearItem $player $now "rpg_succubus_arm_bondage" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Your initial cast manages to send a handful of guards into slumber but more continue to stream in through the door.<br>
<br>
The battle is long and hard-fought but, steadily, the party is pushed back, systematically isolated and brought down. The general taking on both <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> at once the other guards stream past towards you and your fellow casters.<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> is the first to fall unconscious, but the lost of her bardsong is a snowball effect as <<=setup.getNpcName('npc_rpg_warlock', 'character')>> is unable to maintain her channelled spells without the boost to concentration, brought low shortly after.<br>
<br>
Your own capture happens after your robes are almost shredded by the guards' sharp khopeshes, leaving you dressed in naught but your stockings and skimpy, barely "decent" rags as the remaining two partymembers are surrounded and forced to surrender.<br>
<br>
Clapped in irons you are all taken into custody and escorted down into the dungeon.
<<case "elf_priestess">>
Standing back with the other casters you pump heals into <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> as they try to hold back the enemy forces. Unfortunately the general alone seems nearly a match for the warrior/barbarian team and some of the guards start to circle around to start flanking you and the other squishies.<br>
<br>
With all five of you now taking damage you start falling behind, finally resorting to declaring that you're going to overload your biggest heal in a last-ditch attempt to pull the party through.<br>
<br>
Rolling a critical success for power your luck swings the opposite direction as the die comes up critical fail on the control roll.<br>
<br>
"@@.npc_rpg_dude;Wow, what are the odds?@@"<br>
<br>
"@@.npc_barista;A quarter of a percent, like, duh!@@"<br>
<br>
"@@.npc_technician;Aaannnyway, you can feel the energy sparking inside of you as you prepare the spell, the burning heat of your devotion to your deity coursing through you as powerful as you've ever felt. Unfortunately it turns out to be a bit too much power and you cry out in intense orgasm, unleashing a wave of lust that floods the room. As you writhe on the ground in chain orgasm the sympathetic connection between you and the rest of the party causes them to be effected almost as badly, the scattered guards who manage their saving throws easily restraining the lot of you by the time your overloaded spell fades.@@"<br>
<br>
Wincing you apologise to the group for your screw-up but they take it in stride.<br>
<br>
"@@.npc_maid;To tell the truth I think this was one of those "railroaded into prison" scenes anyway.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> glares at <<=setup.getNpcName('npc_maid', 'first')>> before continuing with the narration of the chained party being escorted down into the dungeon.
<<case "bard">>
The party fights their best but you're outnumbered and cornered and one by one your fellow adventurers are knocked unconscious.<br>
<br>
With the lowest hp and armour <<=setup.getNpcName('npc_rpg_warlock', 'character')>> is the first to fall, her defeat sending <<=setup.getNpcName('npc_maid', 'character')>> into turbo-berserk mode that, though it has her pushing the general back, eventually has her burn out and faint.<br>
<br>
Down to three <<=setup.getNpcName('npc_barista', 'character')>> sings her heart out but is felled soon after, and then it is <<=ps(setup.getNpcName('npc_rpg_dude', 'character'))>> turn, the seemingly indestructible warrior finally running out of hp. Despite it all... you remain standing, your dice on an ungodly hot streak as you dodge and weave and continue to fight back.<br>
<br>
The whole party is rallying behind you as you manage to pull off another unlikely manoeuvre, <<=setup.getNpcName('npc_barista', 'first')>> excitedly shouting out the mind-boggling low chance of your chain to date.<br>
<br>
Looking a little annoyed <<=setup.getNpcName('npc_technician', 'first')>> announces a fresh wave of caster's arriving to support the rapidly depleting guard forces. Still, you triumph, rolling a near-perfect save that, combined with your rolling "showstopper" bard performance bonus has you dancing away from the magical tendrils as you stage-dive roll away from the general's swinging blade.<br>
<br>
On the edge of your seat as you use your musical powers to disrupt the casters <<=setup.getNpcName('npc_technician', 'first')>> finally throws in the towel and declares that the Pharaoh's elite DEAF eunuch guards appear, their nigh immunity to your abilities finally sufficient to see you cornered and captured.<br>
<br>
Stripped of your axe and chained up with the rest of the party you are escorted down to the dungeon.
<<case "druid">>
You shift into battle form and let out a roar. Knocking guards aside left and right you and <<=setup.getNpcName('npc_rpg_dude', 'character')>> start clearing a path towards the exit so that the party can flee.<br>
<br>
With <<=setup.getNpcName('npc_maid', 'first')>> manages to occupy the general while the rest of the party sings and casts support spells you're making good progress until an enemy caster appears and summons a lady bear... a very SEXY lady bear.<br>
<br>
"@@.npc_technician;I'll be needing a self control roll.@@"<br>
<br>
You silently swear, "self control" isn't exactly how this character was built, more... the exact opposite.<br>
<br>
As expected you fail the roll, hard, your animalistic lusts taking over as you ditch the battle to enthusiastically mount the she-bear, the party's fortunes swiftly reversing as you fuck on obliviously, not coming down from your sexual frenzy until the party has been captured and, post-orgasmically spent you are chained as well, meekly following along on the way down to the dungeon.
<<case "succubus">>
You're a bit wide-eyed at the bonuses you've got from having your full infernal powers "unleashed" and you quickly put your abilities to work, your lusty powers turning many of the enemy guards to your side as what might have been a one-sided slaughter turns into a pitched free-for all as the party attempts to battle through the melee of guards attempting to capture you and others willing to die to gain your favour.<br>
<br>
Things are going swimmingly as you revel in your power until a robed nun appears. With a borderline orgasmic cry she summons forth an angelic being, its heavenly beauty the equal to your own, its light burning you and shaking your control over your minions.<br>
<br>
<<=setup.getNpcName('npc_maid', 'character')>> tries to leap to your defence but she is cast aside with ease by her pure-blooded better, the combination of the highly skilled General, the angelic being and the hordes of guards soon proving too much for the party. Soon your are all chained, bound and escorted down to the dungeon.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_5' 'Continue.' $scene.stepLength>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_4_4' 'Continue.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: surrender to capture
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = false>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_arm_bondage">>
<<wearItem $player $now "rpg_succubus_arm_bondage" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
Without your help the battle is a one-sided rout, the swarming guards swiftly overpowering the rest of the party. Despite your cooperation, which the General thanks you for, you are still put in chains along with the party as the lot of you are escorted down the dungeon.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_5' 'Continue.' $scene.stepLength>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_4_4' 'Continue.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: finish up session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Alright, we'll pick things up next game with that golden classic, escape from prison! Sorry about the bit of railroading but I promise it'll pay off. I've got something... special planned for next week's session.@@"<br>
<br>
"@@.npc_barista;Oh, speaking of that, I, like, have a job scheduled for next week, so I won't be able to make it, sorry!@@"<br>
<br>
The group takes things in stride, wishing her luck before turning packing things up.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
Deflating your horns <<=setup.getNpcName('npc_rpg_warlock', 'first')>> peels off your hood, the air on your skin feeling cool and strange after being in latex for the past few hours. She quickly unlocks the rest of your restraints with a wink as her boyfriend packs up the rest of their things.<br>
<br>
<</if>>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' $scene.stepLength>>]
</div>/*#
#desc: arrive/start 5th campaign session (prison escape w/chastity)
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<addItem "rpg_steel_restraints">>
<<wearItem $player $now "rpg_steel_restraints" true>>
<<set $scene.session_num = 4>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
Barely suppressing a cheshire grin <<=setup.getNpcName('npc_technician', 'first')>> reveals the "surprise" she has for the session.<br>
<br>
"@@.npc_technician;Alright, so since you're all in prison in game, well... I've got a few extra accessories.@@"<br>
<br>
With a flourish she pulls aside a blanket draped over the chair <<=setup.getNpcName('npc_barista', 'nickname')>> usually sits in to reveal matching sets of steel restraints - wrist and ankle cuffs linked by chains.<br>
<br>
"@@.npc_technician;Ta-da! Alright ladies... and gent@@" she adds with a nod toward <<=setup.getNpcName('npc_rpg_dude', 'first')>> "@@.npc_technician;time for you to get locked up and us to get started!@@"<br>
<br>
There's a bit of jovial eye-rolling as your three fellow players reach for their respective set of cuffs and lock them in place.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
You're already restrained but you add the cuffs on just above your existing leather restraints. From the smile on <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> face as she looks down at you you're a little afraid the weighty steel restraints are might be added as "standard" going forward.
<</if>>
<br><br>
"@@.npc_technician;A captive audience! I love it!@@" She states with a smile, "@@.npc_technician;only... there's one little bit left to make things EXTRA fun.@@"<br>
<br>
Grinning ear to ear she pulls the blanket back further to reveal a set of four steel chastity cages in varying sizes.<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> is the first to get things rolling his eyes in amusement before grabbing two of the cages, though, interestingly, not <<if ($scene.cage != "") && ($player.penisssize>=4) >>either of the large ones<<else>>the largest one<</if>>.<br>
<br>
Kneeling down in front of his girlfriend he gently locks her away before giving her small caged member a delicate kiss before unzipping his pants and waiting for her to do the same. Of average size he's a bit tumescent but <<=setup.getNpcName('npc_technician', 'first')>> is prepared, handing over an ice pack that <<=setup.getNpcName('npc_rpg_warlock', 'first')>> uses to get him back in line before locking him away.<br>
<br>
Watching the whole display with mild amusement <<=setup.getNpcName('npc_maid', 'first')>> remains in her seat, looking sideways at <<=setup.getNpcName('npc_technician', 'first')>> as if to say "really?" <br>
<br>
"@@.npc_technician;Oh come on, it's all in good fun!@@"<br>
<br>
Shaking her head <<=setup.getNpcName('npc_maid', 'first')>> finally leans over to grab <<if ($player.penissize>=4)>>one of the large cages<<else>>the largest cage<</if>>.<br>
<br>
"@@.npc_maid;Fine, but be ready to catch your cute girlfriend if she faints, ok?@@"<br>
<br>
Before you can puzzle out what she meant by that she's hiking up her skirt to reveal cute, bulging panties. Pulling them down reveals a <<if ($player.penissize>=4)>>cock a little larger than your own substantial member!<<else>>quite large cock<</if>>.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
You can't help but stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> crotch monster, entranced by its luscious size...
<<else>>
You can't help but stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> crotch monster, looking big and beautiful betwixt her thighs.
<</if>>
<<else>>
You try not to stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> crotch monster, but there's really no way to resist stealing at least a bit of a glance...
<</if>>
<br><br>
Wincing a little she fumbles a bit before fitting into the large, but still too-small prison. All eyes are finally on you.<br>
<br>
"@@.npc_maid;Come on, I wanna get started so I can get out of this thing.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_1' "Continue." $scene.stepLength>>]
</div>/*#
#desc: arrive/start 5th campaign session (prison escape w/chastity)
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.skirt = setup.analyzeWornTags(['skirt','pants'])>>
<<if $scene.cage == "">>
<<if $player.timebased.horny >=50>>
<<set $player.timebased.horny = 49>>
<</if>>
<<addItem "c_cage_steel">>
<<wearItem $player $now "c_cage_steel" true>>
<</if>>
<<set $scene.session_num = 4>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cage != "">>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
Bound as you are you are helpless to resist as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> "helpfully"
<<switch $scene.skirt>>
<<case 'skirt'>>
raises your skirt to reveal your
<<case 'pants'>>
pulls down your pants to reveal your
<<default>>
reveals your
<</switch>>
<<=setup.getItemName($scene.cage)>>.
<<else>>
Blushing a bit you
<<switch $scene.skirt>>
<<case 'skirt'>>
raise your skirt to reveal your
<<case 'pants'>>
pull down your pants to reveal your
<<default>>
reveal your
<</switch>>
<<=setup.getItemName($scene.cage)>>.
<</if>>
<br><br>
<<if $npc_technician.relationship.relationship_stage > 1>>
"@@.npc_rpg_warlock;Cheat! You totally got tipped off by your girlfriend, didn't you! Out of character advantage!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> starts to protest but then joins in as the group laughs at the joke.<br>
<br>
<</if>>
"@@.npc_maid;So... looks like that leaves one extra... I think the DM ought to join us in solidarity. It's all in good fun, right?@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> grumbles a bit, but you're pretty sure it's a put-on as she finally acquiesces to the request.<br>
<br>
"@@.npc_maid;Oh, and the key - I mean, it isn't really the same if you can unlock yourself, right?@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 1>>
<<=setup.getNpcName('npc_technician', 'first')>> sighs and hands over a small steel key, only for <<=setup.getNpcName('npc_maid', 'first')>> to pass it to you.<br>
<br>
"@@.npc_maid;Here you go, I think you'll have the most fun deciding when, or if, she gets to come out.@@"<br>
<br>
Your mind swirls with possibility as <<=setup.getNpcName('npc_technician', 'first')>> bites her lip and glances at you with obvious lust as she adjusts herself into a comfortable position seated back behind her DM screen.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> sighs and hands over a small steel key, <<=setup.getNpcName('npc_maid', 'first')>> pocketing it with a smile.<br>
<br>
"@@.npc_maid;There, nice and fair - if you run a good session, I'll let you out if not... well, there's always next week!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> glares back but makes no response as she adjusts herself into a comfortable position back behind her DM screen.
<</if>>
<br><br>
"@@.npc_technician;Alright!, Now... to the game! After your capture you are each placed in separate prison cells in a dungeon deep below the border garrison.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' "Continue." $scene.stepLength>>]
<<else>>
<<if setup.getTotalValue("submission") < 5>>
You gawk at the cage, you want to think this is a joke yet you've just watched the rest of the party expose themselves and put them on as if it was the most normal thing in the world.<br>
<br>
The room having fallen silent attention shifts towards you as you continue to sit motionless.<br>
<br>
"@@.npc_technician;You alright, <<=$player.first_name>>? If this is too much we can-@@"<br>
<br>
"@@.npc_maid;Hell no!@@" <<=setup.getNpcName('npc_maid', 'first')>> states with a grin. "@@.npc_maid;If I gotta get locked up, so does she, no special treatment for the DM's girlfriend!@@"<br>
<br>
You and <<=setup.getNpcName('npc_technician', 'first')>> both blush only for <<=setup.getNpcName('npc_rpg_dude', 'first')>> to step in a bit more delicately. "@@.npc_dude;Lay off, <<=setup.getNpcName('npc_maid', 'first')>>, you're scaring her!@@" He reaches for the cage and then hands it to you with a smile. "@@.npc_dude;Come on, it's all in good fun, right?@@"<br>
<br>
<<if $player.timebased.horny >= 50>>
Though everyone is now staring at you their smiles are more encouraging than anything else, even <<=ps(setup.getNpcName('npc_maid', 'first'))>> edge temporarily dulled.<br>
<br>
"Umm..." You start to say as you look at the cage while realizing that your already hard - and still growing <<getWordMyPenis $player>> is not going to fit.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> is the first to twinge what's going on, flashing a leering grin before reaching over to grab between your legs... which only makes you swell more. "@@.npc_rpg_warlock;Yup, just as I suspected, this whole thing is an act! Not a problem we can easily address that issue.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_1a' "Address the issue." $scene.stepLength>>]
<<else>>
Taking a deep breath, and giving a final glance at the encouraging expressions of your friends you take the cage before nervously parting your clothes and installing it in place.<br>
<br>
The cold metal feels a bit weird, and you actually feel yourself swelling inside of it with excitement - though that is shortlived before the unyielding steel puts a stop to any further growth.<br>
<br>
"@@.npc_technician;Alright!, Now... to the game! After your capture you are each placed in separate prison cells in a dungeon deep below the border garrison.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' "Continue." $scene.stepLength>>]
<</if>>
<<elseif $player.timebased.horny >= 50>>
You stare at the cage, not even wanting to stand enough to reach over and grab it lest you reveal the tent that's rapidly being pitched under your clothes.<br>
<br>
The rest of the group back in their seats <<=setup.getNpcName('npc_rpg_warlock', 'character')>> is the first to twinge what's going on, flashing a leering grin before reaching over to grab between your legs... which only makes you swell more. "@@.npc_rpg_warlock;Yup, just as I suspected, this whole thing is an act! Not a problem we can easily address that issue.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_1a' "Address the issue." $scene.stepLength>>]
<<else>>
<<printThought $player "Well, it's not like it's the first time...">><br>
<br>
With a slight sigh you grab the final chastity cage and slip it on, the soft "click" of the lock sending a familiar submissive shiver through your body.<br>
<br>
"@@.npc_rpg_warlock;Well, well, looks like SOMEONE knows what she's doing, lemme guess, you've spent a fair bit of time locked up like a good sissy, haven't you?@@"<br>
<br>
You blush... and nod.<br>
<br>
The rest of the group smiles as <<=setup.getNpcName('npc_technician', 'first')>> restores order to proceed with the game.<br>
<br>
"@@.npc_technician;Alright!, Now... to the game! After your capture you are each placed in separate prison cells in a dungeon deep below the border garrison.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' "Continue." $scene.stepLength>>]
<</if>>
<</if>>
</div>/*#
#desc: deflated + locked in chastity if you were horny
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
Perhaps as an act of chivalry <<=setup.getNpcName('npc_rpg_dude', 'first')>> walks out of the room as the three ladies suddenly converge on you.<br>
<br>
"@@.npc_rpg_warlock;Totally normal issue, you just sit back and let us deal with things...@@"<br>
<br>
Still seated on the couch you're more or less frozen as you stare up at the trio of <<=setup.getNpcName('npc_maid', 'first')>>, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_technician', 'first')>> - maid, goth and sexy librarian forming a sort of peak concentration of fetish.<br>
<br>
"@@.npc_technician;I'm so proud of you participating like this.@@" <<=setup.getNpcName('npc_technician', 'first')>> states as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> removes your clothes to reveal your now VERY erect <<getWordMyPenis $player>>.<br>
<br>
You hold your breath, finding yourself staring back and forth between the three women as <<=setup.getNpcName('npc_maid', 'first')>> accepts a handful of ice cubes from <<=setup.getNpcName('npc_rpg_dude', 'first')>> and, with a taunting grin, brings them towards you.<br>
<br>
The chill on your balls has you wilting almost immediately, letting out a hiss of air at this sudden turn.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> strokes your cheek in comfort. "@@.npc_technician;There there, it'll be finished soon, then we can all get back to the game!@@"<br>
<br>
You bite your lip, staring up at her as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> slides the cold steel chastity cage over your now soft <<getWordMyPenis $player>>. There is a surprisingly loud click as the lock closes and then she is pulling your clothes back into position.<br>
<br>
As swiftly as they had assembled suddenly everyone is back to their seats. You heart is still pounding with excitement as they each flash you a final smile of encouragement before things continue on.<br>
<br>
"@@.npc_technician;Alright!, Now... to the game! After your capture you are each placed in separate prison cells in a dungeon deep below the border garrison.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' "Continue." $scene.stepLength>>]
</div>/*#
#desc: attempt to get out of your cell
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
The group quickly runs through the basics as you examine the predicament you're all in. It is quickly determined that the cells block the external manifestation of magical effects, though localized stuff like passive effects and touch spells still seem to function. Despite being in separate cells you are close enough to communicate... though doing such draws the ire of the guards.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
A pair of passing guards pauses outside of your cell, one of them leering at your half-naked form, the scraps of your robes barely keeping you in the vicinity of "decent." <br>
<br>
The other guard takes pity on you, darting away and then returning to toss you something through the bars and orders you to "put it on." His partner rolls his eyes and moves along as the "helpful" guard stands outside you cell staring in.<br>
<br>
"@@.npc_technician;You aren't sure if the way he's fiddling with his truncheon is because he's aroused, or as a threat if you don't play along.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Strike a sultry pose and see if you can get him to "help."' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Avoid punishment and change into the new outfit.' $scene.stepLength>>]
<<case "elf_priestess">>
Sitting in your cell you hear an ugly, racking cough echoing down the corridor. A few moments later a pair of guards appearing, one of them looking quite under the weather.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Offer to use your magic to heal the ill guard.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Remain silent.' $scene.stepLength>>]
<<case "bard">>
You may not have your axe but you've got your voice and hell, that's enough to start a bit of a ruckus...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Time for some jailhouse rock...' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Remain quietly in your cell.' $scene.stepLength>>]
<<case "druid">>
The magical shackles you are stuck in prevent you from shifting out of your hulking bear form but as you flex you realise they don't seem to be deterring your strength. You eye the cell door, stout by human standards but for you...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Smash your way out.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Wait patiently for something to happen.' $scene.stepLength>>]
<<case "succubus">>
Out of fear of your intimidating infernal powers they seem to have taken extra precautions with you - in addition to your normal restraints you bear a second set of pulsing shackles, robbing you of all of your powers... well, all of your supernatural ones... You still have your unearthly beauty and cunning...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Try to seduce one of the guards.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Wait for something to happen.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: break out of your cell
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character != "succubus">>
<<removeItem $player $now "rpg_steel_restraints" true>>
<<deleteItem $player $now "rpg_steel_restraints">>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Striking a sexy pose you rise to your feet and turn away, glancing at the guard over your shoulder as you let the remains of your robe slide to the floor with a wiggle.<br>
<br>
The outfit looks to be a skimpy top that fastens in the back and a matching simple skirt. Stepping into the skirt you take your time sliding it up your legs before bending over with exaggerated slowness to pick up the top. With faux difficulty you are unable to reach around to close the top, turning around and holding it in place to conceal your chest as you ask if he could help.<br>
<br>
"Sure, just come on over here, honey." He croons as you step closer, he fastens the back only for the outfit to reveal that it is enchanted, the previously loose garment suddenly tightening... and shrinking.<br>
<br>
You gasp in surprise as you find your body swelling to fill it even as the two-piece outfit snugs up around you. By the time it's over you are sporting a butt to kill and a pair of large breasts, all straining to escape from your tight bra and skirt.<br>
<br>
"Oh my!" you state in surprise as you turn back to face the guard, moving closer you ask if maybe he could help you adjust yourself?<br>
<br>
With a wide-grin leer he reaches through the bars to grope your breasts. You take the opportunity to reach back, cupping his cheek under his helmet and unleashing your sleep magic, the guard slumping instantly.<br>
<br>
Lunging forward you're glad all your transformations haven't particularly reduced your natural orcish strength, catching him from falling and quietly holding him in place as you rifle through his pockets for the key to your cell.<br>
<br>
Carefully unlocking the door you dump the guard on your cot, checking the hallway to make sure the coast is clear before quickly freeing the rest of the party.
<<case "elf_priestess">>
The guards look at you with suspicion but you explain that your holy oath requires you to render aid to any who are in need of your... services.<br>
<br>
Deciding that you're just a healer and not really a threat on your own they let you out and bring you back to their guard post.<br>
<br>
Making bed-eyes at the injured guard you have him lean back, unbuckling his pants and bringing your lips to his manhood as you promise that you'll "make everything better..." <br>
<br>
Giving a few gentle sucks you wiggle your rear and turn back towards his compatriot, asking if he could help you "channel more power." Working one at a time you soon have every guard on duty drawn into an orgy, gangbanging you in all three holes, lust, cum, and magical power pumped into you with equal measure.<br>
<br>
Healing the ill guard in passing you keep at it until he, and the rest of the guards, have been exhausted. Finally rising back to your feet and licking your lips you carefully step over their tired, spent bodies and snatch a key to free the rest of the party.
<<case "bard">>
Stretching out a bit you start singing, drumming on the bars and cell walls for accompaniment as you get into the groove, composing on the spot a bawdy tune that insults the guards, their general.<br>
<br>
The acoustics of the prison aren't exactly spectacular but your loud jam is soon echoing through the halls and a couple guards appear at the cell door to tell you to quiet down.<br>
<br>
Shaking your head and backing into your cell you smile and sing louder, diving into a verse about the country of Khmet as a whole and their Pharaoh god-queen Kyassia; getting even more lewd as you continue to needle and rib your captors.<br>
<br>
Faces twisted up in anger the guards scramble for a key, opening the door and rushing in to administer your beating.<br>
<br>
You're ready, of course, twirling over the first guard as you sing-narrate your actions for an additional bonus, rolling into the hallway as you snag the key on the way past.<br>
<br>
Drawing the guards further up the hallway you find yourself at a dead-end, the guards suddenly stopping their approach as you stop your song and merely grin widely.<br>
<br>
"What? Run out of disparaging rhymes for Kyassia?" One of the guards asks with a sneer.<br>
<br>
You grin even wider, noting that no, you just don't need to provide covering sound anymore as you look past the guards to where the rest of the party stands, having emerged from their cells.<br>
<br>
Even unarmed <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> are more than a match for a couple guards, and with a bit of spell and bardic support it isn't long before the guards are tossed into the cell and you take a quick moment to interrogate them for where to find your stuff.
<<case "druid">>
Backing to the far side of the cell you push off the wall and barrel forward with a roar. The first impact merely bends the bars a bit and attracts the guards but, taking a penalty to the self control roll you were going to fail anyway, you jack your strength up even higher and take another shot, blowing the door off its hinges as you crash into the approaching guards.<br>
<br>
Swiping your paws you knock guards left and right, pitching one in the direction of <<=ps(setup.getNpcName('npc_maid', 'character'))>> cage where she quickly rifles through for the keys.<br>
<br>
By the time the rest of the party is out you've finished subduing most of the guards and are having your way with the biggest, burliest one, your thick ursine cock introducing the man to new depths of pleasure as you fuck him straight through his leather armour.
<<case "succubus">>
Leaning out through the bars of your cell you start to make eyes towards one of the guards. With your most seductive voice you beg them to let you go, explaining that you only served <<=setup.getNpcName('npc_rpg_warlock', 'character')>> due to dark magic bindings and that if they would only free you you will gladly turn against your supposed allies.<br>
<br>
Several of the guards are looking quite hot and bothered, even without the added effect of your powers, and finally a trio of them approach your cell. Rather than freeing you they bind you even further, placing your arms behind your back so as to render you all but helpless.<br>
<br>
"@@.npc_rpg_warlock;Oh! I've got just the thing for this!@@" <<=setup.getNpcName('npc_rpg_warlock', 'character')>> states with a grin, producing additional leather restraints to bind your arms behind your back, wrists cuffed in the small of your back with a T-strap linking them and your biceps.<br>
<br>
<<if setup.getTotalValue("bondage") > 10>>
You shudder in your newly-enhanced bonds, having to rally all of your focus to keep your attention on the game rather than descend into submissive fantasies as your body reacts to the oh-so-delightful helplessness of bondage.<br>
<br>
<</if>>
"@@.npc_technician;Aaaanyway@@" <<=setup.getNpcName('npc_technician', 'first')>> states as she shakes her head in amusement, "@@.npc_technician;you are escorted into a small chamber and left alone with what you guess is the prison warden.@@"<br>
<br>
"@@.npc_technician;"Speak, foul demon." The warden commands, "Tell me the evil plans of your summoner."@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_succubus' 'Stick with the "betrayal" storyline.' $scene.stepLength "<<set $scene.betrayal=true>>">>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_succubus' 'Stay loyal to the party and make something up.' $scene.stepLength "<<set $scene.betrayal=false>>">>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.character != "succubus">>
[<<moveTo 'event_rpg_campaign_session_5_4' 'Continue.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: wait in cell for party to rescue you
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = false>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_arm_bondage">>
<<wearItem $player $now "rpg_succubus_arm_bondage" true>>
<</if>>
<<removeItem $player $now "rpg_steel_restraints" true>>
<<deleteItem $player $now "rpg_steel_restraints">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Shedding your robes you put on the new outfit, only somewhat surprised to discover that the initially loose, ill-fitted garments are magic, molding themselves to your body as they tighten into place as a short skirt and a skimpy top.<br>
<br>
The ACTUAL surprising part is that they don't just shift to match you, they mold your body to themselves, your butt and breasts swelling to head-turning size, straining against the stretched fabric of your new attire.<br>
<br>
Leering at you the whole time the guard laughs in amusement before walking away.<br>
<br>
You hear a sound up the hall, peeking out between your cell to spot <<=setup.getNpcName('npc_maid', 'character')>> having knocked the guard unconscious, holding him up with one strong arm as she searches for the key.
<<case "elf_priestess" "bard" "druid" "succubus">>
You sit quietly as the guards continue on only to hear a pair of THUNKs from up the hall.<br>
<br>
Popping your head out between the doors to your cell you watch as <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> work in synchronization to rifle through the knocked-out guards' pockets for keys, dumping the subdued men back in their cells before setting to work freeing the party.<br>
<br>
"@@.npc_maid;Alright, we're out.@@" She announces after unlocking the rest of the party and sending <<=setup.getNpcName('npc_rpg_warlock', 'character')>> dashing up the hallway to neutralise the remaining guards with an infernal howl.<br>
<br>
"@@.npc_technician;Ah, but only partway!@@" <<=setup.getNpcName('npc_technician', 'first')>> replies, handing out keys to your cuffs while retains control of the chastity keys.<br>
<br>
"@@.npc_rpg_warlock;Well then. I guess it's time to make our escape, we search for where they put our stuff.@@"
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<br><br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> frowns as you finish removing your restraints.<br>
<br>
"@@.npc_rpg_warlock;No, no, that won't do. You failed to help with the escape so... I think you need to spend a bit longer restrained.@@"<br>
<br>
She produces some more leather cuffs, strapping your wrists behind your back, your upper arms attached together as well to make the bondage even more stringent.
<</if>>
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_5_4' 'Gather your gear and get out.' $scene.stepLength>>]
</div>/*#
#desc: wait in cell for party to rescue you
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = false>>
<<if setup.isItemEquipped("rpg_steel_restraints")>>
<<removeItem $player $now "rpg_steel_restraints" true>>
<<deleteItem $player $now "rpg_steel_restraints" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $scene.betrayal>>
Spinning a yarn you beg the warden to free you by way explaining that the foul assassins that summoned you had planned to murder the Pharaoh. You state that you will gladly switch loyalties if the demonic pact that binds you to the warlock can be severed.<br>
<br>
When asked how to do that you attempt to talk her into removing your restraints only to be interrupted by a commotion outside the room.<br>
<br>
Smashing the door to pieces <<=setup.getNpcName('npc_maid', 'character')>> knocks the warden across the room and into unconsciousness.<br>
<br>
Peeking around the hulking barbarian <<=setup.getNpcName('npc_rpg_warlock', 'character')>> smiles at you.<br>
<br>
"@@.npc_rpg_warlock;Come along, pet, you aren't escaping my clutches that easily... but as penance you can keep that lovely arm restraint; it isn't like any of your supernatural abilities have somatic components.@@"
<<if setup.getTotalValue("bdsm") > 10 && setup.getTotalValue("submission") > 10>>
<br><br>
While the actual game continues on you find yourself fantasizing about your party members reacting much more harshly. In your extended "bonus" scene <<=setup.getNpcName('npc_maid', 'character')>> casts you to the ground under the watchful gaze of your warlock Mistress. The half-divine cock burns as it thrusts into you but your cry of pain is muffled as <<=setup.getNpcName('npc_rpg_dude', 'character')>> shoves her cunt into your face, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> conjuring a spectral whip and adding lashes of a eldritch power to rake your body as you are fucked and forced to serve "making up" to the party for your failure for an indeterminate period of time before, with cum covering your face and flowing down your leg you are finally drug to your feet and forced to accompany them in the continued escape.<br>
<br>
Back in the real world you notice the table staring at you, as you quickly mumble something to the effect of your continuing on with the party as meekly rejoin the game.
<</if>>
<<else>>
Rising to your feet you approach the warden with a smile, telling her how grateful you would be if she could only loosen your restraints...<br>
<br>
Her gaze tinged with lust she tries to resist you, backing away telling you to sit down, but the room is too small. Before she realises it you have backed her into a corner, leaning in for a kiss, the touch of your lips against hers allowing you to bring your full powers to bear.<br>
<br>
She practically melts under the fire of your demonic lusts, only staying standing due to how tightly you press her against the wall. Pinched in place she shudder and bucks, cumming once before you separate. Her eyes unfocused and glassy you command her to free your compatriots.<br>
<br>
"@@.npc_technician;"Yes, Mistress..." she replies.@@"<br>
<br>
<<if $npc_technician.relationship.her_role == "dom">>
<<printThought $player "Oh shit, even in-game that turns me on to hear her say that...">><br>
<br>
<<elseif $npc_technician.relationship.her_role == "sub">>
<<printThought $player "It's so weird to be on this side of that phrase...">><br>
<br>
<</if>>
<<if setup.getTotalValue("bdsm") > 10>>
<<set $player.timebased.horny += 20>>
Time seems to slow down as you revel in the moment. Despite your real life restraints you find yourself pulsing with dominant energy simultaneously entranced by both sides of the coin, in control and yet helpless. Pulse pounding in arousal you try to focus back on the game as you narrate your actions... even as you find yourself fantasizing about taking a few extra minutes to further use and abuse the enslaved warden...<br>
<br>
<</if>>
Taking you by the still-bound arm the warden leads you back towards the cells, "accidentally" dropping her key as she passes one of your compatriot's cells. The three of them swiftly free themselves and subdue the remaining guards.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> manages to remove your initial bindings and restore your powers but the "bonus" restraints holding your arms remain stubbornly in place.<br>
<br>
"@@.npc_technician;Only... a priestess...@@" Is the response you get from the lust-addled warden when you try to find out how to remove the final restraint. With a sigh you give up for the moment, none of your supernatural abilities have a somatic component so it really isn't a major in-game disadvantage.
<</if>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_5_4' 'Gather your gear and get out.' $scene.stepLength>>]
</div>/*#
#desc: finish session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.was_caged = ($scene.cage != "")>>
<<if $npc_technician.relationship.relationship_stage == 0 && !$scene.was_caged>>
<<removeItem $player $now "c_cage_steel" true>>
<</if>>
<<if setup.getTotalValue("submission") < 5>>
<<setThreshold 'submission' 'roleplay' 'session_5' true>>
<<set $scene.subthreshold = true>>
<<else>>
<<set $scene.subthreshold = false>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
"@@.npc_maid;Alright, we're out.@@" <<=setup.getNpcName('npc_maid', 'first')>> announces now that the whole party is unlocked and <<=setup.getNpcName('npc_rpg_dude', 'character')>> has neutralise the remaining guards with an infernal howl.<br>
<br>
"@@.npc_technician;Ah, but only partway!@@" <<=setup.getNpcName('npc_technician', 'first')>> replies, handing out keys to your cuffs while retaining control of the chastity keys.<br>
<br>
The party spends a few minutes to re-equip after locating your weapons and armour and then heads back up towards the ground floor when you meet the ambassador coming the other direction.<br>
<br>
Taking him by surprise he barely has a chance to yelp before you've taken him prisoner. Holding him at sword-point you ask for an escape route.<br>
<br>
"I'll help you escape, just please, don't frame me again!" he replies, shaking in fear.<br>
<br>
"@@.npc_rpg_warlock;Frame? The poison exactly matched the Princess' ailment, are you saying it was planted in your room? Tell us the truth or I will rip it from your soul!@@"<br>
<br>
"Technically, not planted... but stolen! But that is immaterial; Hapatra's venom is not slow acting, it kills within two days, for her to be ill for that long she would have to have been taking carefully measured doses the whole time!" <br>
<br>
The realization comes simultaneously - someone must have framed the whole thing... perhaps the regent hoping to fully cement his hold on the throne?<br>
<br>
Noticing your collective surprise the ambassador seems greatly relieved, offering the use of the garrison's teleporter to send you directly back to the castle to clear his name and stop the war. It is a tense few minutes as a general alarm of your escape sounds and you are forced to race to the teleportation room and hold off a fresh wave of guards until <<=setup.getNpcName('npc_rpg_warlock', 'character')>> can power up the portal but finally you escape.<br>
<br>
You arrive back at the castle to find things in shambles. The regent is dead and the princess has already ridden off towards the border with her elite guard.<br>
<br>
"@@.npc_technician;Sorry, but it looks like your princess is in another castle...@@" She states with a smile, the ancient meme met with a chorus of groans.<br>
<br>
"@@.npc_maid;Sure, but... this still counts as escaped, right?@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> hands out the chastity keys with a wry smile at the look of relief on <<=ps(setup.getNpcName('npc_maid', 'first'))>> as she lets herself out.<br>
<br>
"@@.npc_maid;Next time? Larger size. Or do I need to give you a reminder lesson again on how big I am?@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> blushes and bites her lip while <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_rpg_dude', 'first')>> laugh as they let each other out (and, you notice, tuck the cages back in <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> bag).<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<if $npc_technician.relationship.keyholder || !$scene.was_caged>>
"@@.npc_technician;Hmm, as for you my dear... well, I promise to let you out eventually... if you're good.@@"
<<if $scene.subthreshold>>
<br><br>
You tremble slightly, realizing just how much power she has over you thanks to her and her friends locking you up at the start of the session.
<</if>>
<<else>>
"@@.npc_technician;Sorry my dear, you're just going to have to stay locked up and out of trouble.@@"
<</if>>
<<else>>
<<if $scene.was_caged>>
"@@.npc_technician;Sorry about the lack of verisimilitude, but for all my manifest powers, I don't have your key.@@"
<<else>>
<<if $scene.subthreshold>>
You nervously grab the key, pent up emotions at having been locked up by three beautiful women - with a male witness to boot slamming into you. In a burst of speed you run for the bathroom, removing the cage in privacy before emerging to, blushingly, pass it back to <<=setup.getNpcName('npc_technician', 'first')>> who just smiles.<br>
<br>
A flutter goes through your body at her touch as you place the cage and key back in her hand.<br>
<br>
<<printThought $player "That was intense, I can't imagine what it would be like to be locked for longer, or if she hadn't given me back the key...">>
<<else>>
You're the last to grab your key, sighing in relief, and swell with excitement once you have it off.<br>
<br>
<<printThought $player "Well, at least it wasn't for as long as I'm usually stuck for.">>
<</if>>
<</if>>
<</if>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_6' 'Continue.' $scene.stepLength>>]
<<else>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus" && $npc_technician.flags.rpg_campaign.session <= 7>>
<<if $npc_technician.relationship.relationship_stage > 0 && $npc_technician.relationship.her_role == "dom">>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> begins removing your restraints per usual but <<=setup.getNpcName('npc_technician', 'first')>> stays her hand with a devious grin.<br>
<br>
"@@.npc_technician;No... I think I'd like to get a bit more use out of those tonight. You mind if I return them to you sometime this week?@@"<br>
<br>
"@@.npc_rpg_warlock;Of course!@@" She states with a grin, cinching a buckle closed before turning back to you. "@@.npc_rpg_warlock;You lucky girl.@@" She whispers in your ear before giving you a peck on the cheek and heading out with her boyfriend.
<</if>>
<</if>>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: arrive/start 6th campaign session (chase)
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 5>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
The castle is pandemonium but it doesn't take long to find out what happened; shortly after you left the regent was slain, right in front of the princess herself!<br>
<br>
Swearing revenge the fully recovered Princess had gathered her loyal royal guards and set out, her destination: the seat of power of the Pharaoh Kyassia.<br>
<br>
Recalling what happened the last time you attempted to enter the kingdom of Khmet the party decides to take a more measured approach, gathering intel and equipment rather than charging off straight away.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_1' "Get prepared to follow after the princess." 0>>]
</div>/*#
#desc: discover princess is big bad, trail the princess across nations + gear up for final confrontation
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.character == "orc_mage" && $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][2]>>
Finding your friend the court magician she leaps into your arms to embraces you passionately, obviously grateful to see you returned and unharmed.<br>
<br>
You gently place her back on the ground as she composes herself and addresses the party as a whole.
<<else>>
Most of the castle dwellers having no idea what is actually going on so you seek out the court mage.
<</if>>
<br><br>
Almost in tears she gives you a brief history lesson. When she was younger the princess was to be betrothed to the Pharaoh Kyassia but then her parents died suddenly, the regent not allowed to make such decisions and thus, the arrangement did not go through.<br>
<br>
Despite it not being official the Princess and the Pharaoh had maintained a clandestine arrangement, but by then the regent had refused to relinquish power and now...<br>
<br>
The sorceress explains how she had recently sensed a darkness in the princess, what she had first blamed on the Princess' illness but now... she knows not for what purpose the princess rides to Khmet, but she fears for both kingdoms.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Remarking that the princess had long been her precocious student the sorceress recommends a stealthy approach, offering one of the princess' outfits, the magic woven through it designed for leading a stealthy army, granting the wearer and their companions greater speed and stealth whence traveling overland.<br>
<br>
The outfit is... very skimpy, more jewel than fabric and you reflect on your previous history with clothing...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Accept the gift and put on the new outfit.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Thank her, but decline.' $scene.stepLength>>]
<<case "elf_priestess">>
Recalling your shared "time" with the princess the court magician notes that she might be able to utilize that sympathetic connection to attempt to track the fled royal. Though there is some risk of the same link being turned back on you.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Take part in the ritual.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Play it safe and decline.' $scene.stepLength>>]
<<case "bard">>
You stumble a bit as to how to help only to notice that you have the skill "bardic lore." It seems a bit of a longshot but maybe you could use it to figure out something about what's going on?<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Roll for bardic lore.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Just stay quiet and leave things to the rest of the party.' $scene.stepLength>>]
<<case "druid">>
The party spends most of the session gathering forces, recruiting what army remains at the castle as well as a handful of mercenaries. Geared up and heading for the border you suddenly remember that you have a flying form that you have yet to use, perhaps you could help guide the party's approach from above?<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Be the eye in the sky.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Stick with the party.' $scene.stepLength>>]
<<case "succubus">>
You're trying to think of what you might do to help when you point out to <<=setup.getNpcName('npc_rpg_warlock', 'first')>> that, bound as you are, it's kind of difficult to roll the dice.<br>
<br>
"@@.npc_rpg_warlock;Oh, I have just the thing!@@" She states with a smile, producing a butt plug... that happens to have a D20 contained in a clear bubble at its base.<br>
<br>
"@@.npc_rpg_warlock;Bend over!@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Play along.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Refuse.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: actively prepare for final battle
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<if $scene.plug != "">>
<<removeItem $player $now $scene.plug true>>
<</if>>
<<if setup.getTotalValue("anal") > setup.getItemObj("dice_anal_plug").effect.anal>>
<<set $scene.dice_plug = "dice_anal_jumbo_plug">>
<<else>>
<<set $scene.dice_plug = "dice_anal_plug">>
<</if>>
<<addItem $scene.dice_plug>>
<<wearItem $player $now $scene.dice_plug true>>
<<if $scene.plug != "">>
<<set $scene.sizedelta = setup.getItemObj($scene.dice_plug).effect.anal - setup.getItemObj($scene.plug).effect.anal>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Your new outfit makes Princess Leia in slave girl attire seem overdressed, especially as it seems to dissolve all other clothing save your stockings, leaving you lewdly exposed, your body swelling to almost cartoonish feminine proportions. Despite it all the magic imbued into it actually gives you a better armour class than most of the party, as well as strengthening your spellcasting as a whole.<br>
<br>
You IRL shake your head at this culmination of your magical girl transformation from burly half-orc mage to lovely feminine half-orc sexy sorceress.
<<case "elf_priestess">>
To "focus" the power of the ritual you find yourself once again in Princess Hedina's bed. Of course this time it is you on your back, bound in place for reasons you aren't totally sure are strictly required for the ritual, one end of a double dildo occupying your cunt whilst the other fills the court mage riding on top of you. <<=setup.getNpcName('npc_barista', 'character')>> "reprises" her role with her delicate elven cock resting between your lips.<br>
<br>
Breathless with desire the sorceress rides you while chanting louder and louder. The magic swells until, just as you orgasm, you receive a vision of the Princess' plans.<br>
<br>
Standing atop the tallest pyramid you have ever seen the Princess appears to be preparing a ritual. A regally dressed woman who you guess must be the Pharaoh Kyassia is bound and gagged atop an alter, a magical storm swirling as the Princess chants, her eyes glowing with demonic power.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
As <<=setup.getNpcName('npc_technician', 'first')>> describes your in-game "vision" you find yourself fantasizing further about the ritual itself, how wonderful it would feel to submit to such a thing in real life, to taste <<=ps(setup.getNpcName('npc_barista', 'character'))>> delicious cock while you savor the shared intimacy of double penetration, writhing in pinned, submissive joy as you imagine re-enacting such in real life... perhaps mixing things up with your lips wrapped around <<=setup.getNpcName('npc_technician', 'first')>> while you share a dildo with the bubbly <<=setup.getNpcName('npc_barista', 'first')>>... Caught up in the fantasy your hands reach out to jerk off <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_rpg_dude', 'first')>> both, the game forgotten as things descend into a sissy gang-bang orgy...<br>
<br>
With a jolt you return to reality, blushing as <<=setup.getNpcName('npc_technician', 'first')>> concludes her narration, hoping nobody noticed your momentary distraction.
<</if>>
The vision ends and the sorceress slides off of you, gasping as she tries to recover.<br>
<br>
"You must stop her! I do not know what evil thing has possessed my lady but if she sacrifices the Pharaoh... the results could be calamitous!"
<<case "bard">>
Announcing your intent to use bardic lore you crush the initial roll with a crit and than a high success for the follow-up.<br>
<br>
"@@.npc_barista;Wow, way to beat the odds. There's less than a three and a half percent chance of nailing a bardic knowledge check to that degree!@@"<br>
<br>
Rolling your eyes you look towards <<=setup.getNpcName('npc_technician', 'first')>> along with the rest of the party.<br>
<br>
"@@.npc_technician;Ok, so you remember a legend of a great demon that was defeated by the first Pharaoh of Khmet. A great and power sorceress she yet could not destroy the evil being, instead imprisoning it in a far away land deep, deep in the earth.@@"<br>
<br>
"@@.npc_technician;Still in the room as you relay this story to the party the magician speaks up. "So, uh... I didn't realise this was relevant before but... about six months ago, right before her parents died, the princess was part of a delegation to the dwarves. While there she visited one of their newest, deepest mine that had uncovered an unprecedented vein of so-called demons-blood iron..."@@"<br>
<br>
"@@.npc_rpg_warlock;If we're going up against an ancient demon lord...@@"<br>
<br>
"@@.npc_rpg_dude;This shit gonna be epic!@@"<br>
<br>
The pair of them grin, even <<=setup.getNpcName('npc_maid', 'first')>> getting in on the enthusiasm as the party makes plans and works to gather as much of an army as they can to head towards the confrontation in Khmet.
<<case "druid">>
With <<=setup.getNpcName('npc_rpg_warlock', 'character')>> establishing a telepathic link you soar high above your makeshift army, carefully guiding your forces to evade patrols as you sneak across the border and sprint for the capital.
<<case "succubus">>
<<if $scene.plug != "">>
Exposing your bottom you moan softly as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> gives your current occupant a little wiggle before sliding it out and replacing it with its
<<if $scene.sizedelta > 5>>
massively smaller
<<elseif $scene.sizedelta > 3>>
much larger
<<elseif $scene.sizedelta > 0>>
slightly larger
<<elseif $scene.sizedelta < 0>>
slightly smaller
<<elseif $scene.sizedelta < -3>>
much smaller
<<elseif $scene.sizedelta < -5>>
massively smaller
<<else>>
identically sized
<</if>>
replacement.<br>
<br>
<<if setup.getItemObj("dice_anal_plug").effect.anal >= setup.getTotalValue("anal")>>
You gasp and pant, scarcely believing you managed to take something so large, very tenderly sitting back on your haunches as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> coos congratulations into your ear.
<<else>>
You take a deep breath as you adjust to your new anal occupant, the weight of it a bit odd as it seems to want to wiggle almost on its own. Settling back you smile up at <<=setup.getNpcName('npc_rpg_warlock', 'first')>> to let her know everything is ok.
<</if>>
<<else>>
You expose your bottom and let out a little gasp as the plug slips into your rear, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> gives it a little wiggle before pulling on your leash to guide you back to your knees.
<</if>>
<br><br>
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_6_3' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: wallflower your way through the session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = false>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage" "elf_priestess">>
Though you turn down the court magician's initial offer of magical assistance she helps the party gather some additional forces before accompanying you as you head back towards the unknown of Khmet.<br>
<br>
At the border the magician lends her aid a final time, channeling a spell to allow you to sneak across before being forced to stay back and recover as you and the rest of your forces race across the desert sands towards the capital.
<<case "bard" "druid" "succubus">>
After gearing up and assembling what army you can the party and the court magician head for the border once again and whatever unknown dangers lure at the heart of the kingdom of Khmet.<br>
<br>
At the border the magician lends her aid a final time, channeling a spell to allow you to sneak across before being forced to stay back and recover as you and the rest of your forces race across the desert sands towards the capital.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_6_3' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: finish up session, psyched for final fight next session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num]>>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You help the rest of the party gather supplies and even rally together a mix of mercenary and other forces before you set out towards Khmet.<br>
<br>
With the aid of your "armour" you cross the border unmolested, wending through the dunes until you reach the castle. Looking up to the top of the great pyramid you can see a magical storm gathering, whatever the princess has planned, it is in progress. Unfortunately this close to the Pharaoh's seat of power your shrouding spell falters and fades, and you look up the great steps of the pyramid at an army of mummies, demons and other foul creatures charging forth.
<<case "elf_priestess">>
With the court magician's aid you gather what forces are left before using the bond between yourself and the princess to teleport directly to the base of the pyramid from your vision.<br>
<br>
Transported to the hot, arid capital of Khmet you barely have time to look around before a horde of mummies, demons and other foul creatures charges down the pyramid steps towards your army.
<<case "bard">>
Against the odds you concoct a plan to disguise your forces as a traveling circus, somehow managing to bluff and bribe your way past the border before making a beeling for the capital.<br>
<br>
The city itself eerily empty you head for the great pyramid, the ominous magical cloud shrouding its top more than sufficient to tell you where you need to go.<br>
<br>
About to ascend the great steps of the pyramid an army of mummies, demons and other foul creatures suddenly appears out of the mists above, charging down towards your forces.
<<case "druid">>
The skies over the capital are thick with magic and you return to the ground, the city eerily empty of civilians as you head for the great pyramid.<br>
<br>
You look up the steps at the dark stormy cloud of magic enveloping the top as a horde of mummies, demons and other foul creatures charges down towards you.
<<case "succubus">>
Making your way towards the border you pause just out of range of the arrayed enemy forces.<br>
<br>
At the centre of a ritual performed by <<=setup.getNpcName('npc_rpg_warlock', 'character')>> and the court wizard in concert you feel power as never before flowing into you, using your seductive powers to sculpt it, shape it, and focus it.<br>
<br>
"@@.npc_rpg_dude;Twerk it, baby!@@" He states, deepening his voice as much as he can to mimic a churlish old video game character and you bend forward, sticking your ass in the air and jiggling it around for a few moments until <<=setup.getNpcName('npc_rpg_warlock', 'character')>> squeezes both cheeks to hold you still.<br>
<br>
"@@.npc_rpg_warlock;Perfect crit! That's my girl!@@" She announces with glee, giving your bum a friendly squeeze but being careful not to reach down to that perky, sensitive bit dangling below.<br>
<br>
"@@.npc_technician;Alright; your spell is a success. A cloud of seductive energy glides over the enemy army. Nearly to a person they succumb to the urges of lust, a great, messy orgasm of flesh, the once intimidating army descending into largest orgy you've ever seen. Leaving them to their "fun" you hurry on through on your way to the capital.@@"<br>
<br>
The rest of your trip passing surprisingly unmolested you find the capital eerily empty, an ominous storm of dark magic swirling atop the great pyramid that is your obvious destination. Reaching the foot of the pyramid you look up the steps as a horde of mummies, demons and other foul creatures charges down towards you.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<<else>>
Through a mix of luck and cleverness the party manages to make it to the base of the great pyramid of Khmet, but as you look up the steep steps a horde of mummies, demons and other foul creatures charges down towards you.
<</if>>
<br><br>
Your army breaks off to clear the way through the swarm of foes, opening a path for you and your fellow adventurers to charge up the pyramid.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_7' 'Continue.' $scene.stepLength>>]
<<else>>
"@@.npc_technician;Alright everybody, I think we're going to have to cut it here. Next week will be the final battle to decide the fate of two kingdoms and, perhaps... the world!@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
After helping you out of your restraints <<=setup.getNpcName('npc_rpg_warlock', 'character')>>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num]>>
and leaving the plug inside your rear as a "reward" she
<</if>>
gives you a pat on the head, thanking you for being her pet for the evening.<br>
<br>
<</if>>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: arrive/start 7th campaign session (final battle)
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 6>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
The group shares a few encouraging words as the stage is set for this so-called "final battle." <br>
<br>
"@@.npc_technician;Though it is mid-day the cloud atop the pyramid has cast a dark shadow across the city. The air smells of rot and incense and magic, the sound of battle already fierce as your allies fight against the swarm of mummies and demons that have descended the pyramid to defend against your interference.@@"<br>
<br>
"@@.npc_technician;Fighting your way to the top you find yourself looking across a large stone stage. Princess Hedina floats in mid-air, tendrils of magic leading from her chanting figure up into the storm, her body pulsing with demonic power. Her voice is deep and unearthly the sound of a thousand souls being tortured groaning in agony.@@"<br>
<br>
"@@.npc_technician;Before her lies the Pharaoh Kyassia, the beautiful god-queen stripped bare and lashed to an altar. Her eyes are wide with fear but she is unable to so much as speak due to her gag.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "elf_priestess" && $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][5]>>
"@@.npc_technician;The scene is just as it was in your vision, and you shiver slightly at the sense of deja vu.@@"<br>
<br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_technician;In an ancient, powerful demonic tongue. she commands her royal guard of catgirl warriors to "destroy the interlopers!" before turning back to her ritual@@"
<<elseif $npc_technician.flags.rpg_campaign.character == "bard">>
"@@.npc_technician;Your polyglot... or is that cunning linguistic? Bardic training allows you to identify her speech as an ancient form of high demonic. "Destroy the interlopers." She commands her royal guard of catgirl warriors before turning back to her ritual.@@"
<<else>>
"@@.npc_technician;Noticing your presence the Princess speaks to you in a guttural tongue, her demon-possessed royal catgirl guard marching towards you, weapons drawn.@@"
<</if>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_7_1' "Time to fight." $scene.stepLength>>]
</div>/*#
#desc: choose how to fight final battle
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_pentagram_harness">>
<<wearItem $player $now "rpg_succubus_pentagram_harness" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
The air crackles with magic, so much power arcing about that you can draw upon it as easily as your foe. Leaving the rest of the party to deal with the catgirls <<=setup.getNpcName('npc_rpg_warlock', 'character')>> squares up for a magician's duel with Princess Hedina.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'Join in on the battle of magic.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_2_passive' 'Let the two of them fight it out alone.' $scene.stepLength>>]
<<case "elf_priestess">>
The party and the catgirls appear evenly matched but perhaps you could use your connection to the princess to help her cast out the demonic force possessing her?<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'By the power of heart!' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_2_passive' 'Just stick to healing the party.' $scene.stepLength>>]
<<case "bard">>
A magical battle against a demon-possessed princess and her catgirl army atop a giant pyramid... You're already in an album cover, now it's time to make good with the live show of a lifetime...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'Take your spot centre stage and rock the fuck out.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_2_passive' 'Stick to backup guitar and just buff the rest of the party.' $scene.stepLength>>]
<<case "druid">>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][2]>>
Catgirls... again, you stiffen in excitement at the sight of the harem you previously enjoyed, their demonic-possessed eyes showing no recognition... perhaps you should reintroduce them to your cock...
<<else>>
Catgirls... you stiffen in excitement at the sight, feeling the urge to fuck the demonic presence out of them rising...
<</if>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'Rage and fuck some sense into the cadre of catgirls.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_2_passive' "Don't over-extend yourself." $scene.stepLength>>]
<<case "succubus">>
Standing with the party against your demon-possessed foes you're about to roll initiative when <<=setup.getNpcName('npc_rpg_warlock', 'character')>> calls for a time-out. She reaches into her bag of restraints a final time.<br>
<br>
"@@.npc_rpg_warlock;Oh, I found something special for you!@@" She states as she reaches around you from behind and drapes something over your chest.<br>
<br>
She cinches buckles under your arms and over your shoulders and you're forced to (carefully) rise and check a mirror to check out your latest addition.<br>
<br>
A studded leather harness drapes over your upper chest, the straps criss-crossing to form an inverted pentagram.<br>
<br>
"@@.npc_barista;So hawt!@@" She states as the rest of the room nods in agreement. Carefully returning to your position bound and kneeling at <<=ps(setup.getNpcName('npc_rpg_warlock', 'character'))>> feet you blush and get ready to play.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_succubus' 'Continue.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: succubus pre-action fighting in final battle
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
Reveling in the magical storm of the ritual you draw on the demonic energies. With a howl of lust and rage you rush forth in attack.<br>
<br>
Dodging your first attack the demonic Princess growls in rage but you all but laugh off the retaliatory strikes. The two of you clash back and forth to no real effect until it roars and assumes its full demonic form.<br>
<br>
"@@.npc_technician;"Why do you fight against your own kind?" It asks in demonic before conjuring a sphere of magical power and unleashing it at you.@@"<br>
<br>
You whiff the roll to dodge and it bursts, enveloping you in infernal flame.<br>
<br>
"@@.npc_technician;Ok, the spell doesn't harm you, per se. You are a creature of the lower realms, after all. It does, however, overload your restraints. Whatever hold <<=setup.getNpcName('npc_rpg_warlock', 'character')>> had over you is no more and you are free to act as thou will.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'Continue your assault on the demon.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_2_passive' 'Turn against the party.' $scene.stepLength>>]
</div>/*#
#desc: make a difference in the final battle
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You shoot off a quick overloaded AOE sleep spell at the catgirls but their demonic empowerment proves enough to protect all save one unlucky crit-botch of a saving throw from going out. Even resisted it applies a debuff to their attack that should help the rest of the party.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> and the Princess are already locked in a battle of infernal magicks and you add your power to the fray, syphoning mana from the swirling clouds around you to drain the ritual.<br>
<br>
Hedina screams with rage, lashing out with demonic power to send the both of you tumbling across the top of the pyramid.<br>
<br>
Reaching out you barely catch <<=setup.getNpcName('npc_rpg_warlock', 'character')>> from taking the long fall down the side of the pyramid pulling her to safety as she tries to recover from the strain of channeling so much magic.<br>
<br>
The princess turns back to her ritual and you shoot off another sleep spell targetting the princess directly. The spell splashes over her, dissipating to no effect save to draw her attention.<br>
<br>
"@@.npc_technician;She speaks, words of english twisting unnaturally as they are spoken in her deep, demonic tongue. "Silly mage, I have slept for ages and now it is my time again!"@@"<br>
<br>
You barely evade another spell, the demon just too powerful except... you glance at the thick column of magic flowing out of the Pharaoh. Perhaps...<br>
<br>
Sprinting past the Princess you dive into the central stream of magic, gasping at the sudden influx of power. Your first awkward spell still packs enough punch to drive back the demon-possessed Princess but you feel your control slipping until <<=setup.getNpcName('npc_rpg_warlock', 'character')>> manages to crawl into position below you, reaching from the Pharaoh to yourself, the anchor of their power lending you focus as you get ready for your next attack.<br>
<br>
Burning with demonic fire the Princess is almost invisible at the centre of a demonic spectre. With a high-pitched cry you unleash your greatest spell yet.<br>
<br>
Channelled through your body the demonic power takes on a brilliant light. Burning away the demonic presence as it screams, its form contorting in rage.<br>
<br>
You channel even more forcefully, pulling the demon towards you to pump more power into it, forcing the infernal essence out from the Princess's body. With a bloodcurdling final cry the demon is banished as the last dregs of power simmer inside of you.<br>
<br>
"@@.npc_technician;You have temporarily absorbed a portion of the demon's power, its skill at form manipulation latching onto you and granting you the opportunity to permanently alter your shape...@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Retain your present hyper-girlish orc form.' $scene.stepLength "<<set $scene.form='female_extreme'>>">>]<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Revert to your original burly male orcness..' $scene.stepLength "<<set $scene.form='male'>>">>]<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Remain feminine but scale back from the anime-level exaggeration of your current figure.' $scene.stepLength "<<set $scene.form='female'>>">>]
<<case "elf_priestess">>
Shouting into the storm you try to reach out to the Princess, begging her to remember who she is, that she is a good person who loves the Pharaoh and that she can fight against the demon possessing her.<br>
<br>
At first your efforts are ignored as the Princess/demon focuses on a magical contest of infernal power with <<=setup.getNpcName('npc_rpg_warlock', 'character')>>. Then, suddenly, there is a shift. One of <<=ps(setup.getNpcName('npc_rpg_warlock', 'character'))>> spells slips through to cause the demon to cry out and knock the warlock aside with a powerful strike before turning on you in a rage.<br>
<br>
"@@.npc_technician;The demon princess looms above you, dark and angered, tendrils extending from her body to wrap your wrists and ankles and pull you into the air. In a voice of a thousand tortured souls it speaks to you.@@"<br>
<br>
"@@.npc_technician_dom;You would speak to me of love? You, the gods' whore? I have known your body once whence I was still weak and in hiding but now... now I am free and I will make you feel what it is to be fucked by a demon lord!@@"<br>
<br>
"@@.npc_technician;You gasp as additional tendrils lash out. Ephemeral in appearance they fill you wide and deep, plunging into all three of your holes while their thinner brothers fondle your breasts and clit. You feel your first orgasm swiftly approaching but you ride it, pouring the energy back into your "foe" as the demon suddenly looks alarmed.@@"<br>
<br>
"@@.npc_technician;"What, no? What is this power!?" The demon cries out as you continue to cum. You reach out to mentally join with the Princess, strengthening her will as she psychically battles against her possessor.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_rpg_warlock', 'character'))>> rises back to her feet, staggering to the altar and adding the power of herself and the Pharaoh to your own. With a final cry the demon is cast out of its host, attempting to flee into the storm only for <<=setup.getNpcName('npc_maid', 'character')>> to leap towards it with a mighty blow.<br>
<br>
"@@.npc_technician;Hacked in twain by <<=ps(setup.getNpcName('npc_maid', 'character'))>> the demon cries its last as the princess collapses like a puppet with its strings cut.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'See if the princess is alright' $scene.stepLength>>]
<<case "bard">>
Magical lightning flashes through the air, striking your "axe" and turning your set electric. Like a slow motion music video the party falls upon the demonic princess, catgirls tossed left and right as you disrupt the ritual.<br>
<br>
Letting out a frustrated roar the demon manifests its true form, but it is for naught. With you and <<=setup.getNpcName('npc_barista', 'character')>> acting as high-octane cheerleaders <<=setup.getNpcName('npc_maid', 'character')>> strikes true, a mighty blow fuelled by rage and her divine blood to banish the demon for all time.<br>
<br>
The princess stands for a moment, wobbles, and then slumps to the ground as the magical tempest dissipates to reveal the desert sun far above.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'See if the princess is alright' $scene.stepLength>>]
<<case "druid">>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][2]>>
Though they are possessed, and you are in a different from than your prior meeting, there is a primal connection that has the catgirls recognizing you as you charge forth.
<</if>>
<br><br>
You tell the rest of the party that you've got it, leaving them to take on the demon-possessed princess together while you deal with the so-called "royal guards." <br>
<br>
Tackling one guard to the ground you mount her with a single thrust, your cock sending her into a paroxysm of pleasure that see's her gaze flicker and then revert to normal, the demonic presence flushed clear.<br>
<br>
Battling back against her still-possessed sisters you give her a few more thrusts for good measure before letting her up. Staggering a bit she stands with you, imploring her sisters to surrender as you move to your next "target/victim." <br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Keep pressing the "attack"' $scene.stepLength>>]
<<case "succubus">>
"This is MY WORLD!" you cry out in demonic as you rejoin the fight, lashing out with claw and tooth and horn, cutting deeply into the demon's half-spectral form.<br>
<br>
Piling on with your assault <<=setup.getNpcName('npc_rpg_warlock', 'character')>> lends her spells and <<=setup.getNpcName('npc_maid', 'character')>> her axe. The demon is all but finished, teetering on the edge of the platform.<br>
<br>
You leap onto its shoulders, grabbing its head with both hands, giving a twist, and ripping it clean off with a cry, leaping free as the corpse tumbles down the side of the pyramid.<br>
<br>
Looking about you note the demonic presence fading from the catgirls, the princess' body slumped next to the altar.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> looks at you with a bit of nervous concern, scorched restraints no longer restricting your powers in anyway.<br>
<br>
"@@.npc_rpg_warlock;You, you ok?@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Nod' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: wallflower your way through the final battle
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = false>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
Working together with the possessed princess you easily rout the rest of the party, killing <<=setup.getNpcName('npc_rpg_warlock', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>>, before subduing <<=setup.getNpcName('npc_barista', 'character')>> and sending <<=setup.getNpcName('npc_rpg_dude', 'character')>> fleeing down the pyramid.<br>
<br>
Unimpeded the "princess" completes the ritual, draining the Pharaoh of her powers and ushering in a new dark age of hellish destruction, with you as her right hand demon queen.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_post' 'Continue.' $scene.stepLength "<<set $scene.bad_end=true>>">>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_7_bad_end'
'Continue.' $scene.stepLength>>]
<</if>>
<<else>>
You chip in here and there to help out with the battle but it is <<=setup.getNpcName('npc_rpg_warlock', 'character')>> who takes centre stage, going back and forth with the Princess in a magical contest of infernal might, the scales finally tipping when the lot of you are temporarily cast into the astral plane, your psychic power united along with the Princess and the Pharaoh to burn away the demon for good.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_passive' 'Continue.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: finish up session if you were active in the fight
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
With the demon's defeat the catgirls stop fighting, looking around in confusion as they try to figure out where they are.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
With a final flash of magic you tumble to the ground, landing in a pile, exhausted from the battle.<br>
<br>
<<=setup.getNpcName('npc_maid', 'character')>> is the first to reach you helping you to your feet.<br>
<br>
<<switch $scene.form>>
<<case "female">>
Still quite scantily dressed in the Princess' "armour" you are a normal, though cute, female half-orc.
<<if setup.getTotalValue("feminization") > 10>>
You can't help but compare your in-game journey of feminisation to the one you have undergone in real life, hoping, and simultaneously knowing, that it will certainly come to just as delightful of a conclusion.
<</if>>
<<case "male">>
Though still quite scantily dressed in the Princess' "armour" you are once again a large, male half-orc.
<<if setup.getTotalValue("feminization") > 15>>
No sooner have you made your choice but you regret it. Even in the "safe" fantasy world the idea of being male seems disgusting, you are a girl! and your instinctual revulsion at the thought of the alternative proves it.<br>
<br>
<<elseif setup.getTotalValue("feminization") > 10>>
Going "back" to being male feels odd, even in fantasy.<br>
<br>
<<printThought $player "Maybe I am better off as a woman? I guess I didn't have all that much choice at first but... I've really come out of my shell and my life is better in so many ways since I've embraced the process...">><br>
<br>
<<elseif setup.getTotalValue("feminization") > 5>>
For some reason the fantasy of going "back" strikes you as odd.<br>
<br>
<<printThought $player "I'd rather be a girl? No, why would I think that? I'm a boy, in game and in real life!... right?">><br>
<br>
You find yourself feeling even odder at your lack of confidence in your mental assertation.
<</if>>
<<case "female_extreme">>
You rise the same as you fell, a scantily clad buxom half-orc female.
<<if setup.getTotalValue("feminization") > 10 && setup.getTotalValue("bimbofication") > 10>>
You can't help but smile at the description of your asserted bimbo-tastic form.<br>
<br>
<<printThought $player "Mmmm, I wanna be this much of a lascivious slut IRL too, yay!">>
<<elseif setup.getTotalValue("feminization") < 10>>
The idea of willingly remaining such an extreme caricature of femininity sends weird feelings through your body.<br>
<br>
<<printThought $player "It's just a game, this doesn't mean anything about real life or anything...">>
<</if>>
<<default>>
ERROR: unknown form: <<=$scene.form>>
<</switch>>
<<case "elf_priestess">>
Rushing to the princess' side your heart swells as her eyelids flutter open. She leans up to kiss you and then falls back with a contented smile on her face as she passes out.
<<case "bard">>
With bardic swiftness you are the first to reach the princess' side as the rest of the party scatters to attend to the Pharaoh and the fallen catgirls.
<<case "druid">>
Your retinue of recovered catgirls grows steadily as the party finishes dealing with the demon-possessed princess.<br>
<br>
<<if setup.getTotalValue("bestiality") > 15>>
For purposes of game speed and decorum the details may be brushed over but in your minds eye you picture each catgirl in turn, their lithe bodies folded and fucked by your powerful bear gasping as they are spread wide around your thick cock, grunting and imagining yourself on both sides of the equation - fucker and fuckee, plowing and plowed with unending animalistic lust, wishing that humans had baculum's, knots, prehensile cocks and all the other wonders of the animal kingdom.<br>
<br>
Caught up in fantasies of your side battle you only just manage to re-focus on the game as things come to a climactic finish.
<</if>>
Resorting to its full infernal form the demon makes a final stand only to be brought down by a rage and angelic powered blow from <<=setup.getNpcName('npc_maid', 'character')>>, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> severing the beast's head completely for good measure before shoving the corpse off the side of the pyramid.<br>
<br>
Free of the demon's grasp the princess slumps to the ground, the final few catgirls blinking in surprise as the demonic influence subsides and the tempestuous magical storm dissipates before the light of the high desert sun.
<<case "succubus">>
"More than ok... Mistress" you reply before launching into battle. Wings spread, claws out you meet the princess in mid-air, infernal might clashing with infernal might.<br>
<br>
Bolstered by <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> spells you start winning, tentacle-like tendrils reaching out to bind the princess, ripping whole chunks of ephemeral demonic essence from her body, scouring her in and out until not a trace of the ancient presence remains.<br>
<br>
Gliding back down to the ground on a pillar of infernal magic you catch the princess as she finally falls, the storm dissipating above as a ray of desert sunlight streams down to lend a strange, angelic aura to the scene.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
It takes a few minutes to free the Pharaoh, explain the situation to the nervous catgirls and revive the fainted princess but finally you get everyone on the same page as the Princess and the Pharaoh, cuddled sweetly in one another's grasp, explain what happened.<br>
<br>
[<<moveTo 'event_rpg_post_session_7' 'Listen to their tale.' $scene.stepLength>>]
</div>/*#
#desc: finish up session if you were passive in the fight
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
With you providing minor support the party splits into two groups to deal with the enemy.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> go straight for the princess, a mix of infernal and celestial powers clashing amidst the rage of <<=ps(setup.getNpcName('npc_rpg_warlock', 'character'))>> blows as the demon is forced to assume its full, horrifying form.<br>
<br>
With support from yourself and <<=setup.getNpcName('npc_barista', 'character')>> <<=setup.getNpcName('npc_rpg_dude', 'character')>> keeps the catgirl guards at bay, holding back from permanently harming them in light of their present possessed state.<br>
<br>
With a final potent strike <<=setup.getNpcName('npc_maid', 'character')>> fells the demon, the creature letting out an evil cry as its battered corpse tumbles down the side of the pyramid. The catgirls blink in surprise, some even fainting in shock as the possessing force releases its grasp, the tempestuous sky clearing to give way to the high desert sun.<br>
<br>
It takes a few minutes to free the Pharaoh, explain the situation to the nervous catgirls and revive the pass-ed out princess but finally you get everyone on the same page as the Princess and the Pharaoh, cuddled sweetly in one another's grasp, explain what happened.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_post' 'Continue.' $scene.stepLength "<<set $scene.bad_end=true>>">>]
<<else>>
[<<moveTo 'event_rpg_post_session_7' 'Listen to their tale.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: end of session for first campaign
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<include remove_succubus_items>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_20'
7
'event_psychiatrist_theme_rpg_finish'
false
'theme_psychiatrist_rpg_header'
>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
You all sit back as <<=setup.getNpcName('npc_technician', 'first')>> spins a tale of a young princess in love with a Pharaoh. Eagerly awaiting her engagement things start going wrong when she stumbled upon the resting place of an ancient demon whilst on a diplomatic mission.<br>
<br>
The possession growing slowly the demon recognised the Pharaoh as a descendant of the ancient mage who had imprisoned it so long ago, conspiring to murder the Princess' parents and destroy the planned engagement.<br>
<br>
Attempting to fight back against the demon the Princess had purposefully poisoned herself with a draught said to have been first brewed by the ancient Pharaoh herself. Unfortunately, though she was eventually cured, the blame falling upon her beloved and the demon taking the opportunity to slay the regent installed as her protector and set forth to enact his plan to get revenge on his ancient foe and usher in a new age of hellish destruction.<br>
<br>
"@@.npc_technician;So, congratulations@@" she states, bringing the tale to an end, "@@.npc_technician;You saved the world... and I guess got a bunch of XP.@@"<br>
<br>
"@@.npc_rpg_warlock;Sweet, the part that REALLY matters!@@"<br>
<br>
Everyone laughs before breaking into reminiscing about the campaign.<br>
<br>
<<switch setup.calcSessionParticipation($npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character])>>
<<case 7>>
Particular focus is put on you, congratulating you for taking a constant active role throughout the campaign.<br>
<br>
"@@.npc_rpg_dude;Yea, great job, I'm glad you joined the group, it made things even more fun.@@"
<br>
"@@.npc_barista;Yea, totally! Plus you're real easy on the eyes looking across the table!@@"
<<case 3 4 5 6>>
You show up more than once in the "highlight reel," congratulated for coming up to speed and taking an active role in the arc of the campaign.<br>
<br>
"@@.npc_maid;For a new player you did a great job, now you can build even further in the next campaign.@@"<br>
<br>
"@@.npc_barista;Yea, totally! Games go best when everyone gets done! I mean, does things!@@"
<<case 0 1 2>>
Your actions don't really show up in the "highlight reel" but that's ok, you had fun watching the rest of them play, though they are all quite encouraging for you to "come out of your shell" in the future.<br>
<br>
"@@.npc_rpg_dude;Sorry if we were intimidating or anything, I mean we've been playing together for awhile but we'd love it if you stepped up and took a more active role in the future.@@"<br>
<br>
"@@.npc_maid;Yea, the game is the most fun when everyone is playing their part, it's a role playing GROUP, which means we're a team.@@"
<<default>>
ERROR: unexpected participation: <<=setup.calcSessionParticipation($npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character])>>
<</switch>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
Helping you out of your restraints <<=setup.getNpcName('npc_rpg_warlock', 'first')>> stops with just your collar remaining.
<<if ($npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[6] || $npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[7])>>
"@@.npc_rpg_warlock;Hmm, I think you've earned the right to keep this... Just don't count it as my collaring you I already have enough to handle with one slave!@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> feigns innocence as she gives him a playful slap on the bum that turns into a more lingering caress.
<<else>>
"@@.npc_rpg_warlock;Hmm, I don't think you quite earned this year... maybe if you had been a bit more active during the final battle.@@"
<</if>>
Finishing packing up and saying their goodbyes you are soon alone with just you and <<=setup.getNpcName('npc_technician', 'first')>>.
<<else>>
Everyone packs up and says their goodbyes leaving just you and <<=setup.getNpcName('npc_technician', 'first')>>.
<</if>>
<br><br>
<<if $npc_technician.relationship.relationship_stage > 0>>
"@@.npc_technician;So... you enjoyed the campaign?@@"<br>
<br>
You smile and nod, stepping in for a kiss.<br>
<br>
<<printThought $player 'Time to "reward" the DM for a game well run...'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup_finale' "Cleanup be damned, you've got a girlfriend to snog." $scene.stepLength>>]
<<else>>
<<printThought $player 'I bet she would appreciate me staying to "help."'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to assist with cleanup." $scene.stepLength>>]<br>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
<</if>>
</div>/*#
#desc: end of session for first campaign
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_12'
7
'event_psychiatrist_theme_rpg_betrayal'
false
'theme_psychiatrist_rpg_header'
>>
<<include remove_succubus_items>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_technician_casual.png">>
<div id="invframe" class="scrolltext">
"@@.npc_rpg_warlock;So... uh, that was a campaign...@@" She states as she quietly removes your restraints.<br>
<br>
"@@.npc_barista;I thought it was fun, and I get to be the demon queen's sex slave forever, yay!@@"<br>
<br>
You suddenly feel bad for turning on the party but after a bit of initial grousing they all agree that the journey was still pretty fun, and hey, these things happen in game.<br>
<br>
"@@.npc_technician;Well I guess that's it for now, I figure we'll do some one shots while I recharge and plan out the next campaign... maybe you'll all even survive that one!@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
"@@.npc_maid;Hah, a killer DM with her mole of a girlfriend in the party? I'm gonna be watching you two like a hawk from here on out!@@" Despite her harsh words she smiles, letting you know it's just a joke.
<<else>>
"@@.npc_maid;Hah, only thing worse than a killer PC is a killer DM, but sure, I'll see y'all next week.@@" Though she seems a little annoyed she still grins, letting you know there aren't any hard feelings.
<</if>>
<br><br>
<<if setup.getTotalValue("humiliation") > 10>>
<<if $player.flags.humiliationStyle == "brazen">>
You should feel embarrassed at "ruining" the game and in a way you are, feeling a little guilty for betraying your friends... However those feelings are almost completely drowned out by depraved power fantasies. In turn you imagine enslaving each of your fellow players.
<<else>>
You blush in shame at having "ruined" the game... even as you find your imagination spinning out of control. As much a slave of the demonic Princess as the rest of the party you face an eternity of shame at your betrayal, the evil demon queen delighting in the anguish that results in you being forced to, personally, break every single one of your former companions.
<</if>>
<br><br>
The half-angelic <<=setup.getNpcName('npc_maid', 'character')>> is first, ensourced so as to be unable to cum whilst spit-roasted between two demons. Her breasts pierced and punished as she is flogged and fucked until every ounce of barbaric rage is replaced with desperate, obedient lust, a loyal soldier in your army, willing go to war against her heavenly brethren at your command.<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'character')>> is next, her undead form twisted and stretched into a gargantuan abomination, and then suspended and impaled on the cock of the great demonic dragon that is to be your war mount, her howls of rage serving as your battle cry as she is constantly fucked and pumped full of demonic seed.<br>
<br>
<<=setup.getNpcName('npc_barista', 'character')>>, on the other hand, is easy, seeming to delight in her enslavement even when she is forced to service an entire horde of demons at once. Her humanity slowly cracks and falls away until she is little more than a brainless receptacle for cum, laying at your feet, begging for more.<br>
<br>
Of special interest is <<=setup.getNpcName('npc_rpg_warlock', 'character')>>; as punishment for enslaving you she bears the full brunt of your diabolic attention; her mind kept whole as an observer as her body is enslaved, forced to act as your right-hand while simultaneously submitting to any depraved whim that might come to mind, a cross between a constantly fucked and ridiculed court jester and a cunning spymaster, her abilities twisted to guard against any rebellion against the ever-expanding demonic realm.<br>
<br>
Your campaign of evil conquest stetches far and wide until, finally, you come to the gates of heaven themself, throwing them open and charging forth to capture the Goddess of creation and life - <<=setup.getNpcName('npc_technician', 'first')>> in all her radiance and beauty forced to submit to you, her mind twisted to become another of your demonic thralls, chained with demonic steel and locked in unbreakable chastity, made available for you to use for your pleasure whenever the whim takes you as you steal a little more of her power with each orgasm you force upon her.
<br><br>
Your idle fantasy having spun out of control you, once again, apologise to your fellow players, though they assure you that they still enjoyed the game.
<</if>>
Helping you out of your bondage <<=setup.getNpcName('npc_rpg_warlock', 'first')>> comes to your collar with a slight smile. "@@.npc_rpg_warlock;Hmm... maybe it's rewarding a bit of the wrong behaviour but I think you've earned to keep that you devilish thing.@@" She winks an packs up the rest of your bondage gear as everyone says their goodbyes leaving just you and <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
"@@.npc_technician;Sorry for putting you in that spot, I guess I didn't think too hard about you going the betrayal route. Believe me though when I say there are no hard feelings though; what happens in-game, stays in-game.@@"<br>
<br>
You nod in thanks as you look around the empty apartment.<br>
<br>
<<printThought $player 'I bet she would appreciate me staying to help clean up.'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to assist with cleanup." 300>>]<br>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
</div>/*#
#desc: choose character for re-run of campaign
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $npc_technician.flags.rpg_campaign.cur_campaign_id = "fantasy">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Alright, let's run it back! So, <<=$player.first_name>> what do you want to play as this time around?@@"<br>
<br>
She hands you the stack of character sheets as the other players indicate they'll all stick with their usual characters.<br>
<br>
[<<moveTo 'event_rpg_character_select' 'Pick your character.' 300>>]
</div>/*#
#desc: part 1 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<initRoom>>
<<if $roomchange==true>>
<<set $scene.session_num = 0>>
<<useClothSetPush 'scene'>>
<</if>>
<<moveTo "event_rpg_campaign_start">>/*#
#desc: part 2 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 1>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
XP is distributed and allotted and the session rolls on.<br>
<br>
"@@.npc_technician;Alright, you post watches for the night but things are quiet, and in the morning you quickly break camp and head on your way.@@"<br>
<br>
"@@.npc_technician;Making your way to the road you don't run into any other travellers - the predation of the summoner and his monsters having greatly depressed trade in the area. It is mid-afternoon when you are suddenly best upon by a tribe of orcs!@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_1' 'Roll for initiative!' $scene.stepLength>>]
</div>/*#
#desc: part 3 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 2>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;In the presence of your armed knightly escort you arrive at Castle Lochemere. You are led to the throne room to present word of your victory.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_1' "Continue." $scene.stepLength>>]
</div>/*#
#desc: part 4 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<initRoom>>
<<if $roomchange==true>>
<<set $scene.session_num = 3>>
<</if>>
<<moveTo "event_rpg_campaign_session_4_0">>/*#
#desc: part 5 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 4>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage == "">>
<<if $player.timebased.horny >=50>>
<<set $player.timebased.horny = 49>>
<</if>>
<<addItem "c_cage_steel">>
<<wearItem $player $now "c_cage_steel" true>>
<</if>>
<<addItem "rpg_steel_restraints">>
<<wearItem $player $now "rpg_steel_restraints" true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign == 8>>
Barely suppressing a full-on cheshire grin <<=setup.getNpcName('npc_technician', 'first')>> reveals the restraints and chastity devices.<br>
<br>
Suddenly wide-eyed with fear <<=setup.getNpcName('npc_barista', 'nickname')>> at the sight of the sex-restrictive devices she asks if she could sit out this session. The rest of the party quickly agree as <<=setup.getNpcName('npc_technician', 'first')>> lets her into her bedroom and says she'll let her know when the party is all escaped and such.<br>
<br>
"@@.npc_technician;Sorry, seems that <<=setup.getNpcName('npc_barista', 'nickname')>> is a bit triggered by the idea of NOT being able to have sex. Since she was out the first time we played this portion of the campaign it wasn't a problem but... yea, she's just going to have a lie-down for a bit and will join back up later.@@"
<<else>>
Taking a quick break <<=setup.getNpcName('npc_technician', 'first')>> leads <<=setup.getNpcName('npc_barista', 'nickname')>> into her bedroom, the bubbly bimbo seemingly welcoming the opportunity for a lie-down without cluing into the context of why.<br>
<br>
"@@.npc_technician;There we go, she'll be fine in there for this next bit. We talked about it earlier and she said she'd rather just take a break and not disrupt the flow of the campaign when we got to the chastity portion. "No sex" is a bit of a trigger for her but she didn't want to intrude on the fun time for the rest of us.@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_rpg_dude', 'first')>> nod before giggling as they lock each other up with a kiss.<br>
<br>
"@@.npc_maid;Uh, could I?@@" <<=setup.getNpcName('npc_maid', 'first')>> asks only to get cut off by the grinning DM.<br>
<br>
"@@.npc_technician;Yea, no. Your crotch monster is getting locked away nice and safe for awhile where it can't hurt anyone.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> rolls her eyes and mock sighs before joining the rest of the party in equipping herself with a chastity cage and steel restraints. She winces a little as she stuffs her thick cock into the oversized, yet somehow still slightly too-small, chastity cage.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
Seeing <<=ps(setup.getNpcName('npc_maid', 'first'))>> crotch monster is always a delight and you stare at it with naked lust until it disappears back beneath her skirt.
<<else>>
You can't help but stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> crotch monster, it somehow looks even more beautiful than before, nestled betwixt her thighs.
<</if>>
<<else>>
You try not to stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> crotch monster, but there's really no way to resist stealing at least a bit of a glance...
<</if>>
<br><br>
<<if $scene.cage != "">>
You blush and explain that, actually, you're already caged...<br>
<br>
Seeing the opportunity for a spot of revenge <<=setup.getNpcName('npc_maid', 'first')>> tosses the final cage to <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
<<=setup.getNpcName('npc_technician', 'first')>> smirks and then flashes her already caged cock in triumph. "@@.npc_technician;Sorry, my dear, but a special someone has made sure that I am already quite safely locked away.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> only grins wider before extending her arm in your direction for a fist-bump "@@.npc_maid;Keeping her in line, good job! Though, I think she'd be better off with something a bit smaller, maybe with spikes.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> glares at her friend and then flutters her eyelids innocently in your direction before her composure slips and she breaks into a full grin.
<<else>>
"@@.npc_maid;I guess that one's for you, huh? that way you can "join in the fun."@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> pretends to object but soon folds to the combined encouragement of the group.<br>
<br>
"@@.npc_maid;Oh, and the key - I mean, it isn't really the same if you can unlock yourself, right?@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<=setup.getNpcName('npc_technician', 'first')>> rolls her and hands over a small steel key, only for <<=setup.getNpcName('npc_maid', 'first')>> to pass it to you.<br>
<br>
"@@.npc_maid;Here you go, I think you'll have the most fun deciding when, or if, she gets to come out.@@"<br>
<br>
Your mind swirls with possibility as <<=setup.getNpcName('npc_technician', 'first')>> bites her lip and glances at you with obvious lust as she adjusts herself into a comfortable position seated back behind her DM screen.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> sighs and hands over a small steel key <<=setup.getNpcName('npc_maid', 'first')>> pocketing it with a smile.<br>
<br>
"@@.npc_maid;There, nice and fair - if you run a good session, I'll let you out if not... well, there's always next week!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> glares back but makes no response as she adjusts herself into a comfortable position back behind her DM screen.
<</if>>
<</if>>
<<else>>
<<printThought $player "Well, it's not like it's the first time...">><br>
<br>
With a slight sigh you grab the final chastity cage and slip it on, the familiar "click" of the lock sending a familiar submissive shiver through your body.<br>
<br>
"@@.npc_rpg_warlock;Aaand the good sissy is properly locked once again.@@"<br>
<br>
You blush.<br>
<br>
The rest of the group smiles as <<=setup.getNpcName('npc_technician', 'first')>> restores order to proceed with the game.
<</if>>
<br><br>
"@@.npc_technician;Ok, back to the game! After your capture you are each placed in separate prison cells deep in the dungeon beneath the border garrison.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: part 6 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $scene.session_num = 5>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
You all take a short break to refresh drinks and stretch a bit as <<=setup.getNpcName('npc_technician', 'first')>> retrieves <<=setup.getNpcName('npc_barista', 'nickname')>> from the bedroom. From the look on the latter's face you have a feeling the slutty bimbo had a bit of naughty fun while she was waiting though it seems as if <<=setup.getNpcName('npc_technician', 'first')>> either doesn't notice, or doesn't mind.<br>
<br>
Everyone back in their places <<=setup.getNpcName('npc_technician', 'first')>> checks her notes and resumes the session.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_0' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: part 7 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<initRoom>>
<<if $roomchange==true>>
<<set $scene.session_num = 6>>
<</if>>
<<moveTo "event_rpg_campaign_session_7_0">>/*#
#desc: end of session for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus" && $scene.sessionId == 'fantasy'>>
<<include remove_succubus_items>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $scene.bad_end>>
There is an extended silence after <<=setup.getNpcName('npc_technician', 'first')>> describes the apocalyptic conclusion of the campaign.<br>
<br>
"@@.npc_rpg_warlock;Well then... I uh...@@"<br>
<br>
"@@.npc_barista;Whee! I get to be the demon queen's sex slave forever!@@" She gushes while making eyes at you<<if $npc_technician.relationship.relationship_stage > 0>> only to stop and look at <<=setup.getNpcName('npc_technician', 'first')>>. "@@.npc_barista;That is, with your Mistress' permission...@@"<</if>>.<br>
<br>
Tension broken the group breaks into laughter and reminiscing about the replay of the campaign.<br>
<br>
"@@.npc_rpg_warlock;I guess it is fun to take things in a different direction... Defeated by my own demonic thrall tho... that's a new one.@@"<br>
<br>
"@@.npc_maid;Not like you're short for thralls in any case.@@" She jokes with a nod towards <<=setup.getNpcName('npc_rpg_dude', 'first')>> who adopts his most innocent expression before <<=setup.getNpcName('npc_rpg_warlock', 'first')>> leans back for an intense kiss.
<<else>>
<</if>>
<br><br>
Everyone continues to chatter as they pack up
<<switch setup.calcSessionParticipation($npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character])>>
<<case 0>>
"@@.npc_rpg_dude;You feeling alright? You were kind of quiet tonight, not really taking an active role much at all.@@"
<<case 1 2>>
"@@.npc_rpg_warlock;Fun campaign, but I think it'd be even moreso if you took an active role more than once or twice, eh?@@"
<<case 3 4>>
"@@.npc_barista;I, like, love how active you were this session! The more people doing it, playing that is, is always better!@@"
<<case 5 6>>
"@@.npc_maid;Good job jumping into the game, it's always more fun when everyone is taking an active part.@@"
<<case 7>>
<<=setup.getNpcName('npc_technician', 'first')>> practically beams with pride as she congratulates you on your active part throughout the session.
<<default>>
ERROR! unexpected participation: <<=setup.calcSessionParticipation($npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character])>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.character == 'succubus'>>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> starts to help you out of your restraints only for <<=setup.getNpcName('npc_technician', 'first')>> to stop her with a devious smile.<br>
<br>
"@@.npc_technician;Actually, I'd like to borrow those, if you wouldn't mind?@@"<br>
<br>
"@@.npc_rpg_warlock;Of course! I mean, what's the point of having a succubus for a girlfriend if you can't play with her?@@"<br>
<br>
"@@.npc_technician;Exactly!@@" Licking her lips as she takes control of your leash you tremble in anticipation. Seems like your night has only begun...<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> glances back with a slight smile. "@@.npc_rpg_warlock;Actually... <<=$player.first_name>> can keep the collar, I think she's earned it after working so hard all campaign...@@"<br>
<br>
[<<moveTo 'event_technician_rpg_cleanup_demon' "Continue." 300>>]
<<else>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> helps you out of your restraints
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[6] || $npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[7]>>
coming to your collar she smiles and says tells you to "@@.npc_rpg_warlock;keep it.@@" before giving you
<<else>>
and gives you
<</if>>
a parting grope and kiss on the cheek before darting after her boyfriend as he looks back with a smile, shaking his head in amusement.<br>
<br>
Alone with <<=setup.getNpcName('npc_technician', 'first')>> you look around at the messy aftermath of the play session.<br>
<br>
<<printThought $player 'I bet she would appreciate me staying to "help."'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to assist with cleanup." 300>>]<br>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
<</if>>
<<else>>
You thank your fellow players for the feedback as they finish packing up and depart, leaving you alone with <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
"@@.npc_technician;So... you ready to celebrate a triumphant campaign?@@"<br>
<br>
You smile and nod, stepping in for a kiss.<br>
<br>
<<printThought $player 'Time to "reward" the DM for a game well run...'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup_finale' "Cleanup be damned, you've got a girlfriend to snog." 0>>]
<<else>>
<<printThought $player 'I bet she would appreciate me staying to "help."'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to assist with cleanup." 300>>]<br>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
<</if>>
<</if>>
</div>/*#
#desc: technician calls you because you failed to show up for the rpg session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<decrementEmotion 'anger' 'npc_technician' 3>>
<<restartTask "technician_roleplay_1">>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_technician', 'first')>>!
<<if $npc_technician.flags.rpg_campaign.session == 0>>
"@@.npc_technician;Hey, so... where are you? We're about to start the game...@@"<br>
<br>
<<printThought $player "Shit, I was supposed to meet at her place for an RPG session today!">><br>
<br>
You profusely apologise, explaining that something came up and you promise you'll make it some other time.<br>
<br>
She sighs, "@@.npc_technician;alright, well maybe next weekend, the gang was all looking forward to meeting you to!@@"
<<else>>
"@@.npc_technician;So I guess you aren't going to make it to game tonight?@@"<br>
<br>
You quickly apologise, lamely explaining that "something came up." <br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<if $npc_technician.relationship.her_role == "dom">>
"@@.npc_technician;Hmf, bad girl, I will definitely be punishing you for this later.@@"
<<else>>
"@@.npc_technician;Oh, I wish you'd tell me this sort of thing, I'd still be disappointed but no-showing like this makes it seem like you don't care about me...@@"
<</if>>
<br><br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session < 7>>
"@@.npc_technician;Well have fun with whatever you're doing, I guess I'll just run a one-shot rather than disrupt the campaign mid-stream.@@"
<<else>>
"@@.npc_technician;I guess I'll see you around, we'll just run something else without you.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo $beforetasklocation "Hang up.">>]
</div>/*#
#desc: mux for which rpg session you're on
#status: FINISHED 0.5.0.0
#*/
<<restartTask "technician_roleplay_1">>
<<set $npc_technician.flags.rpg_campaign.session += 1>>
<<setScene>>
<<initRoom>>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 1>>
<<set $scene.sessionId = 'fantasy'>>
<<moveTo "event_rpg_intro">>
<<set $scene.stepLength = 1800>>
<<case 2>>
<<set $scene.sessionId = 'fantasy'>>
<<moveTo "event_rpg_campaign_session_2_0">>
<<set $scene.stepLength = 1800>>
<<case 3 4 5 6 7>>
<<set $scene.sessionId = 'fantasy'>>
<<moveTo "event_rpg_campaign_session_x_pre">>
<<set $scene.stepLength = 1800>>
<<default>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
<<moveTo "event_rpg_campaign_session_n_pre">>
<<set $scene.stepLength = 300>>
<<else>>
ERROR: unknown rpg session: <<=$npc_technician.flags.rpg_campaign.session>>
<</if>>
<</switch>>/*#
#desc: handwave running a random session
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
You enjoy another fun session of good times, games, and adventure with <<=setup.getNpcName('npc_technician', 'first')>> and your other friends.<br>
<br>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' 7200>>]
</div><<if ($now.getUTCDay()==0)>>
<<set _tmpDate = setup.setNextDate($now, 6, 19, 0)>>
<<else>>
<<set _tmpDate = setup.setNextDate($now, 0, 19, 0)>>
<</if>>
<<if ($now.getUTCDay()==6 && $now.getUTCHours()<20)>>
<<set $npc_date.day = "today">>
<<else>>
<<set $npc_date.day = "next Saturday">>
<</if>>
<<set _taskCondition = setup.getConditions(_tmpDate, ['atTechnicianAppt'])>>
<<set _taskDone = {
"trigger_event": "event_rpg_root",
"text": "task_technician_roleplay_1_done"
}>>
<<set _taskFailed = {
"trigger_event":"event_rpg_failed",
"text": "task_technician_roleplay_1_failed"
}>>
<<addTask 'technician_roleplay_1'
$now
'npc_technician'
'task_technician_roleplay_1'
_taskCondition
_taskDone
_taskFailed
>>/*#
#desc: post-campaign sessions
#status: FINISHED 0.5.0.0
#*/
<<if $roomchange==true>>
<<setScene>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/technician_apartment.png" "./images/characters/npc_rpg_group.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.has_stayed_behind>>
You find you're the first to arrive, sharing a kiss with <<=setup.getNpcName('npc_technician', 'first')>> before taking your seat.<br>
<br>
"@@.npc_technician;So just a reminder, when it comes to the game I'm the impartial Dungeon Mistress, so don't expect any special treatment for being snuggle buddies.@@"
<<else>>
You're the first to arrive, <<=setup.getNpcName('npc_technician', 'first')>> greeting you at the door and welcome you in.
<</if>>
<br><br>
The rest of the group trickles in and you greet one another before settling in for a game.<br>
<br>
/* TODOfuture - if we wanted to write up other 1-shot RPG sessions... patreon level of "the dungeon mistress is in session..."?, they'd link off here */
"@@.npc_technician;Alright, so I figured we'd kick back and run one-shots for awhile. Though if you wanted I reworked the last campaign so I think it can all fit in a single session if you were interested in seeing how some different character options or choices might play out.@@"<br>
<br>
<<include rpg_gameChoices>>
</div>/*#
#desc: different options for rpg replay
#status: FINISHED 0.5.0.0
#*/
[<<moveTo 'event_rpg_campaign_rerun_0' "Do another run through of the campaign." 60 "<<set $scene.sessionId = 'fantasy'>>">>]<br>
[<<moveTo 'event_rpg_campaign_session_x_0' "Do a random one-shot." 3600 "<<set $scene.sessionId = 'random'>>">>]/*#
#desc: mux for choosing scene for first time anal plugging based on location
#status: FINISHED 0.4.0.0
#*/
<<if $player.flags.plugged_self>>
<<initRoom>>
<<moveTo $locationbeforeuseage>>
<<else>>
<<set $player.flags.plugged_self = true>>
<<set $player.cutscene.lockinventory = true>>
<<setScene>>
<<initRoom>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<<set $scene.orgLocation = $locationbeforeuseage>>
<<set $scene.image = "">>
<<if ($player.hair.style == "unkempt") || ($player.hair.style == "combed")>>
<<set $scene.image = "1">>
<<else>>
<<set $scene.image = "0">>
<</if>>
<<if $player.body.breastsize[0]<2>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<if !setup.isItemTypeEquipped('cage')>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<removeEverythingButUnderwear $player $now>>
<<if (setup.analyzeWornTags(['female','male'])!="female") || (setup.getIndecentValue($player)==100)>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<set $scene.image = "./images/scenes/plug/plug_scene_1_"+$scene.image+".png">>
<<initRoom>>
<<if $locationbeforeuseage == "room_mall_lingerie_shop_changing_booth">>
<<moveTo "event_beginner_plug_changing_room">>
<<elseif setup.inPassageTag($locationbeforeuseage,"home")>>
<<moveTo "event_beginner_plug_flat">>
<<elseif $locationbeforeuseage == "event_psychiatrist_1stsession_2_changingroom">>
<<moveTo "event_beginner_plug_psychiatrist">>
<<elseif setup.inPassageTag($locationbeforeuseage,"gloryhole")>>
<<moveTo "event_beginner_plug_gloryhole">>
<<else>>
<<moveTo "event_beginner_plug_generic">>
<</if>>
<<set $player.flags.masturbation.plug = true>>
<</if>>/*#
#desc: first time anal plugging in mall changing room
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $player.timebased.horny = setup.changeHorny($player,25)>>
<<applyExperience 'humiliation' 5 'normal' $INCOGNITO>>
<<setThreshold 'anal' 'plugs' 'beginner_plug' true>>
<</if>>
/% inherit location from previous passage %/
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.plugID == "analplug_beginner">>
Nervously you look at the <<=$scene.plugObj.name>> that you found in the changing room. It really isn't that big in your hands, not exactly intimidating it's actually almost... cute? Still, you're a bit apprehensive about the idea of it going in your butt.<br>
<<else>>
Recalling the OTHER plug that you found in a changing room you look at the <<=$scene.plugObj.name>> that you are now contemplating sticking into your rear.<br>
<</if>>
<br>
Though the plug is pretty slick you figure you should use something for lubricant; not having anything else handy you just spit on the plug and smear it around before taking a deep breath and bringing it to your exposed rear.<br>
<br>
Trying to relax you push the plug into your bum,
<<if $npc_psychiatrist.hypnosis >= 2>>
though you found a plug in your ass after one of your "hypnosis" sessions you've never put one in yourself... at least, that you can recall.<br>
<br>
<<printThoughtGlitch $player "My ass is better filled...">><br>
<<elseif $player.flags.fuckedbydildo>>
though you have felt a dildo plunging into your ass you've never been plugged, you wonder how different it will feel.<br>
<<else>>
you've never done anything like this before, and you're a bit nervous, yet unable to restrain yourself.<br>
<</if>>
<br>
<<showImage $scene.image>>
<br>
<<if setup.getTotalValue("anal") >= $scene.plugObj.effect.anal.level>>
Your ass is more than accepting of the plug, spreading easily to hungrily suck it into your body.<br>
<br>
You let out a gasp only to suddenly hear voices just outside the changing room.<br>
<<else>>
Your ass is resisting the plug, holding tight even as you squeeze your eyes in concentration, taking quick, short breaths pushing the slippering head of the plug against it. You are about to give up when you hear voices outside of the changing room.<br>
<br>
Though you can't make out the words they are definitely female, the shock making you jump and the plug thrusting into your rear with a pop.<br>
<</if>>
<br>
You hold your breath, trying not to look at your reflection in the changing room mirror. Bent forward, the <<if $scene.plugID == "analplug_beginner">>jeweled pink-heart <<elseif $scene.plugID == "analplug_medium_ems">>wired <</if>>base of the plug visible between your cheeks you make for a very lewd sight.<br>
<br>
The voices on the other side of the door stop and you let out a sigh of relief only for there to be a knock on the door.<br>
<br>
"@@.npc_female;Hey, is someone in there?@@"<br>
<br>
Your life, at present, is composed of two facts. First, that you are incredibly embarrassed at your... compromised position with only a flimsy partition between you and inquisitive strangers. Second; that you are somehow incredibly aroused.<br>
<br>
You try to talk your way out of this peculiar situation, the best you can, by stating that you're in fact already wrapping up. But your voice sounds high pitched, almost squeaky. Wincing in further humiliation you cast your gaze around to look for the rest of your outfit." <br>
<br>
"@@.npc_female;Oh, ok...@@"<br>
<br>
Thinking you're finally safe, you try to catch a breath.<br>
<br>
"@@.npc_female;Are you alright?, Your voice sounds strained.@@" A second female voice adds.<br>
<br>
<<printThought $player "Please <<getWordGod $player>>, could I just die of shame now?">><br>
<br>
Your heart racing you mumble a response and they finally move on, your body tense until their footsteps fade out of earshot as you resolve to get dressed and get out of here... fast.<br>
<br>
[<<moveTo $locationbeforeuseage "Continue" 30 "<<set $player.cutscene.lockinventory=false>>">>]
</div>/*#
#desc: first time anal plugging in flat
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $player.timebased.horny = setup.changeHorny($player,25)>>
<<setThreshold 'anal' 'plugs' 'beginner_plug' true>>
<<switch $scene.orgLocation>>
<<case "room_kitchen" "room_computer" "room_livingroom" "room_bathroom" "room_foyer">>
<<set $player.location = "Living Room">>
<<set $scene.roomBackground = "./images/locations/flat_livingroom_01.png">>
<<set $scene.chosenLocation = "room_livingroom">>
<<case "room_bedroom" "room_bedroom_wardrobe_1">>
<<set $player.location = "Bed Room">>
<<set $scene.roomBackground = "./images/locations/flat_bedroom_01.png">>
<<set $scene.chosenLocation = "room_bedroom">>
<<default>>
ERROR! unexpected room: <<=$scene.orgLocation>>
<</switch>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR $scene.roomBackground>>
<div id="invframe" class="scrolltext">
<<switch $scene.orgLocation>>
<<case "room_kitchen" "room_computer" "room_bathroom" "room_foyer">>
You decide if you're going to really do this, you might as well do it in the living room.
<<case "room_bedroom_wardrobe_1">>
You decide if you're going to really do this, you might as well do it in bed room, not in the confided space of your wardrobe.
<</switch>>
<<if $scene.chosenLocation == "room_livingroom">>
Sitting in front of your computer you lubricate the <<=$scene.plugObj.name>> with a bit of spit and kneel down in front of the keyboard to expose your ass.<br>
<br>
Taking a deep breath you try to relax and push the blunt head against your rear hole.
<<if $npc_psychiatrist.hypnosis >= 2>>
Though you have been plugged before this is the first time doing it yourself, at least that you can remember.<br>
<br>
<<printThought $player "Is this really what my life has come to?">><br>
<br>
<br>
<<printThoughtGlitch $player "My ass is better filled...">><br>
<br>
Your answer comes as the plug pops past your sphincter and your ass eagerly sucks it into place. You moan with arousal, at this novel, full feeling... you like it.
<<elseif $player.flags.fuckedbydildo>>
You may have taken a cock-like dildo in your rear passage but the feeling of the plug is subtly different. Barely moving it keeps your insides occupied even as your sphincter is able to tighten around the base, a very different combination of sensations from that of being "fucked."
<<else>>
You have never in your life felt something like this. The combination of the internal fullness and the inability to fully "close" your ass is... strange.
<</if>>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") > $scene.plugObj.effect.anal.level>>
Not the largest thing you've had "up there" the plug is pleasantly comfortable... though it also has you hungering for more...<br>
<<else>>
Your ass feels stuffed and spread, like you have a whole billiard ball in there instead of the modest size the plug appeared in your hand.<br>
<</if>>
<br>
In a lusty daze you quickly browse for porn online, not even reading the title as you click on the first video that catches your interest.<br>
<br>
[<<link "Masturbate with the plug!">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.1>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 20)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<set $player.cutscene.lockinventory=false>>
<<goto room_masturbate_plug>>
<</link>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 20>>]
<<elseif $scene.chosenLocation == "room_bedroom">>
Holding the <<=$scene.plugObj.name>> in your hand you try to find a comfortable position to insert it for the first time. Finally you settle for bending over the edge of the bed, your legs dangling over the side.<br>
<br>
It is only when the blunt head of the plug is pressing against your rear that you realise how truly... exposed you are in this position. Perhaps spurred forward by such thoughts your ass suddenly relaxes.
<<if $npc_psychiatrist.hypnosis >= 2>>
It slides into place with ease; though not the first time you have had something "up there" it is the first you have plugged yourself... that you can remember, you still don't know exactly what happened in your hypnosis session that led to you going home with a wired plug lodged in your bum.<br>
<br>
<<printThoughtGlitch $player "My ass is better filled...">><br>
<<elseif $player.flags.fuckedbydildo>>
You may have felt something phallic "up there" previously but the plug is quite different, your body able to adjust and mold around its shape versus the constant shifting of the dildo thrusting in and out of your hole.
<<else>>
The feeling of something "up there" is... strange, but... good? It is even weirder when you take your hand away and it remains in place, filling your pert bum.
<</if>>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") >= $scene.plugObj.effect.anal.level>>
Still sprawled over the bed you take several breaths. Now that it is nestled comfortably within you the plug seems hardly as bad as you feared.<br>
<br>
You hump the edge of the bed in arousal for about a minute, enjoying how the plug subtly shifts inside you before pushing yourself back to your feet to do something else.
<<else>>
Still sprawled over the bed it takes you several minutes to adjust to this new "full" sensation. By the time you finally do you are unconsciously humping the edge of the bed. Blushing you hurry back to your feet.
<</if>>
<br><br>
[<<link "Masturbate with the plug!">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.1>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 20)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<set $player.cutscene.lockinventory=false>>
<<goto room_masturbate_plug>>
<</link>>]<br>
[<<moveTo "room_bedroom" "Return to the bed room." 20 "<<set $player.cutscene.lockinventory=false>>">>]
<</if>>
</div>/*#
#desc: first time anal plugging at psychiatrist
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.plugObj = setup.getItemObj(setup.getItemFromType('plug'))>>
<<setThreshold 'anal' 'plugs' 'beginner_plug' true>>
<</if>>
<<set $player.location to "Changing Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/hypnosis_fitting_room.png" >>
<div id="invframe" class="scrolltext">
You aren't sure what comes over you but, in the privacy of the changing room of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office you decide to try plugging your ass for the first time.<br>
<br>
<<if $npc_psychiatrist.hypnosis >= 2>>
Being in the psychiatrists office reminds you of your hypnosis session, you still do not know how the metal plug got into your ass but here you are "playing things back" <<if setup.getItemFromType('plug') == "analplug_beginner">>just with a smaller plug <<elseif setup.getItemFromType('plug') == "analplug_medium_ems">>with the very same plug <<else>>with an even larger plug<</if>>.<br>
<br>
<<printThoughtGlitch $player "My ass is better filled...">><br>
<<elseif $player.flags.fuckedbydildo>>
You have never been plugged but the memory of fucking yourself with a dildo under your manager's orders flashes through your mind as the blunt tip of the plug presses against your hole.<br>
<<else>>
You have never had anything like this "up there," maybe there is something to all of the stuff your psychiatrist says about you trying new things and you can blame the blunt tip pressed against your rear hole on the proximity of her aura.<br>
<</if>>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") >= $scene.plugObj.effect.anal.level>>
Your well-exercised ass parts easily for the plug, though you let out a slight moan as it seats itself within you.<br>
<<else>>
Your ass stretches to accommodate its new intruder but finally the pressure is too much and it zips into place, the base of the plug nestling up against your rear hole as its internal portion has you moaning with fullness.<br>
<</if>>
<br>
<<if $locationbeforeuseage == 'event_psychiatrist_1stsession_2_changingroom'>>
You hear someone clearing their voice and look up to find <<=setup.getNpcName('npc_psychiatrist', 'formal')>> in the doorway looking down at you.<br>
<br>
"@@.npc_psychiatrist;Very interesting - today should be a productive session indeed.@@"<br>
<br>
You blush hard but by the time you scrape up the courage to look back up at her she has disappeared, leaving you to finish changing.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Finish Changing.' 30>>]
<<else>>
You hear someone clearing their voice and look up to find <<=setup.getNpcName('npc_psychiatrist', 'formal')>> in the doorway looking down at you.<br>
<br>
"@@.npc_psychiatrist;Cute, but too bad. Next time you should plug yourself BEFORE we start our session, I am sure it will lead to much more... interesting discussions.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_changingroom_leave' 'Finish Changing.' 30>>]
<</if>>
</div>/*#
#desc: first time anal plugging at gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<set $scene.plugObj = setup.getItemObj(setup.getItemFromType('plug'))>>
<<setThreshold 'anal' 'plugs' 'beginner_plug' true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
Sitting in the glory hole bathroom you pull out your <<=$scene.plugObj.name>> and get ready to shove it into your slutty ass. Your eyes on the currently open glory hole itself you think how it will feel to be filled from BOTH ends as you press the blunt tip of the plug against your eager ass.<br>
<br>
<<if $npc_psychiatrist.hypnosis >= 2>>
Recalling the last time you were plugged - coming out of one of your hypnosis sessions you shudder and the plug slips into position. Thinking about <<=setup.getNpcName('npc_psychiatrist', 'formal')>> has you wondering what she would say about what you just did, squatting in a dirty bathroom, shoving a plug into your ass while you wait for another cock to serve.<br>
<br>
<<printThoughtGlitch $player "My ass is better filled...">><br>
<<elseif $player.flags.fuckedbydildo>>
You may have felt something cock-shaped in your ass but the plug is different, accelerating into position once you are over the widest portion with your ass clamping down around it in contrast to the constantly varying sensation caused by the dildo thrusting in and out of your rear.<br>
<<else>>
You have never had something like this "up there," but, then again, it wasn't that long ago that you would have never servicing strange cocks. Whatever is happening to you at the moment... you are now plugged, and you find your mouth watering in anticipation of getting a little something, something for your face-hole to match.<br>
<</if>>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") >= $scene.plugObj.effect.anal.level>>
The plug slots easily into your ass, and you give a happy little bounce as you adjust to its pleasant presence.<br>
<<else>>
The plug is stretching you intensely but you know that if you stick around you'll have something popping in to distract you soon enough.<br>
<</if>>
<br>
[<<moveTo "room_usual_place_toilet" "Sit and recover" 60>>]<br>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_usual_place_inside" "Leave the Toilet!" 30>>]
<<else>>
[@@.link_locked;You're not going to leave the toilet dressed like this@@]
<</if>>
</div>/*#
#desc: first time anal plugging at "other" location
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<set $scene.plugObj = setup.getItemObj(setup.getItemFromType('plug'))>>
<<setThreshold 'anal' 'plugs' 'beginner_plug' true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<div id="invframe" class="scrolltext">
Nervously readying the <<=$scene.plugObj.name>> to go into your ass you find yourself shaking slightly, whether in anticipation or in embarrassment at your quasi-public location you couldn't say.<br>
<br>
<<printThought $player "Why didn't I wait until I got home for this?">><br>
<br>
<<if $npc_psychiatrist.hypnosis >= 2>>
Though it is not the first time you've been plugged it is the first that you have inserted the plug yourself... you think, though you were definitely plugged at the end the events of that hypnosis session are as fuzzy as the rest.<br>
<br>
<<printThoughtGlitch $player "My ass is better filled...">><br>
<<elseif $player.flags.fuckedbydildo>>
You have had something phallic up there but the plug proves quite different, the "spreading" sensation momentary, rather than constant as your rear quickly sucks the plug inside and clamps down on the narrower base.<br>
<<else>>
You have never felt anything like this before, the plug stretching you to what feels like your limit before popping into place to fill your rear hole.<br>
<</if>>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") >= $scene.plugObj.effect.anal.level>>
Your well-conditioned rear swiftly adjusts to its new occupant, the pleasant fullness like an old friend come to visit.
<<else>>
You feel VERY full behind, surprised at how large the <<=$scene.plugObj.name>> feels inside of you and yet, despite the eye-widening spreading, it feels... good?
<</if>>
<br><br>
[[[Continue|$locationbeforeuseage]]]
</div>/*#
#desc: makeup selection
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $makeuproom>>
<<set $player.inside = true>>
<<if $roomchange==true>>
/%
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>%/
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR $makeuproom_image>>
<div id="invframe" class="scrolltext">
<<if $player.makeup.template=="">>
<<if $player.makeup.permanent=="">>
You look at yourself in the mirror. You're not wearing any makeup at all.
<<if setup.getTotalValue('feminization')<5>>
Are you supposed to wear makeup? You're confused.
<<elseif setup.getTotalValue('feminization')<15>>
Maybe you should wear some.
<<else>>
Eww, you should rectify this deficit right away.
<</if>>
<<if setup.getTotalValue('makeup')>0>>
<br><br>
<<getMakeupList $player>>
<<else>>
Unfortunately you don't know how to apply makeup!
<</if>>
<<else>>
You look at yourself in the mirror, <<getMakeup $player>> It's basically all but impervious to damage for the next few years, but you could always put something else over top.<br>
<br>
<<if setup.getTotalValue('makeup')>0>>
<<getMakeupList $player>>
<<else>>
This makeup is permanent and you don't have the skills to try and paint over it.
<</if>>
<</if>>
<<else>>
You look at yourself in the mirror to check the status of your makeup.
<<getMakeup $player>><br><br>
<<if ($player.makeup.messed>0) && ($player.makeup.messed <50)>>
<<if !(setup.checkItemInInventory('makeup_basic')||setup.checkItemInInventory('makeup_advanced')||setup.checkItemInInventory('makeup_expert'))>>
[@@.link_locked;You lack the right equipment to fix your makeup@@]<br>
<<else>>
<<set _tmpTime = Math.max(60,Math.ceil(setup.getMakeupTime($player,$player.makeup.template)/2))>>
<<set _tmpMin = Math.ceil(_tmpTime/60)>>
<<set _tmpdiff = setup.getMakeupDifficult($player,$player.makeup.template)>>
<<if _tmpMin == 1>>
[<<moveTo "room_do_makeup_fix" "Fix your makeup (about <<=_tmpMin>> Minute, <<=_tmpdiff>>)" _tmpTime '<<set $rng = Math.random()>>'>>]<br>
<<else>>
[<<moveTo "room_do_makeup_fix" "Fix your makeup (about <<=_tmpMin>> Minutes, <<=_tmpdiff>>)" _tmpTime '<<set $rng = Math.random()>>'>>]<br>
<</if>>
<</if>>
<</if>>
<<if !(setup.checkItemInInventory('makeup_basic')||setup.checkItemInInventory('makeup_advanced')||setup.checkItemInInventory('makeup_expert'))>>
<<if $makeuproom_water>>
[<<moveTo "room_do_makeup_remove_water" "Wash off the Makeup without the aid of makeup remover (about 25 Minutes)" 1500>>]<br>
<<else>>
[@@.link_locked;With no makeup remover and no access to water you have no way to wash the makeup off right now.@@]<br>
<</if>>
<<else>>
[<<moveTo "room_do_makeup_remove" "Remove the Makeup (about 5 Minutes)" 300 >>]<br>
<</if>>
<</if>>
<br><br>
<<include thoughts_home>>
[<<moveTo $return_makeuproom $return_makeuproomtext 0>>]
</div>/*#
#desc: fix makeup
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $makeuproom>>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $tmp = {}>>
<<set $room_do_makeup_fix_obj = setup.fixMakeup($player,$rng)>>
<<set $player.makeup.messed = $room_do_makeup_fix_obj.newValue>>
<<set $tmp.room_do_makeup_fix_diff = setup.getMakeupDifficult($player,$player.makeup.template)>>
<<set $tmp.difficulty = 'normal'>>
<<switch $room_do_makeup_fix_diff>>
<<case 'easy'>>
<<set $tmp.difficulty = 'insignificant'>>
<<case 'medium'>>
<<set $tmp.difficulty = 'normal'>>
<<case 'hard'>>
<<set $tmp.difficulty = 'very'>>
<<case 'impossible'>>
<<set $tmp.difficulty = 'little'>>
<</switch>>
<<applyExperience 'makeup' $tmp.room_do_makeup_fix_obj.level $tmp.difficulty $INCOGNITO>>
<<updateBonusStats $player>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR $makeuproom_image>>
<div id="invframe" class="scrolltext">
You try your best to fixed your botched makeup.
<<set _tmpDiff = setup.getMakeupDifficult($player,$player.makeup.template)>>
<<switch $room_do_makeup_fix_diff>>
<<case 'easy'>>
Not a problem for you at all. The end result looks just like new.
<<case 'medium'>>
<<switch $room_do_makeup_fix_obj.result>>
<<case 0>>
You struggle a little bit with this makeup, but you manage to fix it without much of a problem. The end result looks just like new.
<<case 1>>
You struggle a little bit with this makeup, and while the end result is not as good as a perfect version, you manage to fix some mistakes, making the end result more pleasant to look at.
<<case 2>>
You struggle a little bit with this makeup, getting too confident in your skills and messing up. Now it looks even worse then before.
<</switch>>
<<case 'hard'>>
<<switch $room_do_makeup_fix_obj.result>>
<<case 0>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. Somehow you still manage to fix it. The end result looks just like new.
<<case 1>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. While the end result is not as good as a perfect version you do manage to fix some mistakes, making the end result more pleasant to look at.
<<case 2>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. As expected you messed up, and now it looks worse then it used to.
<</switch>>
<<case 'impossible'>>
But it's already too late when you realise that you're in way over your head trying to correct this rather complicated makeup. You stare with disbelieve into the mirror, gazing at the battlefield that used to be your face. You should really wash this abomination off and start anew.
<</switch>>
<br><br>
[<<moveTo "room_do_makeup" "Continue." 0>>]
</div>/*#
#desc: remove makeup with makeup remover
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $makeuproom>>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = "">>
<<updateBonusStats $player>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR $makeuproom_image>>
<div id="invframe" class="scrolltext">
You use the different makeup removal products to clean off any remaining makeup from your face,
<<if $player.makeup.permanent == "">>
until there's nothing left besides your natural looks.
<<else>>
until your back down to just your always perfect permanently applied "base layer."
<</if>>
<br><br>
[<<moveTo "room_do_makeup" "Continue." 0>>]
</div>/*#
#desc: remove makeup with water
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $makeuproom>>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = "">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR $makeuproom_image>>
<div id="invframe" class="scrolltext">
Without the aid of makeup removal products it's a tedious task to remove all the remaining makeup from your face, and you're not even sure if you got everything. You seem to find remains of small bits of eyeliner on your face over and over again.
<<if $player.makeup.permanent != "">>
You can only hope that it does not clash with your permanent makeup "base layer."
<</if>>
<br><br>
[<<moveTo "room_do_makeup" "Continue." 0>>]
</div>/*#
#desc: apply fresh makeup
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $makeuproom>>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $tmp = {}>>
<<set $room_do_makeup_apply_obj = setup.applyMakeup($player,$room_do_makeup_apply_template,$rng)>>
<<set $player.makeup.template = $room_do_makeup_apply_template>>
<<set $player.makeup.messed = $room_do_makeup_apply_obj.newValue>>
<<set $tmp.room_do_makeup_apply_diff = setup.getMakeupDifficult($player,$player.makeup.template)>>
<<set $tmp.difficulty = 'normal'>>
<<switch $room_do_makeup_fix_diff>>
<<case 'easy'>>
<<set $tmp.difficulty = 'insignificant'>>
<<case 'medium'>>
<<set $tmp.difficulty = 'normal'>>
<<case 'hard'>>
<<set $tmp.difficulty = 'very'>>
<<case 'impossible'>>
<<set $tmp.difficulty = 'little'>>
<</switch>>
<<applyExperience 'makeup' $tmp.room_do_makeup_fix_obj.level $tmp.difficulty $INCOGNITO>>
<<updateBonusStats $player>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR $makeuproom_image>>
<div id="invframe" class="scrolltext">
You try your best to put on the makeup.
<<set _tmpDiff = setup.getMakeupDifficult($player,$player.makeup.template)>>
<<switch $tmp.room_do_makeup_apply_diff>>
<<case 'easy'>>
Easy peasy. Not a problem for you at all at your current skill level. The end result looks just like it's supposed to.
<<case 'medium'>>
<<switch $room_do_makeup_apply_obj.result>>
<<case 0>>
You struggle a little bit with this makeup but you manage to apply it without much of a problem. The end result looks just it's supposed to be.
<<case 1>>
You struggle a little bit with this makeup and while the end result is not a perfect version, you manage to create a somewhat passable end result.
<<case 2>>
You struggle a little bit with this makeup and at the end you got too confident in your skills and mess up. It does not really look that good.
<</switch>>
<<case 'hard'>>
<<switch $room_do_makeup_apply_obj.result>>
<<case 0>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. Somehow you still manage to apply it. The end result looks just as it is supposed to.
<<case 1>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. While the end result is not a perfect version, you manage to create a somewhat passable approximation.
<<case 2>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. As expected you messed up, and transformed your face into an exhibition for Post-postmodernism.
<</switch>>
<<case 'impossible'>>
But it's already too late when you realise that you're in way over your head trying to correctly applying this rather complicated makeup. You stare with disbelieve into the mirror, gazing at the battlefield that used to be your face. You should really wash this abomination off and start from anew or maybe take a picture for the local museum of arts.
<</switch>>
<br><br>
[<<moveTo "room_do_makeup" "Continue." 0>>]
</div>/*#
#desc: game over grue intro
#status: FINISHED 0.4.0.0
#*/
<<if visited(passage()) == 1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<</if>>
<<set $player.location to "eRRoR#2550[AnN] <Burr>">>
<<include enterroom_hypnosis>>
<<createBGR "./images/locations/game_over_grue.png">>
<div id="invframe" class="scrolltext">
<<if $phonecall>>
As you put away your phone existential dread comes over you.
<<else>>
As you leave the building existential dread comes over you.
<</if>>
What if the developer has not foreseen this outcome? Too late you realise that this part of the game has not been finished yet.<br>
<br>
It is pitch black. You are likely to be eaten by a grue.<br>
<br>
>west<br>
<br>
You have moved into a dark place.<br>
It is pitch black. You are likely to be eaten by a grue.<br>
<br>
>what is a grue<br>
The grue is a sinister, lurking presence in the dark, unfinished places of the earth. Its favourite diet is player characters, but its insatiable appetite is tempered by its fear of light. No grue has ever been seen by the light of a finished area of the game, and few have survived its fearsome jaws to tell the tale.<br>
<br>
>south<br>
Oh, no! You have walked into the slavering fangs of a lurking grue!<br>
<br>
<div style="text-align: center;"><span align="center">* * * * You have died * * * *</span></div>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: game over caught by grue
#status: FINISHED 0.4.0.0
#*/
<<if visited(passage()) == 1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<</if>>
<<set $player.location to "eRRoR#2551[nAn] <Gurr>">>
<<include enterroom_hypnosis>>
<<createBGR "./images/locations/game_over_grue.png">>
<div id="invframe" class="scrolltext">
You realise that you're too late for your appointment with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, and start running, like you've never run before. Sadly this speed was too much for the poor game engine and so you glitched through the floor into the negative stage.
It is pitch black. You are likely to be eaten by a grue.
>west
You have moved into a dark place.
It is pitch black. You are likely to be eaten by a grue.
>what is a grue
The grue is a sinister, lurking presence in the dark, unfinished places of the earth. Its favourite diet is player characters, but its insatiable appetite is tempered by its fear of light. No grue has ever been seen by the light of a finished area of the game, and few have survived its fearsome jaws to tell the tale.
>south
Oh, no! You have walked into the slavering fangs of a lurking grue!
<div style="text-align: center;"><span align="center">* * * * You have died * * * *</span></div>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: game over, unemployment
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "eRRoR#2552[NaN] <Durr>">>
<<include enterroom_hypnosis>>
<<createBGR "./images/locations/game_over_trap.png">>
<div id="invframe" class="scrolltext">
Being unemployed is difficult for you, so you start writing a lot of applications. One extremely unlikely contestant returns your application positive. You're contacted by <<=$player.flags.faultcompany>>. The irony is not lost on you. They're not really looking for an Data Administrator right now, but if you're interested in Game Development, they're looking for a Beta Tester for their newest game called <a target="_blank" href="http://www.trapquest.com/">Trap Quest</a> using their new, not yet announced VR Platform. Hmmm... sounds like an RPG to you. Since you're a fan of their products you happily accept.<br>
<br>
A few days later you approach the imposing <<=$player.flags.faultcompany>> Headquarter. After announcing your arrival at the lobby you're escorted to the <<=$player.flags.faultcompany>> R&D Department by two rather attractive ladies, each wearing an outrageously skimpy latex uniform that leaves very little to your imagination. This is the last time anyone ever heard of the entity called <<=$player.first_name>> <<=$player.last_name>>...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: game over, admit you have rapey tendancies
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "eRRoR#9582[NaN] <Durr>">>
<<include enterroom_hypnosis>>
/%<<createBGR "./images/locations/game_over_trap.png">>%/
<div id="invframe" class="scrolltext">
You're not sure what's going on but you don't even have a chance to stand before two seven-foot tall steel cyborgs appear in the office. Each is a large winged female, shiny and with identical masks to disguise their faces. Positioned to block the door one approaches you bearing a set of heavy restraints.<br>
<br>
You gulp, you have heard of the so-called "Valkyr" Unit but you had never seen one and thought them merely a myth. According to gossip they are a cadre of female soldiers who distinguished themselves in the war in a series of battles but were left more cybernetic than human. With the end of the war they were "re-commissioned" as a private, elite law enforcement unit.<br>
<br>
You flash back to your response on the questionnaire - could expressing a theoretical interest in rape really be so harshly punished? You have your answer as you are roughly restrained, your wrists cuffed behind your back and a heavy collar snapped around your throat. You open your mouth to object but no sound comes out - the collar stifles everything even as it administers a painful shock to punish the mere attempt.<br>
<br>
"SILENCE, RAPIST SCUM." The nearest Valkyr states, her mechanical voice booming in the small office as she takes hold of your shoulders and steps next to you. "REMAIN MOTIONLESS FOR TRANSPORT." <br>
<br>
You are held in her vice-like grip as her wings open and surround you. You catch a final disappointed glance from <<=setup.getNpcName('npc_psychiatrist', 'first')>> before your vision is completely filled with chrome-feathered wings. A small needle pricks the back of your neck and a tingle goes through your body as you feel some strange liquid being injected into you. You lose control over your muscles and your body starts to feel limp as they carry you outside to find a third Valkyr standing next to a sarcophagus like case.<br>
<br>
The sound of several hydraulic and electronic system reaches your ears, as your heavy-lidded eyes manage to perceive metal plates shifting apart from the previously smooth looking surface. As the sarcophagus unfolds your clothes are torn from your body by the sharp, precise claws of the Valkyr. A swarm of slender metallic tentacles unfurls from the hollow inside, writhing and reaching out towards your chest.<br>
<br>
Tracing out towards your extremities the tentacles wrap around your arms and legs. You can feel their cool metallic surface coated with some sort of slimy ooze, which makes it easy for them to ensnare you even more, stretching your limbs and forcing you into submission. Weakened by drugs and now held fast you can only tremble in fear as you can feel tentacles probing around your <<getWordAnus $player>>, <<getWordMyPenis $player>> and mouth. You try to resist, but the first tentacle enters your <<getWordAnus $player>> with ease, spreading you and making room for more to follow. Even though each tendril is no more than a centimeter in diameter you're soon reaching your limit and let out a moan, which the tentacles in front of your face exploit to enter your mouth, forcing it permanent open, as even more tentacles slither down your gullet and windpipe. Whatever the tentacles are coated with acts as a paralysing agent, your initial gag reflex swiftly going dormant.<br>
<br>
Even your poor <<getWordMyPenis $player>> gets explored by a particularly slender tentacle, making you groan once more... well attempt, not peep escapes your penetrated mouth. As you are violated in seemingly every way imaginable you almost overlook the other tentacles wrapped around your body forcing you body into a fetal position, your knees almost touching your face as you are lifted into the air and retracted into the metal box.<br>
<br>
The last thing you see as you look up out of your chrome chamber are the metal plates moving back into their original position, locking you into the sarcophagus, embraced by metallic tentacles which spread across and probe every last square centimeter of your body, filling each of your orifices with more and more tentacles, stretching them to levels you never thought possible. You gave up counting how many tentacles implanted themself into your <<getWordAnus $player>>, but you definitively felt the 2nd and 3rd one entering your urethra. The tentacles in your mouth started to pump something into your stomach and you are finally granted the sweet embrace of unconsciousness.
<br><br>
Justice comes sure and swift, the "being" known as <<=$player.first_name>> <<=$player.last_name>> is never heard of again, though it is a curious thing that the ranks of the Valkyr seem to expand without ever doing recruiting...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: game over, refuse "punishment" for getting locked in chastity for pay
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "eRRoR#3885[NPE] <Brrr>">>
<<include enterroom_hypnosis>>
<<createBGR "./images/locations/NYI.png">>
<div id="invframe" class="scrolltext">
Getting fired for so-called insubordination is bad enough... worse is the fact that <<=setup.getNpcName('npc_manager', 'formal')>> expels you from her office without even letting you get dressed!<br>
<br>
You try to object but a security guard appears as if from nowhere, hauling you into the elevator and tossing you out the front door of the lobby. Naked, save for the cage that got you into this whole mess, you've never been so embarrassed in your life, screaming at the guard who glowers at you from the other side of the barred door as you pound and pull in an attempt to get back in.<br>
<br>
Too focused on your anger you don't even notice the cop appear behind you - your hands cuffed behind your back before you can even react as you are arrested for "indecent exposure" and "attempted destruction of property." <br>
<br>
Booked, fined and sent "home" you are on the street within a month, begging your keyholder to pay you for a "contract extension" only to find yourself in a downward spiral of depravity.<br>
<br>
The memory of touching your <<getWordMyPenis $player>> soon fades, your life becoming one of a cheap whore, serving other's cocks while remaining ever unsatisfied. Standing on "your" corner looking for your next John you try not to think about how it all went wrong, how much better things would have gone if you had just accepted your punishment and done what <<=setup.getNpcName('npc_manager', 'formal')>> told you to...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: game over, fail to make rent
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "eRRoR#8552[NaN] <Durr>">>
<<include enterroom_hypnosis>>
<<createBGR "./images/locations/NYI.png">>
<div id="invframe" class="scrolltext">
Kicked out of your apartment you ask your <<=setup.getNpcName('npc_manager', 'title')>> about employee housing. She is able to set you up but things seem to change. Lying in your private pod each night your dreams are strange, your waking hours a haze of utter obedience as you feel your sense of self steadily slipping away.<br>
<br>
Two weeks later your job changes yet again as Unit <<uc $player.first_name>> starts her new job in the R&D advanced testing department...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: game over, fail to make rent
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "eRRoR#2552[NaN] <Durr>">>
<<include enterroom_hypnosis>>
<<createBGR "./images/locations/NYI.png">>
<div id="invframe" class="scrolltext">
This is all too much, and you tell your <<=setup.getNpcName('npc_manager', 'title')>> that, if some after-work party is the conditions of your continued employment you are done.<br>
<br>
"@@.npc_manager;I see... well I suppose that is all then. Good luck with the rest of your life, I doubt we will meet again.@@"<br>
<br>
As you hang up a dread weight falls over you - you now have no job, rent due and no real plan. Taking a deep breath you consider your next options, whatever they will be one you know for certain is that it's a whole different game now...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: game over, failed qualifying period
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "eRRoR#2532[NaN] <Durr>">>
<<include enterroom_hypnosis>>
<<createBGR "./images/locations/NYI.png">>
<div id="invframe" class="scrolltext">
You make no effort to defend your job and <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head.<br>
<br>
"@@.npc_manager;I am afraid that, as you have failed to rise to meet the requirements of a SISSY secretary in the allotted time, I have no choice but to terminate your employment, effective immediately. I wish you luck in your future endeavours... whatever they may be.@@"<br>
<br>
<<printThought $player "Maybe I should have tried harder...">><br>
<br>
Leaving the building you spend some time at the bar and then head home, trying to untangle where to go having closed this chapter in your life. Wherever it is, you doubt it will be as... "interesting," as they say, as your brief time as a secretary.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: game over, failed inspection in stage 1
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "eRRoR#2775[NaN] <Durr>">>
<<include enterroom_hypnosis>>
<<createBGR "./images/locations/NYI.png">>
<div id="invframe" class="scrolltext">
You try to object but <<=setup.getNpcName('npc_manager', 'formal')>> is immovable; and with the number of mistakes you have made you should expect nothing less. She glowers at you the entire way as you walk out of her office only to show the barest flicker of regret as look back over your shoulder at the the door closing behind you.<br>
<br>
Away from her influence things are rocky for awhile but, with some help from friends you are able to downsize to a smaller apartment and eventually get a job. It's in retail, your ex-<<=setup.getNpcName('npc_manager', 'title')>> seemingly having quite thoroughly blackballed you from anything you had prior experience at but... you survive.<br>
<br>
Working your way through a dull life you occasionally wonder what might have happened if you had stuck around, regret at having not stuck things out a bit longer than you did in your strange stint as a secretary nagging you ever harder with each boring day of selling shoes as you look back at what you eventually consider were your brief glory days...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: game over, failed morning inspections in stage 2
#status: FINISHED 0.6.0.0
#*/
<<set $player.location to "eRRoR#3775[NaN] <1111>">>
<<include enterroom_hypnosis>>
<<createBGR "./images/locations/NYI.png">>
<div id="invframe" class="scrolltext">
Distracted by <<=setup.getNpcName('npc_manager', 'formal')>> you do not notice <<=setup.getNpcName('npc_retention', 'formal')>> pulling your arms behind your back until the handcuffs close with a click and you realise you have just lost the use of your arms.<br>
<br>
"@@.npc_retention;Company policy@@" he notes flatly before you can even raise the question, <<=setup.getNpcName('npc_manager', 'formal')>> stepping in to fill in the details in a patronizing tone.<br>
<br>
"@@.npc_manager;Yes, just a precaution, in the past we have had people react quite... badly to being let go, this is safer for everyone involved.@@"<br>
<br>
You aren't sure about that but you have little choice but to obey as <<=setup.getNpcName('npc_retention', 'formal')>> takes you by the arm, his hand almost encircling your bicep as he leads you to the door and then the elevator remaining silent the whole way.<br>
<br>
Riding down you pass straight by the lobby to continue a descent and you suddenly start getting worried, asking <<=setup.getNpcName('npc_retention', 'formal')>> what is going on.<br>
<br>
"@@.npc_retention;Didn't you read your contract? You may have proven inadequate as a secretary but the company needs to recoup its investment in you somehow. If it makes you feel any better you should come to enjoy your new position... eventually.@@"<br>
<br>
You start to object but the doors open and before you know it you have been transferred to a gurney, strapped down thoroughly and with a mask placed over your face that soon has you feeling fuzzy as you breath in sweet-tinged air.<br>
<br>
<<=ps(setup.getNpcName('npc_retention', 'formal'))>> words technically prove prescient... in a way. Certainly you come to enjoy your new position, though by that time there is little left that could be identified as "you" still, that years model of lifelike maidbots garners rave reviews and really... isn't making the world a cleaner place a laudable goal?<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div>
</div>/*#
#desc: checks to see if "first time wearing heels" scene should be shown
#status: FINISHED 0.4.0.0
#*/
<<initRoom>>
<<if setup.getTotalValue('heels')>0>>
<<moveTo $locationbeforeuseage>>
<<else>>
<<setThreshold 'heels' 'wearing_heels' 'beginner' true>>
<<moveTo 'event_beginner_heels_1'>>
<</if>>/*#
#desc: first time player puts on heels
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/scenes/scene_heels_1.png">>
<div id="invframe" class="scrolltext">
After putting on these <<=setup.getItemTypeName('shoes')>> for the first time, you stumble around for a few minutes, until, though occasionally wobbly, you manage a bit of stability.<br>
<br>
<<printThought $player "Walking in these is hard!">><br>
<br>
You'll have to practice walking a lot in these to get any better.<br>
<br>
[<<moveTo $locationbeforeuseage "Continue" 30>>]
</div>/*#
#desc: use manager's business card
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<set _noPhone = false>>
<<if $roomchange == true>>
<<if setup.checkItemTypeinInventory('smartphone')>>
<<addPhonenumber $phoneList 'npc_manager'>>
<<deleteItem $player $now 'business_card'>>
<<else>>
<<set _noPhone = true>>
<</if>>
<</if>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if _noPhone>>
You need your phone to add contact information.<br>
<br>
<<else>>
You transfer the contact information for <<=setup.getNpcName('npc_manager', 'formal')>> from the business card to your phone.<br>
<br>
<</if>>
[[[back|$locationbeforeuseage]]]
</div>/*#
#desc: use technician's business card
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<set _noPhone = false>>
<<if $roomchange == true>>
<<if setup.checkItemTypeinInventory('smartphone')>>
<<addPhonenumber $phoneList 'npc_technician'>>
<<deleteItem $player $now 'card_technician'>>
<<else>>
<<set _noPhone = true>>
<</if>>
<</if>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if _noPhone>>
You need your phone to add contact information.<br>
<br>
<<else>>
You transfer the contact information for <<=setup.getNpcName('npc_technician', 'first')>> from the contact card to your phone.<br>
<br>
<</if>>
[[[back|$locationbeforeuseage]]]
</div>/*#
#desc: use landlord's business card
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<set _noPhone = false>>
<<if $roomchange == true>>
<<if setup.checkItemTypeinInventory('smartphone')>>
<<addPhonenumber $phoneList 'npc_landlord'>>
<<deleteItem $player $now 'card_landlord'>>
<<else>>
<<set _noPhone = true>>
<</if>>
<</if>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if _noPhone>>
You need your phone to add contact information.<br>
<br>
<<else>>
You are kind of puzzled as your phone does not seem to realise that there is a contact card to scan. You try a few times. No result. Hmm... maybe bluetooth is deactivated because of your remaining battery? Nope. You decide to update your phone. Nope, does not work either. This starts to get frustrating. You check if the card is okay. Then it hits you like a brick in the face. This is just a normal scrap of paper. Rolling your eyes at how behind the times your landlord is you manually type <<=ps(setup.getNpcName('npc_landlord', 'first'))>> contact info into your phone.<br>
<br>
<</if>>
[[[back|$locationbeforeuseage]]]
</div>/*#
#desc: use psychiatrists' business card
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<set _noPhone = false>>
<<if $roomchange == true>>
<<if setup.checkItemTypeinInventory('smartphone')>>
<<addPhonenumber $phoneList 'npc_psychiatrist'>>
<<deleteItem $player $now 'card_psychiatrist'>>
<<else>>
<<set _noPhone = true>>
<</if>>
<</if>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if _noPhone>>
You need your phone to add contact information.<br>
<br>
<<else>>
You transfer the contact information for <<=setup.getNpcName('npc_psychiatrist', 'first')>> from the contact card to your phone.<br>
<br>
<</if>>
[[[back|$locationbeforeuseage]]]
</div>/*#
#desc: unpackage small anal plug from box
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<if $player.llocation=="room_mall_lingerie_shop">>
<<initRoom>>
<<moveTo event_shopkeeper_02_1>>
<<else>>
<<addItem "analplug_beginner">>
<<deleteItem $player $now 'analplug_small_box'>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the anal plug from it. It is small and made of metal. It has a crystal shaped like a heart at the base. As you discard the box you notice a note inviting you to the opening of a new store in the mall - <<printShopName 'mall_sexstore'>>, a sex toy shop!<br>
<br>
[[[back|$locationbeforeuseage]]]
</div>/*#
#desc: try to connect webcam to something
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Install Webcam">>
<<set _useItem = false>>
<<if $roomchange == true>>
<<if ($player.llocation=="room_livingroom") || ($player.llocation=="room_computer")>>
<<set _useItem = true>>
<<deleteItem $player $now 'webcam'>>
<<addComputerUpgradeItem $computer 'webcam'>>
<</if>>
<</if>>
<<include enterroom_locked>>
<<=_location>><br>
/%<<createBGR "./images/locations/phonecall.png">>%/
<div id="invframe" class="scrolltext">
<<if _useItem>>
You connect the Webcam to your computer and install necessary software to use it.
<<else>>
You cannot use your Webcam here.
<</if>>
<br><br>
[[[back|$locationbeforeuseage]]]
</div>/*#
#desc: take pink pill first time
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<set $player.timebased.horny = setup.changeHorny($player,50)>>
<<setTmpEffect $player 'sissypill' 100>>
<<if !$player.flags.atesissypill>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
'theme_manager_transformation_header'
>>
<<set $player.flags.atesissypill = true>>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<deleteItem $player $now 'pink_pill'>>
<</if>>
<<createBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
You drop the pink pill into your mouth and swallow it. Hmm... tastes like bubblegum and cotton candy. Maybe a placebo? Or maybe some kind of candy? "Sissy" is acronym for Social Interaction Service Syndicate LTD after all. But only a few seconds pass, before you realise your mistake. Whatever this is, it sure isn't a placebo. You start feeling really strange. Heat swells up from underneath your skin, making your whole body burn up. Your chest tingles and you feel a huge pressure building. Then you begin to shiver from cold and excitement at the same time, unable to comprehend what's happening to you. You're horny like you've never been before,
<<if setup.getItemTypeName("cage")=="">>
making your <<getWordMyPenis $player>> twitch and jump up and down with excitement.
<<else>>
and even though the <<=setup.getItemTypeName("cage")>> on your <<getWordMyPenis $player>> prevents it from getting too hard, it still bounces with excitement, the hard cage banging against your thigh.
<</if>>
<br><br>
<<printThought $player "Oh my <<getWordGod $player>>! What is happening to me?">><br>
<br>
[<<moveTo "szene_pink_pill" 'Continue' 30>>]
</div>/*#
#desc: effects of pink pill kick in
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<set $player.cutscene.taskszene = true>>
<</if>>
<<createBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if ($player.body.breastsize[1]<2) && ($player.body.breastsize[2]>0)>>
No, there has to be something wrong with your eyes. And your hands. Maybe all of your senses. Because you think you observe your previously flat chest slowly start to swell. You stare in disbelief at the two perfectly formed A-cup breasts attached to your body. Are these fake? You try to pinch yourself in the nipples to check if you're dreaming.<br>
<br>
<<printThought $player "Aah, that hurt!">><br>
<br>
More a moan than a cry of pain, your new breasts seem to be very sensitive, simply touching them gives you way too much sensory feedback compared to what you're used to. Your disbelief filters away in favour of simple panic. You have no idea what's going on with your body. You try to focus to ponder your options, but find it kind of hard to get any straight thought at all. The changes seem to be both physical and psychological. Maybe some consciousness manipulating drug? But these feel too real. You should really confront <<=setup.getNpcName('npc_manager', 'formal')>> about this, after all she gave the pill to you!
<<else>>
The pressure fades away after a while, but besides your nipples feeling a little bit more fluffy nothing else happens. You try to focus to ponder your options, but find it kind of hard to hold onto a thought for more than a few moments. The changes seem to be psychological. Maybe some consciousness manipulating drug? You should really confront <<=setup.getNpcName('npc_manager', 'formal')>> about this, after all she gave the pill to you!
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage 'Continue' 30 '<<set $player.cutscene.taskszene = false>>'>>]
</div>/*#
#desc: take pink pill (repeatable)
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<set $player.timebased.horny = setup.changeHorny($player,50)>>
<<setTmpEffect $player 'sissypill_mk1' 100>>
<<deleteItem $player $now 'sissy_pill_mk1'>>
<<set $player.flags.used_sissy_pill_count += 1>>
<</if>>
<<createBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
You drop the Sissy Pill MK1 into your mouth and swallow it. Hmm... tastes like bubblegum and cotton candy. It takes only a few seconds before the effects start to set in. Again, you start feeling really strange, like heat swells up from underneath your skin, making your whole body burn up. Your chest tingles and you feel a huge pressure building. Then you begin to shiver from cold and excitement at the same time, unable to comprehend what's happening to you. Again, this procedure makes you horny beyond your wildest dreams,
<<if setup.getItemTypeName("cage")=="">>
making your <<getWordMyPenis $player>> twitch and jump up and down with excitement.
<<else>>
and even though the <<=setup.getItemTypeName("cage")>> on your <<getWordMyPenis $player>> prevents it from getting too hard, it still jumps up and down with excitement, the hard prison banging against your thigh.
<</if>>
<br><br>
<<printThought $player "Oh <<getWordGod $player>>... this feels so good!">><br>
<br>
[[[Continue|$locationbeforeuseage]]]
</div>/*#
#desc: eat sissy candy
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<set _resist = false>>
<<if $player.timebased.fatigue<=70>>
<<set _resist = true>>
<</if>>
<<if $roomchange == true>>
<</if>>
<<createAnimatedBGR "./video/mindpop.mp4">>
<div id="invframe" class="scrolltext">
You unwrap the candy. Looks interesting enough. You have no idea how they made the red parts of the candy glow, but it gives the whole thing a rather mysterious look. You hope it tastes as good as it looks. You open your mouth and put the candy inside.<br>
<br>
<<printThought $player "Wow... that tastes even better then expected!">><br>
<br>
You never tasted anything remotely comparable. It tastes like strawberry, cream, cotton candy and rainbows. You feel kind of dizzy for a moment, and slowly but surely you can feel some thoughts disappear from your head. Any thoughts of insubordination, disobedience, rebellion, really questioning anything at all are fading in the background. A part of you wants to scream in panic, but that voice is fading just as fast, leaving behind a pink bubble that used to be your mind.<br>
<br>
<<printThought $player "Oh my <<getWordGod $player>>! What is happening to me?" -20>><br>
<br>
More and more of the ... undesirable thoughts are drawn into the bubble. And the bubble starts to grow like a bubblegum bubble. It grows and bloat and stretches until you're sure there's no way any more will fit inside. And you are afraid... very, very afraid, what happens if this bubble pops? Will you still be you, or is that part of you gone for good? You try to concentrate.
<<if _resist>>
There seems to be a way out. You simply have to spit the candy out. But is that really what you want?<br>
<br>
[<<moveTo "room_use_unknown_candy_2_spit" "Focus your willpower and spit the candy out!" 30>>]<br>
[<<moveTo "room_use_unknown_candy_2_swallow" "Swallow the sweet delight!" 30>>]
<<else>>
But you don't have the necessary stamina reserves left to fight this war, so there's only one option left for you.<br>
<br>
[<<moveTo "room_use_unknown_candy_2_swallow" "Swallow the sweet delight!" 30>>]
<</if>>
</div>/*#
#desc: spit out sissy candy halfway through
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<gainWillpower $player 1>>
<<addPopUpText "You gained one point of Determ... err... Willpower.">>
<<deleteItem $player $now 'unknown_candy'>>
<<applyFatigue $player 30>>
<<set $player.flags.atebimbocandy = true>>
<<deleteItem $player $now "unknown_candy">>
<<addItem "eaten_candy">>
<</if>>
<<createAnimatedBGR "./video/mind_focus.mp4">>
<div id="invframe" class="scrolltext">
You try to focus your mind, but it seems like whatever the candy is doing to your brain counteracts your attempts.<br>
<br>
<<printThought $player "What the hell is happening to me? I don't want this! Someone...">><br>
<br>
In a moment of clarity, you finally start to understand that the only one who can help you in this situation is you, since it's your brain that's under... attack?<br>
<br>
<<printThoughtWill $player "No, I will not let this happen!">><br>
<br>
You spit the candy back into its wrapper. Your heart is pounding as it takes you a few seconds to regain your composure.<br>
<br>
<<printThought $player "What the hell was that? Was that the candy? I should keep this for further investigation. Maybe I can get it analysed somewhere.">><br>
<br>
You wrap the candy back in its wrapping and put it away. The whole ordeal has left you feeling drained, yet your mind seems overall stronger than before.<br>
<br>
[[[Continue|$locationbeforeuseage]]]
</div>/*#
#desc: swallow sissy candy
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<set $sceneVisibility = $ALONE>>
<<set $player.timebased.horny = setup.changeHorny($player,25)>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-20)>>
<<if setup.getTotalValue('bimbofication')>3>>
<<applyExperience 'bimbofication' 5 'terrible' $ALONE>>
<<else>>
<<setThreshold 'bimbofication' 'candy_bimbofication' 'swallow_candy' true>>
<</if>>
<<setTmpEffect $player 'unknown_candy' 100>>
<<set $player.flags.atebimbocandy = true>>
<<deleteItem $player $now 'unknown_candy'>>
<</if>>
<<createAnimatedBGR "./video/mindpop.mp4">>
<div id="invframe" class="scrolltext">
You simply don't care anymore. Having this yummy piece of sweetness melt in your mouth is all that matters. You continue to lick it until it's gone. And with a final<br>
<br>
<<printThought $player "pop" 40>><br>
<br>
a part of your mind seems to be gone as well. But you don't care at all, since you, for once, feel that, like, a heavy burden has been lifted from your shoulders. You take a deep breath, stretch yourself and simply feel great! Could be a good day after all!<br>
<br>
[[[Continue|$locationbeforeuseage]]]
</div>/*#
#desc: try to open black box
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<</if>>
<div id="invframe" class="scrolltext">
You have no idea what the password could be. There seems to be a counter in place to track how often you enter a wrong password.
<<if $npc_exgirlfriend.flags.password_try == 0>>
The counter currently reads zero as you have never tried to open the box.
<<else>>
According to the counter you have tried to open the box <<=$npc_exgirlfriend.flags.password_try>> times.
<</if>>
<br><br>
[[[Put the Box away|$locationbeforeuseage]]]
</div>/*#
#desc: open alizon box
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<addItem "blue_striped_bra">>
<<addItem "blue_striped_panties">>
<<addItem "blue_striped_stockings">>
<<deleteItem $player $now 'alizon_box_1'>>
<<setThreshold 'feminization' 'good_girl' 'alizon_package' true>>
<<set $player.flags.fem_style.underwear = "obedient">>
<</if>>
<div id="invframe" class="scrolltext">
You open up the slightly damaged box from Alizon, ready to take out what should be your salvation. But as you remove the plastic envelopes from the box containing the underwear your hearts stops in your chest.<br>
<br>
<<printThought $player "W... What's that? This is not what I've ordered!">><br>
<br>
Well, there goes your moment of victory and what remains is total defeat. What you hold in your hands is some kind of blue and white striped underwear set. Maybe intended for cosplayers? You really don't know. They might have looked cute on <<=setup.getNpcName('npc_exgirlfriend', 'first')>>, but that's in the past now. There's a frilly bra, some panties and knee high socks in there. Maybe from that really oldschool anime with the all-girl pop band? Who knows?<br>
<br>
<<printThought $player "You know what? Screw this! If this is what I've got, this is what I'll work with. It's only for today. So let's get this over with!">><br>
<br>
You brace yourself to wear these items for the day.<br>
<br>
[[[Put the Box away|$locationbeforeuseage]]]
</div>/*#
#desc: sissy pill mk1 affects your breasts
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<set $player.cutscene.taskszene = true>>
<</if>>
<<createBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if ($player.body.breastsize[1]<2) && ($player.body.breastsize[2]>0)>>
You observe as your previously flat chest slowly starts to swell into two perfectly formed A-cup breasts.<br>
<br>
<<printThought $player "Oh, that feeling!">><br>
<br>
More a moan then a cry of pain, your new breasts appear to be very sensitive, simply touching them gives you way too much sensory feedback compared to what you're used to.
<<else>>
The pressure fades away after a while, but other than your nipples feeling a little bit more fluffy nothing else seemed to happen.
<</if>>
<br><br>
[<<moveTo $beforetasklocation 'Continue' 30 '<<set $player.cutscene.taskszene = false>>'>>]
</div>/*#
#desc: recover from hangover?
#status: STUB 0.4.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<set $player.cutscene.taskszene = true>>
/%<<setTmpEffect $player 'alcohol' 100>>%/
/%<<deleteItem $player $now 'pink_pill'>>%/
<</if>>
<<createBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<br>
/%[<<moveTo $beforetasklocation 'Continue' 30 '<<set $player.cutscene.taskszene = false>>'>>]%/
</div>/*#
#desc: unpackage chastity cage from box
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<setScene>>
<<set $scene.femstylechastity = false>>
<<addItem "c_cage_steel">>
<<addItem "steel_chastity_cage_key">>
<<deleteItem $player $now 'chastity_cage_box'>>
<<setThreshold "submission" "voluntary_submission" "steel_cage" true>>
<<if $player.timebased.horny>=50>>
<<set $player.timebased.horny = 49>>
<</if>>
<<if $player.flags.fem_style.chastity == "">>
<<set $scene.femstylechastity = true>>
<<set $player.flags.fem_style.chastity = "voluntary">>
<<gainWillpower $player 1>>
<<wearItem $player $now "c_cage_steel" true>>
<<manipulateItem $player $now "c_cage_steel" "lock" true>>
<<createAvatar $player>>
<<else>>
<</if>>
<</if>>
<<createAnimatedBGR "./video/chastity_01.mp4">>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device from inside.
<<if !$scene.femstylechastity>>
It is small and made of metal, slightly different in design but no different in function than your prior experience with chastity devices. You discard the box.
<<else>>
It is made of metal, cool and surprisingly heavy, while also smaller than you might have imagined. As if on auto pilot you find yourself exposing yourself and fumbling to put it on.<br>
<br>
<<if $player.timebased.horny > 50>>
<<if $player.timebased.horny > 75>>
Your intense arousal makes this a bit of a struggle but taking advantage of the cold metal and a bit of squeezing you somehow manage to get your <<getWordMyPenis $player>> stuffed into the snug prison.
<<else>>
Your arousal presents a bit of a challenge as you are currently too big for the device but taking advantage of the cold metal and some deep breaths you manage to get things "under control" and get it installed.
<</if>>
<<else>>
<<if $player.timebased.horny > 25>>
Your mild arousal presents no serious challenge as you are able to wrangle yourself inside, the cold metal taking care of the rest.
<<else>>
Being conveniently already flaccid you encounter no difficulties in getting the device installed.
<</if>>
<</if>>
<br><br>
Finishing up you lock the device closed, twitching slightly as the weight of the device hangs off of you as a constant reminder. You stare at the key - at present you have voluntarily locked yourself away, which is surprisingly exciting but, so long as you have the key in your possession, the "chastity" device is more an accessory, a bit of fun that will keep you from getting too aroused or easily playing with yourself.<br>
<br>
If you were to lose the key, however... you give a few tugs to confirm that the cage is quite securely in place, irremovable without the key or damage to yourself or the device. You let out a ragged breath, the thought of losing possession of the key... it being taken from you, or surrendering control to another... You shake your head, trying to distract yourself by fixing your clothes, surprised at how well everything fits over top of your now-hidden prison. Such an setting seems highly unlikely in your eyes, since your main purpose for buying this device is to get your nether regions under control once more. The feeling of cool metal on your <<getWordMyPenis $player>> fills you with determination.<br>
<br>
<<printThought $player "Yeah, I'm doing this for my own good, not because I want to lock my <<getWordMyPenis $player>> up.">>
<</if>>
<br><br>
[[[back|$locationbeforeuseage]]]
</div>/*#
#desc: come home after first day, clothes + you need to be washed
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<setScene>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
As you return to your fortress of solitude, you think about what <<=setup.getNpcName('npc_manager', 'formal')>> said.<br>
<br>
<<printThought $player "What was it she said? Something about being a secretary needing to be representative? But representative of what?">><br>
<br>
You shake your head, you never were very good at translating managerial corporate-speak. You reflect on the rest of your brief introduction with your new boss.<br>
<br>
<<printThought $player "I don't smell that bad... do I?">><br>
<br>
Taking a quick sniff from your clothes, you get disabused, about your bodily scents.<br>
<br>
<<printThought $player "Wow, this is worse then I thought. I need to throw these into the washing machine fast. A shower would not hurt either. Hmm... maybe I should take a look at that contract later. I mean how hard can it be?">><br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_1" "Go to the bathroom">>]
</div>/*#
#desc: first day; strip and throw clothes in washer, find exgirlfriend's clothes + makeup kit, washer bursts into flames
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 30)>>
<<set $player.timebased.dirty = 0>>
<<if setup.inWardrobe('pyjama')>>
<<set $scene.pyjama = 'wardrobe'>>
<<else>>
<<set $scene.pyjama = 'inventory'>>
<</if>>
<<addItemWardrobe "makeup_basic">>
<<addItemWardrobe "black_box">>
<<removeAllClothing $player $now>>
<<deleteItem $player $now 'pyjama'>>
<<deleteItem $player $now 'socks'>>
<<deleteItem $player $now 'boxershorts'>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You enter the bathroom and take off all your clothes. A sudden realization sinks in that you haven't washed your clothes since last week. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> and you had a job rotation for the different household chores. Seems like this all falls into your hands now. From the looks of it most of your underwear is dirty. Shouldn't be a problem, one quick wash cycle in the washing machine ought be enough, but you have too many dirty clothes at your hand to put them inside the washing machine at once. You split them into two piles. You put your underwear and your pyjamas,
<<if $scene.pyjama == 'wardrobe'>>
which you quickly fetched from your wardrobe,
<<else>>
which you carried around the whole day for some unknown reason,
<</if>>
to the side, while putting the rest of your clothes inside the machine. You take a quick shower while the machine works. After that you take the wet clothes and put them into the dryer.<br>
<br>
<<printThought $player "Hmm... what's that? There are already some clothes in the dryer.">><br>
<br>
You examine things closer and discover it's more of <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>>
stuff. Looking at it makes you anxious for a brief moment. So this will be your life from now on. Alone. You sort her things out. You find a pair of panties, a bra, some pantyhose, a black skirt and a white blouse. You fold it and put it in the spare laundry basket and toss the lot into the wardrobe. After that you put your clothes into the dryer and your underwear into the washing machine. The decision to put it with all her stuff into the wardrobe was easy, should she ever turn up to fetch her belongings, that way you'll have quick access to them.<br>
<br>
<<printThought $player "Let's put this away. The last thing I need right now is anyone seeing this and thinking I'm into crossdressing or anything like that.">><br>
<br>
As you put things in the wardrobe you see a small pink container resting atop a black box hidden in the back. You open the pink container. It's filled to the brim with makeup items like lipstick, concealer, eyeliners and so on. Hmm... seems to be her old makeup case. The black box, on the other hand, you are unable to open due to its digital alphanumeric combo lock. Strange, you don't remember ever seeing this box before. You shrug and put it together with her other belongings. As you close the wardrobe in the bedroom you catch a whiff of a strange smell, like something is burning. The smell gets stronger as you hear strange noises coming from the bathroom.<br>
<br>
You make haste there to see the washing machine already going up in flames. Fortunately you had a hand-held fire extinguisher installed in the foyer, so you are able to prevent things from spreading but by the time the dust and flame-retardant powder clears your washing machine and all that was inside is gone.<br>
<br>
<<printThought $player "It can't get any worse now, can it?">><br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_2" "Continue">>]
</div>/*#
#desc: landlord shows up for burning washing machine, you open door and invite him in, he promises to fix
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<storeVisual $player $npc_landlord>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 10)>>
<<deleteItem $player $now 'socks'>>
<<deleteItem $player $now 'boxershorts'>>
<<if $player.indecent >= 90>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<set $player.flags.landlordsawyounaked = true>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_0'
0
'event_psychiatrist_session_landlord_1'
false
'theme_psychiatrist_landlord_header'
>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bathroom_01.png"
"./images/characters/npc_landlord.png">>
<div id="invframe" class="scrolltext">
Suddenly the doorbell rings. Making a final visual check that the fire is out you head to the door and check the camera outside. It is <<=setup.getNpcName('npc_landlord', 'full')>>, your landlord and the building's caretaker. He is an old, tough guy who looks like he has seen a lot. Which is probably accurate, though he does not talk much about himself or his time in the war. Overall he is a really nice guy... as long as you are getting on his good side. You open the door.<br>
<br>
<<if $player.indecent >= 90>>
"@@.npc_landlord;Buenas tardes chico. I hea...@@" He suddenly stops talking. His gaze slowly wanders down your body, which makes you realise that you are wearing nothing at all.
<<if $player.timebased.horny>=50>>
Even worse, you're having a raging erection, due the side effects of the penis enlargement pills, which makes an already embarrassing scene so much worse.
<</if>>
You quickly grab a towel and wrap it around you, but it is already too late. You blush like a ripe strawberry.<br>
<br>
"@@.npc_landlord;So...@@", he tries as hard as he can to look into another direction.<br>
<br>
<<printThought $player "Wait... is he blushing as well? What is going on here?">><br>
<br>
"@@.npc_landlord;Anyway... I heard some extrano ... strange noises from your floor and the internal sensors gave me a fire alert from your apartment. Is everything all right?@@"
<<elseif $player.indecent >= 65>>
"@@.npc_landlord;Buenas tardes chico. I hea...@@" He suddenly stops talking. His gaze slowly wanders down along your body, which makes you realise that you wear nearly nothing at all. You quickly grab a towel and wrap it around you, but it is already too late. You blush like a ripe tomato.<br>
<br>
"@@.npc_landlord;So... I heard some extrano ... strange noises from your floor and the internal sensors gave me a fire alert from your apartment. Is everything all right?@@"
<</if>>
<br><br>
You explain to him what happened. It's actually a good thing <<=setup.getNpcName('npc_landlord', 'first')>> showed up since you're nearly ready for a mental breakdown. But his deep and soothing voice calms you down. In an almost casual display of strength he moves the broken washing machine out of the apartment and turns towards you.<br>
<br>
"@@.npc_landlord;Do not worry, chico. I take care of this. You look agotado ... depleted. I'll fix the wall behind it tomorrow, and the insurance should exchange the broken machine. It was ... material defect... was it? Yes it was, no? Buenas noches a ti chico.@@"<br>
<br>
And with those parting words he leaves you alone.<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3" "Continue">>]
</div>/*#
#desc: realise you have no "male" underwear after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
As you return from the foyer to the bathroom, a realization suddenly comes to you. You have no underwear for tomorrow morning. This leaves you in a predicament. What are you supposed to do? It's too late now but you could try to hit the mall tomorrow, just before work.<br>
<br>
<<printThought $player "No, that's not going to work, since the stores open at 8, same as my shift starts. I'd be too late for my very first day. And <<=setup.getNpcName('npc_manager', 'formal')>> does not seem to be the forgiving type...">><br>
<br>
Well, that leaves you with three other options. You could go order something online, and pay a lot extra for an overnight delivery.<br>
<br>
<<printThought $player "Well that seems to be the best idea, but I'm not sure if I'm happy with this. Money is going to be tight next month even without any extra expenses.">><br>
<br>
You could go commando. It's not like there's any reason for you to lose these trousers of yours. Sure it'll chafe a bit, but it's only for a day. And for the extremely unlikely event of getting some action, you'll be ready a lot faster.
<br><br>
<<printThought $player "Yeah, I like that idea. But then again, I'm going to die of shame since I'll know I'm not wearing any underwear at all. And no socks is not very good for my feet either.">><br>
<br>
And the last option you come up with... is to wear <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> underwear. You don't like the idea at all, but the two of you actually have a similar frame so her clothing should fit you. And you only have to wear it until tomorrow evening, when you can buy new underwear at the mall.<br>
<br>
<<printThought $player "Why does something like this always happen to me?">><br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_panties_1" "Lets take a closer look at these panties." 60>>]
<<hint $options "These 4 choices will set your start feminization.<br>Each will have different consequences and set your<br>feminization stat at a higher start level (from top <br>to bottom).">><br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_1" "Order underwear online!" 60>>] <<hint $options "Next day delivery might not be cheap, but it's the best guarantee to get what you should be wearing.">><br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new things." 60>>] <<hint $options "Works starts before the mall opens so I'll need to talk an employee into letting me in early or I'll be stuck commando...">><br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_1" "Going Commando!" 60>>] <<hint $options "No underwear may not be feminine but it also isn't very professional.">>
</div>/*#
#desc: examine exgirlfriend's panties after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
You fetch the laundry basket from the wardrobe and check your options. You find a pair of white cotton panties, a white bra and some black pantyhose. From all other options this may be the least worst. She's also left you a pencil skirt and a white blouse, which does not look that different from your shirt, as it is similar in cut and design, but the buttons are on the left side as opposed to male cut shirts. And you think it might be a little bit tighter around the waist and has more space for breasts, but your waist is pretty narrow for a guy, so it should theoretically fit you was well. Not that you need to wear that blouse, since your shirt survived the great washing machine fire of 2033. Ah, those were bad times for all of underwearkind.<br>
<br>
<<printThought $player "Okay, my brain is on vacation it seems...">><br>
<br>
You focus back on the matter at hand, and ponder if that's what you want to do.<br>
<br>
<<printThought $player "That's not too bad. I think I can endure wearing these for just one day. As long as nobody catches me wearing these I should be fine. I could even try to wear the rest... for scientific reasons of course. Better only take what I need, not to be tempted to do anything more strange this evening.">><br>
<br>
Your hand hovers over the panties.<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_panties_2" "Take the panties and the pantyhose." 360>>]<br>
<br>
Or do you change your mind?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_1" "Order underwear online!" 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new things." 60>>] <<hint $options "Works starts before the mall opens so I'll need to talk an employee into letting me in early or I'll be stuck commando...">><br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_1" "Going Commando!" 60>>] <<hint $options "No underwear may not be feminine but it also isn't very professional.">>
</div>/*#
#desc: examine exgirlfriend's panties after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $player.flags.fem_style.underwear = "voluntary">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'exgirlfriends_panties' true>>
<<set _nextDate to setup.setNextDate($now, 1, 7, 0)>>
<<addEvent 'exgf_firstday_visit'
'{"trigger":"always","type":["date","tag"],"tag":"home"}'
'{"szene":"event_exgirlfriend_fetchthings_1"}'
_nextDate
>>
<<addItem "cotton_panties">>
<<addItemWardrobe "cotton_bra">>
<<addItem "black_pantyhose">>
<<addItemWardrobe "satin_blouse">>
<<addItemWardrobe "skirt_black">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
You take the panties and pantyhose and leave the rest in the wardrobe.<br>
<br>
<<printThought $player "Oh, that fabric does feel soft and nice. I hope they're not too tight">><br>
<br>
[<<moveTo "room_bedroom" "Close the wardrobe." 360>>]
</div>/*#
#desc: order underewear online after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.indecent >= 90>>
You wrap a towel around your hips and
<<else>>
You
<</if>>
enter the living room, where your computer is. You normally order online via Alizon, the biggest online store for, well, everything. Finding some underwear is not that difficult, but even with a 24 hour mail service you have no guarantee that they'll arrive tomorrow in the morning. So you have to choose drone delivery. You never used this option because it is still very expensive but it's kind of cool; you can even a set a specific time when they should deliver. You set the time for tomorrow morning at 7 o'clock. But it costs you a total of 90 credits, which you are not happy about. Since the clothing costs around 15 credits, the remaining costs are delivery alone.<br>
<br>
<<printThought $player "<<getWordGod $player>>, this is so stupid. I really should start to save some money, or I could get into trouble next month... Maybe it's time to look for an additional income source. I should probably check the contract if that's even allowed!">><br>
<br>
Your mouse cursor hovers over the "Buy now" button.<br>
<br>
<<printThought $player "What if they mess up the order? Then I have no more options tomorrow morning. Plus the added costs suck balls!">><br>
<br>
Do you go through with it?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_2" "Buy the clothes online" 360>>]<br>
<br>
Or do you change your mind?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_panties_1" "Lets take a closer look at these panties." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new things." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_1" "Going Commando!" 60>>]
</div>/*#
#desc: order underewear online after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $sceneVisibility = $INCOGNITO>>
<<setThreshold 'bimbofication' 'spending_money' 'not_much' true>>
<<applyExperience 'bimbofication' 2 'insignificant' $ALONE>>
<<addEmail $computer
'Alizon.com'
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
$now
'mail_alizon_01_h'
'mail_alizon_01_t'>>
<<set _nextDate to setup.setNextDate($now, 1, 7, 0)>>
<<addEvent 'exgf_firstday_w_order'
'{"trigger":"always","type":["date","tag"],"tag":"home"}'
'{"szene":"event_exgirlfriend_recive_onlineorder_1"}'
_nextDate
>>
<<set $player.money.total -= 90>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You gulp and click the button.<br>
<br>
<<printThought $player "Well, now I have to live with it. Lets see how this works out. Either way I have to pull this through">><br>
<br>
[<<moveTo "room_livingroom" "Shut down your PC." 360>>]
</div>/*#
#desc: decide to pick up underwear on the way to work
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
You check your wardrobe one more time in the hope of finding something you might have missed. Nope, you were really thoroughly this time, not even a single sock. Just <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> clothes you put back in there. Maybe you should...<br>
<br>
<<printThought $player "Naaah, lets scratch that thought for the time being, shall we?">><br>
<br>
Losing all your socks, underwear and your much beloved pyjama in one shot certainly sucks given your current tight money situation. But the most prudent response would seem to be to pick something up from the bulk store in the mall. You recall that they don't actually open until after you need to be at work but there ought to be an employee around early who you can tell of your plight. It's a risk, but worth it to avoid one of your more embarrassing or expensive options.<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_2" "Decide to buy the clothes tomorrow morning at the mall." 360>>]<br>
<br>
Or do you change your mind?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_panties_1" "Lets take a closer look at these panties." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_1" "Order underwear online!" 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_1" "Going Commando!" 60>>]
</div>/*#
#desc: decide to pick up underwear on the way to work
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $player.flags.commando = true>>
<<set $player.flags.fem_style.underwear = "money">> /% note: this can be set to forced if you end up not wearing what you get at the %/
<<set _nextDate to setup.setNextDate($now, 1, 7, 0)>>
<<addEvent 'exgf_firstday_visit'
'{"trigger":"always","type":["date","tag"],"tag":"home"}'
'{"szene":"event_exgirlfriend_fetchthings_1"}'
_nextDate
>>
/%
<<addItemWardrobe "cotton_panties">>
<<addItemWardrobe "cotton_bra">>
<<addItemWardrobe "black_pantyhose">>
<<addItemWardrobe "satin_blouse">>
<<addItemWardrobe "skirt_black">>
%/
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
That does seem like the less critical option to you. You toss the rest of your ex-girlfriend's things into the back of the wardrobe as you have no use for them.<br>
<br>
[<<moveTo "room_bedroom" "Close the wardrobe." 360>>]
</div>/*#
#desc: decide to goto work commando after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You think about it for a moment. What's the worst that could happen? If you play your cards right, nobody will ever find out, that you're not wearing any underwear. It's not like there are any regulations for underwear in your contract.<br>
<br>
<<printThought $player "Wait a second. That was my old contract with Cloud Data Service. But I assume there are no such clauses in my new one was well. Who in their right mind would regulate something like that. I just have to make sure I'm clean tomorrow and that should suffice">><br>
<br>
You spin that thought a little bit longer.<br>
<br>
You brace yourself for going out tomorrow... commando style.<br>
<br>
<<printThought $player "Hmm... even if she were to check my underwear, there could only be one reason for that. Hehe... God, I am so lonely...">><br>
<br>
What will you do?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_2" "Decide to go commando!" 60>>]<br>
<br>
Or do you change your mind?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_panties_1" "Lets take a closer look at these panties." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_1" "Order underwear online!" 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new things." 60>>]<br>
</div>/*#
#desc: decide to goto work commando after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $player.flags.commando = true>>
<<set _nextDate to setup.setNextDate($now, 1, 7, 0)>>
<<addEvent 'exgf_firstday_visit'
'{"trigger":"always","type":["date","tag"],"tag":"home"}'
'{"szene":"event_exgirlfriend_fetchthings_1"}'
_nextDate
>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
Concluding that it is the simplest plan you decide to go forgo underwear until you can pickup some fresh pairs on the way home from work tomorrow.<br>
<br>
<<printThought $player "Not the most comfortable thing, but hey, who's going to know, or care?">><br>
<br>
You brace yourself for going out tomorrow... commando style.<br>
<br>
[<<moveTo "room_bathroom" "Continue." 60>>]
</div>/*#
#desc: used to make dummy links to passages that are handled in js, etc. so that the orphan/dead end link detection code can work better
#status: FINISHED 0.4.0.0
#*/
Twine structure
[[jsLinks]]
[[StoryTitle]]
[[StorySettings]]
[[StoryCaption]]
[[PassageDone]]
[[initGame]]
Dialog boxes
[[dialog_selectName]]
[[dialog_selectNameVoluntary]]
[[dialog_selectNameInsurance]]
[[room_bedroom_setalarmclock]]
[[dialog_selectTime]]
[[dialog_selectDualTime]]
[[room_office_sissy_secretary_work_data]]
Debug
[[r_addClothesSet]]
[[r_debugGoto]]
[[r_debugAddItem]]
[[r_debugShowData]]
[[r_tutText]]
[[var_tmp]]
[[r_changeClothesSet]]
[[r_debugSetData]]
[[r_delEmail]]
[[r_errorMessage]]
[[r_setAlarmClock]]
[[r_debugImport]]
phonecalls
[[room_call_npc_exgirlfriend]]
[[room_call_npc_manager]]
[[room_call_npc_landlord]]
[[room_call_npc_admin]]
[[room_call_npc_psychiatrist]]
[[room_call_npc_technician]]
[[event_manager_weekly_salary_remote]]
[[event_mall_photoshoot_call]]
[[event_fetstore_chastity_finish_phone]]
variable-controlled scenes
[[event_work_coffee_0_0]]
[[room_online_university_course_smart_2]]
[[room_play_games_smart]]
[[room_play_games_hotties]]
[[room_play_games_skill]]
[[room_play_games_relax]]
[[event_manager_performance_review_3]]
[[room_mall_beautyparlor_cut]]
[[room_mall_beautyparlor_cutcolor]]
triggers in js
[[event_beginner_heels]]
[[szene_hangover_1]]
[[event_beginner_plug_start]]
[[room_error]]
[[event_manager_daily_check_stage_2]]
inventory
[[room_use_business_card_technician]]
[[room_use_analplug_small_box]]
[[room_use_webcam]]
[[room_use_sissy_pill_mk1]]
[[room_use_business_card]]
[[room_use_business_card_landlord]]
[[room_use_black_box]]
[[room_use_unknown_candy]]
[[lookItem]]
[[room_use_alizon_box_1]]
[[szene_pink_pill]]
[[takeItem]]
[[room_use_business_card_psychiatrist]]
[[room_use_pink_pill]]
[[event_open_package_gold_hoop_earrings]]
[[event_open_package_pink_satin_corset]]
[[room_use_chastity_cage_box]]
[[event_open_package_pink_thigh_highs]]
[[event_open_package_bed_heels]]
[[event_open_package_gold_hoop_earrings]]
Other
[[room_empty]]
[[attachment_read_nda_signed]]
[[attachment_read_nda]]
[[room_computer_email_read]]
[[szene_sissypill_mk1]]
[[attachment_read_contract]]
[[room_do_makeup_apply]]
[[room_bedroom_rest]]
[[room_mall_beautyparlor_toogirly]]
[[event_work_coffee_n_0]]
[[room_mall_beautyparlor_makeup_2]]
[[event_manager_check_uniform_upgrade]]
[[event_corset_lacing_0]]
[[event_manager_daily_check_stage_1]]
[[event_manager_daily_check_stage_3]]
[[room_rideshare]]
[[voluntaryUnisex]]
[[voluntaryFemale]]
[[voluntaryMakeup]]
hypnosis stage 4 links
[[event_psychiatrist_hypnosis_4_bdsm_accept]]
[[event_psychiatrist_hypnosis_4_bdsm_decline]]
[[event_psychiatrist_hypnosis_4_bdsm_reject]]
[[event_psychiatrist_hypnosis_4_penis_accept]]
[[event_psychiatrist_hypnosis_4_penis_decline]]
[[event_psychiatrist_hypnosis_4_penis_reject]]
[[event_psychiatrist_hypnosis_4_bondage_accept]]
[[event_psychiatrist_hypnosis_4_bondage_decline]]
[[event_psychiatrist_hypnosis_4_bondage_reject]]
[[event_psychiatrist_hypnosis_4_foot_accept]]
[[event_psychiatrist_hypnosis_4_foot_decline]]
[[event_psychiatrist_hypnosis_4_foot_reject]]
[[event_psychiatrist_hypnosis_4_piss_accept]]
[[event_psychiatrist_hypnosis_4_piss_decline]]
[[event_psychiatrist_hypnosis_4_piss_reject]]
[[event_psychiatrist_hypnosis_4_cum_accept]]
[[event_psychiatrist_hypnosis_4_cum_decline]]
[[event_psychiatrist_hypnosis_4_cum_reject]]
bodyshop
[[room_bodyshop_breast_machine_2]]
Not Yet Implemented
[[event_work_coffee_random_0]]
[[event_technician_hotties_1_no]]
[[room_usual_place_blowjob_piss]]
night selfie
[[room_bedroom_picture_npc_technician]]
[[room_bedroom_picture_npc_exgirlfriend]]
[[room_bedroom_picture_npc_manager]]
[[room_bedroom_picture_npc_psychiatrist]]
[[room_bedroom_picture_npc_landlord]]
[[room_bedroom_picture_npc_barista]]
[[room_bedroom_picture_npc_admin]]
[[room_bedroom_picture_npc_barkeeper]]
[[event_bed_heels_photo_fail]]
random events:
coworkers
[[event_coworker_futa_0]]
[[event_coworker_futa_1]]
[[event_coworker_futa_2]]
[[event_coworker_futa_3]]
[[event_coworker_hucow_0]]
[[event_coworker_hucow_1]]
[[event_coworker_hucow_2]]
[[event_coworker_hucow_3]]
[[event_coworker_sexdoll_1]]
[[event_coworker_sexdoll_2]]
[[event_coworker_sexdoll_3]]
[[event_coworker_sissy_secretary_0]]
[[event_coworker_sissy_secretary_1]]
[[event_coworker_sissy_secretary_2]]
[[event_coworker_sissy_secretary_3]]
work managers
[[event_work_nintendolls_president]]
[[event_work_hr_retention]]
[[event_work_hr_discipline]]
[[event_work_hr_development]]
[[event_work_hr_harrassment]]
ai
[[event_ai_mission_root]]
[[event_ai_elevator_offer_1]]
[[event_ai_elevator_offer_1_retrigger]]
Other
[[event_random_work_bathroom_male]]
[[event_random_work_bathroom_male_private]]
[[event_random_work_bathroom_female]]
[[event_random_work_bathroom_female_private]]
[[event_manager_daily_check_upgrade_fail]]
[[event_random_move_foreshadow]]
[[event_random_work_elevator_grope_0]]
[[event_work_coffee_random_1]]
tasks:
[[event_gym_noshow_1]]/*#
#desc: enter room triggers
#status: FINISHED 0.4.0.0
#*/
<<checkOptions $options>>
<<updateValues>>
<<checkTaskEvents>>
<<include playerMenu>>
/%<<checkEvent $player $now>>%//*#
#desc: enter hypnosis room triggers
#status: FINISHED 0.4.0.0
#*/
<<checkOptions $options>>
<<updateValues>>
<<checkTaskEvents>>
<<set $player.plocation = passage()>>
<span class="glitch2" data-text="Stats">Options</span> |
<span class="glitch" data-text="Stats">Stats</span> |
<span class="glitch2" data-text="Inventory">Inventory</span> |
<span class="glitch3" data-text="Tasks">Tasks</span> |
<span class="glitch" data-text="Profiles">Profiles</span> |
<<if gotItemSpecific("smartphone")>>
| <span class="glitch" data-text="Phone">Phone</span>
<</if>>
<span id="locationTitle">@@.textRightSide;<<=$player.location>>@@</span>
<hr>/*#
#desc: enter locked room triggers
#status: FINISHED 0.4.0.0
#*/
<<checkOptions $options>>
<<updateValues>>
<<checkTaskEvents>>
<<set $player.plocation = passage()>>
@@.link_locked;Options | Stats | Inventory | Tasks | Profiles@@
<<if gotItemSpecific("smartphone")>>
@@.link_locked;| Phone@@
<</if>>
<span id="locationTitle">@@.textRightSide;<<=$player.location>>@@</span>
<hr>/*#
#desc: left hand bar stuff (stats, player pic, debug links, eetc.)
#status: FINISHED 0.4.0.0
#*/
<<printDate $now>><br>
<div id="showClothes" class="sideframe_showclothes"></div>
<br>
<<if $startgame>>
<div id="showStats" class="sideframe_showstats">
<div id="cFatigue" class="container_stat">
<div id="bFatigue" class="bar_stat_blue" style="width:0%"></div>
<div id="tFatigue" class="bar_stat_text"></div>
</div>
<div id="cHorny" class="container_stat">
<div id="bHorny" class="bar_stat_blue" style="width:0%"></div>
<div id="tHorny" class="bar_stat_text"></div>
</div>
<div id="cStress" class="container_stat">
<div id="bStress" class="bar_stat_blue" style="width:0%"></div>
<div id="tStress" class="bar_stat_text"></div>
</div>
<div id="cWillpower" class="container_stat_willpower">
</div>
</div>
<div id="showValues" class="sideframe_showvalues"></div>
<<createAvatar $player>>
<<createStats $player>>
<</if>>
<<if $debug>>
[<<link "d">><<debugDataShow>><</link>>]
[<<link "V">><<varDataShow>><</link>>]
[<<link "s">><<debugDataSet>><</link>>]
[<<link "g">><<debugGoto>><</link>>]
[<<link "aD">><<debugAllData>><</link>>]
[<<link "aI">><<debugAddItem>><</link>>]
[<<link "1hr">>
<<set $now to setup.advanceDate($player, $now, 'hours', 1)>>
<<moveTo $player.plocation>>
<</link>>]
[<<link "next day">>
<<set $now to setup.advanceNextDate($player, $now,1,6,30)>>
<<moveTo $player.plocation>>
<</link>>]
[<<link "d">><<makeDirty>><</link>>]<br>
[<<link "clearEvents">><<debugClearEvents>><</link>>]<br>
[<<link "activateFetishes">><<activateAllFetishes>><</link>>]<br>
[<<link "toggleRandomEvents">><<toggleForceEvents>><</link>>]
<</if>>
/%
<br>
<<if $startgame>>
[<<link "Exp">><<set _x = setup.exportData($version,$player.plocation)>><</link>>]
<</if>>%/
/%
<<if !$startgame || $debug>>
[<<link "Imp">><<set _s = setup.clickImport($version)>><<goto $player.plocation>><</link>>]
<input id="file-input" type="files[]" name="name" style="display: none;" />
<input type="file" id="files" name="files[]" style="display: none" />
<</if>>%//*#
#desc: debug set variable?
#status: FINISHED 0.4.0.0
#*/
Stuff of Stuff!
@@.textRightSide;
<<button "Set variables">>
<<set $roomchange = false>>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<setAllData $d_data $d_dataset>>
<</button>>@@/*#
#desc: debug show data
#status: FINISHED 0.4.0.0
#*/
<<textbox "$d_data" "player" autofocus>><br>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<showAllData $d_data>>
<</button>>@@/*#
#desc: debug set data
#status: FINISHED 0.4.0.0
#*/
<<textbox "$d_data" "player" autofocus>><br>
<<textbox "$d_dataset" $_dataset>><br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<setAllData $d_data $d_dataset>>
<</button>>@@/*#
#desc: debug jump to passage
#status: FINISHED 0.4.0.0
#*/
<<textbox "$d_goto" "room_bedroom" autofocus>><br>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<set $player.llocation = $player.plocation>>
<<set $player.plocation = $d_goto>>
<<set $roomchange = true>>
<<goto $d_goto>>
<</button>>@@/*#
#desc: debug add item
#status: FINISHED 0.4.0.0
#*/
<<textbox "$d_item" "" autofocus>><br>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<addItem $d_item>>
<</button>>@@/*#
#desc: debug import savefiles
#status: FINISHED 0.4.0.0
#*/
Insert Text from Export File here:
<<textbox "_import_data" "" autofocus>>
<<button "Okay">>
<<importData _import_data $version>>
<<script>>
Dialog.close();
<</script>>
<<goto $player.plocation>>
<</button>>/*#
#desc: tutorial pop-up
#status: FINISHED 0.4.0.0
#*/
<<=$tutText>><br>
<br>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: debug, add clothing set
#status: FINISHED 0.4.0.0
#*/
New Set Name: <br>
<<textbox "_setname" "" autofocus>><br>
<br>
<<button "Okay">>
<<addNewClothesSet _setname>>
<<script>>
Dialog.close();
<</script>>
<<goto goInv>>
<</button>>
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: debug change clothing
#status: FINISHED 0.4.0.0
#*/
<<set _setname = $tmp_setname>>
<<if !$tmp_setimportant>>
New Set Name: <br>
<<textbox "$tmp_setname" $tmp_setname autofocus>><br>
<<else>>
Set Name:
<<=$tmp_setname>><br>
<</if>>
<br>
<<button "Okay">>
<<changeClothesSet $numberClothSet $tmp_setname $tmp_setimportant>>
<<forget $tmp_setname>>
<<forget $numberClothSet>>
<<forget $tmp_setimportant>>
<<script>>
Dialog.close();
<</script>>
<<goto goInv>>
<</button>>
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: pop-up for deleting email
#status: FINISHED 0.4.0.0
#*/
Delete this Email?<br>
<br>
<<button "Yes">>
<<deleteEmail $computer $delEmailNumber>>
<<script>>
Dialog.close();
<</script>>
<<moveTo "room_computer_email">>
<</button>>
<<button "No">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: pop-up for setting alarm clock
#status: FINISHED 0.4.0.0
#*/
<<set _h = $player.clock.h>>
<<set _m = $player.clock.m>>
Set Clock: <br>
/%<<textbox "_h" "<<=_h>>" autofocus>> : <<textbox "_m" "<<=_h>>" >><br>%/
<<creatAlarmClockInput _h _m>><br>
<span id="alarmErrorText"></span>
<br>
<<button "Okay">>
<<if isNaN(_h) || isNaN(_m)>>
<<set _x = setup.alarmErrorText(_h,_m)>>
<<else>>
<<set _h = parseInt(_h)>>
<<set _m = parseInt(_m)>>
<<if ( ((_h>=0) && (_h < 24)) && ((_m>=0)&&(_m<60)) )>>
<<set $player.clock.h = _h>>
<<set $player.clock.m = _m>>
<<script>>
Dialog.close();
<</script>>
<<else>>
<<set _x = setup.alarmErrorText(_h,_m)>>
<</if>>
<</if>>
<</button>>
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: error message pop-up
#status: FINISHED 0.4.0.0
#*/
@@.error;<<=$errorMessage>>@@<br>
<br>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<set $errorMessage="">>
<</button>>/*#
#desc: error message
#status: FINISHED 0.4.0.0
#*/
<<if $errorMessage!="">>
<<openErrorMessage $errorMessage>>
<</if>>/*#
#desc: catch for empty to send back to game start
#status: FINISHED 0.4.0.0
#*/
<<goto room_start_game>>/*#
#desc: catch broken games
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<switch $npc_manager.stage>>
<<case 1>>
<<set _bringkey = $npc_manager.stagevalues[1].chastity && $npc_manager.flags.trustplayerwithkey>>
<<set _x = setup.addManagerEndlessTask1($now, $npc_manager.stagevalues[1].unisexsecretary, $npc_manager.stagevalues[1].chastity, _bringkey)>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, !$npc_manager.flags.playerstayedinchastity)>>
<<default>>
ERROR: unknown stage!
<</switch>>
<</if>>
Oops! You have reached a broken gamestate, please save to disc and upload to the secretary discord #bugs channel so that we can fix this problem.<br>
<br>
Discord link:
<div align="middle"><a target="_blank" href="https://discord.gg/XShMmqr">Secretary Discord Server</a></div><br>
<br>
[<<moveTo $scene.dest "Fix game and continue." 60>>]/*#
#desc: admin data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_admin = {
self_ref: "npc_admin",
first_name : "Bob",
last_name : "Sanders",
other_call : "Mr.",
affection : 5,
anger : 0,
perversion : 0,
dates : 0,
stage : 1,
first_call : false,
lastdate : null,
lastcall : null,
profile: true,
penis_size: 14,
flags: {
/* Bob saw you already once in unisex clothes */
sawyouinunisexclothes: false,
/* Bob saw you already once in female clothes */
sawyouinfemaleclothes: false,
/* Bob knows of your namechange */
reactnamechange: false,
/* You've actually discussed your namechange instead of just blindsiding him */
discussnamechange: false,
/* this is active if bob figures out that the PC started to dress by any other means then the PC telling himself */
ageofconfusion: false,
/* sometime the PC can call in a Code RED, which means means you're able to meet during the week as well, no questions asked */
rare_meeting: {
code_red: false,
code_red_date: null,
code_red_reason: "",
},
bespokeComments : {
'all' : false
},
sexting : {
"times_sexted" : 0,
"times_sexted_accidentally" : 0
},
promotion : false,
/* 0 = no martial arts, 1 = he suggested martial arts, 2 = you've attended martial arts together */
martial_arts_level : 0,
nextWorkout : "",
consecutiveWorkouts : 0,
sawHimfuckingManager : false,
presentation_given : false,
voluntary_sex : false,
relationship : "",
knowManagerTruth : 0, /* 0 = oblivious, 1 = overheard calling manager "mistress", 2 = knows about your work situation */
evil : 0,
flirted : false,
knowgender : "male",
seduced : false
},
profiledata: {},
}>>/*#
#desc: ai data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_ai = {
self_ref: "npc_ai",
first_name : "AIKO",
anger : 0,
satisfaction : 0,
anger : 0,
perversion : 0,
stage : 1,
flags: {
reactnamechange: false,
blackmail: false,
ignoredFirstDoorAccess: false,
manager_file_access: false,
/* ends AIKO's storyline */
end_missions : false,
"missions" : {
"generic_missions_count" : 0,
"connection" : false,
"milking" : false,
"robot_body" : false
},
},
profile: false,
profiledata: {},
}>>/*#
#desc: barista data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_barista = {
self_ref: "npc_barista",
nickname : "Candy",
first_name : "Candice",
last_name : "MacGuffin",
character_name: "Uvam Dulcis",
anger : 0,
satisfaction : 0,
anger : 0,
perversion : 0,
stage : 1,
flags: {
reactnamechange: false,
makeupoffer: false,
taughtbimbomakeup: false,
bespokeComments : {
'all' : false
},
sexting : {
"times_sexted" : 0,
"times_sexted_accidentally" : 0
},
milking : {
'first_seen' : false,
'questioned' : false,
'first_milking' : false,
'milking_style' : ""
}
},
profile: false,
profiledata: {},
}>>/*#
#desc: boss data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_boss = {
self_ref: "npc_boss",
other_call : "Mr.",
call : "Mr.",
first_name : "Reginald",
last_name : "Pawn",
anger : 0,
satisfaction : 0,
anger : 0,
perversion : 0,
stage : 1,
profile: false,
profiledata: {},
}>>/*#
#desc: ex girlfriend data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_exgirlfriend = {
self_ref:"npc_exgirlfriend",
first_name : "Serena",
last_name : "Grey",
anger : 5,
satisfaction : 0,
affection : 0,
perversion : 5,
flags: {
password_blackbox:"",
password_try: 0,
nakedwhiledelivery: false,
woreherclothes: false,
reactnamechange: false,
bespokeComments : {
'all' : false
},
sexting : {
"times_sexted" : 0,
"times_sexted_accidentally" : 0
}
},
profile: true,
profiledata: {},
}>>/*#
#desc: gym characters + data
#status: WRITTEN 0.7.0.0
#*/
/%gym_martial_arts.jpg%/
<<set $npc_martial_arts = {
self_ref:"npc_martial_arts",
first_name : "Eevie",
last_name : "Itter",
other_call : "NYI",
call : "Sensei",
affection : 0,
anger : 0,
perversion : 0,
stage : 0,
flags: {},
profile: false,
profiledata: {1:"The instructor for the various martial arts classes at the gym. She teaches everything from cardio kickboxing to advanced Karate and Brazilian Jiu Jitsu."}
}>>
/%gym_bro.jpg%/
<<set $npc_swolebro = {
self_ref:"npc_swolebro",
first_name : "Ivan",
last_name : "Broski",
other_call : "NYI",
call : "NYI",
affection : 0,
anger : 0,
perversion : 0,
stage : 0,
flags: {},
dates : 0,
profile: false,
profiledata: {1:"A swole dude that you met at the gym, always down to pump out some reps, bro!"}
}>>
/%gym_bimbo.jpg%/
<<set $npc_fit_bimbo = {
self_ref:"npc_fit_bimbo",
first_name : "Krystal",
last_name : "Kave",
other_call : "NYI",
call : "NYI",
affection : 0,
anger : 0,
perversion : 0,
stage : 0,
flags: {},
dates : 0,
profile: false,
profiledata: { 1: "A bubbly, strong, sexy bimbo you met at the gym." }
}>>
<<set $gym = {
"membership" : {
"monthly_price" : 50, /* TODO */
"active" : false
},
"lewd_male" : false, /* will lewd male events trigger, unlocked by dropping the soap in the men's shower*/
"lewd_female" : false, /* will lewd female events trigger, unlocked by sucking cock in women's shower*/
"lewd_futa" : false, /* will lewd futa events trigger, unlocked by helping clean off a chained woman in the shower*/
"classes" : {
"yoga" : {
"level_fem" : 0,
"level_male" : 0
},
"cardio_kickboxing" : {
"level" : 0
},
"other" : {
"level" : 0
},
"martial_arts_available" : false,
"karate" : {
"level" : 0
},
"bjj" : {
"level" : 0
}
},
private_shower : {
male : 0,
sissy : 0,
female : 0,
futa : 0
}
}>>/*#
#desc: landlord data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_landlord = {
self_ref: "npc_landlord",
first_name : "Kurt",
last_name : "Stonehammer",
call_name : "Chico",
penis_size : 8,
flags: {
reactnamechange: false,
firstrent : false,
bespokeComments : {
'all' : false
},
sexting : {
"times_sexted" : 0,
"times_sexted_accidentally" : 0
}
},
affection : 3,
anger : 0,
perversion : 0,
stage : 1,
profile: false,
profiledata: {},
}>>/*#
#desc: maid data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_maid = {
self_ref:"npc_maid",
first_name : "Nina",
last_name : "Jade",
character_name: "Frauke Grobschlacht",
affection : 0,
anger : 0,
perversion : 0,
stage : 1,
penis_size: 12,
flags: {
reactnamechange: false,
joboffer: false,
bespokeComments : {
'all' : false
}
},
dates : 0,
firstcall: false,
lastdate : null,
lastcall : null,
profile: false,
profiledata: {},
}>>/*#
#desc: manager data
#status: FINISHED 0.5.0.0
#*/
<<set _tmpDate = new Date(Date.parse("2033-06-28T07:05:00+0000"))>>
<<set $npc_manager = {
"self_ref":"npc_manager",
"other_call" : "Director",
"call" : "Mrs.",
"title" : "Manager",
"first_name" : "Sandra",
"last_name" : "Antlers",
"call_name" : "Sissy",
/*you brought her the wrong food you stupid bimbo!*/
"wrongfood": 0,
/*you didn't bring her food!*/
"nofood": 0,
/* reasons to be fired ~ if I ever get around to implement this :3. */
"criticalanger" : 0,
/* how good you work (besides being a SISSY secretary) */
"workdiscipline" :0,
/*how often you messed up (counts every time, so can happen multilbe times during a day)*/
"anger" : 0,
/* how often you do things right (a perfect morning inspection for example, can happen 1-2 per day) */
"satisfaction" : 0,
"affection" : 0,
"perversion" : 0,
"dm" : 0,
stage: 1,
"stagevalues": [
{
},
/*Stage 1 Values (Get to know Stage)*/
{
/*how often you flash your penis */
"penisincident": 0,
/*how often you had a hard on during your "morning" inspection */
"erectionatwork": 0,
/* how often you wore male underwear to morning inspection */
"wrongunderwear": 0,
"submission": 0,
"frisky": 0,
"failed": 0,
"appeared_casual": 0,
/* progression flags */
"unisexsecretary": false,
"chastity": false,
/* store so she can comment in phase 2 + make part of initial requirements */
"seen_makeup" : false,
/* causes a forced transition to stage 2 the following morning */
"override": false
},
/*Stage 2 Values (Chastity Stage) */
{
"erectionatwork": 0,
"submission": 0,
"frisky": 0,
"failed": 0,
"appeared_casual": 0,
/* progression flags */
"femalesecretary": false,
"chastitykey": false,
"makeup": false
},
/* Stage 3 Values (Secretary Stage) */
{
"erectionatwork": 0,
"submission": 0,
"frisky": 0,
"failed": 0,
"appeared_casual": 0,
},
],
"trigger":{
"stage1_happy": 0,
"forgotten_cage": 0,
},
"tasks": {
"sissy1": [0,0],
},
"flags": {
"gotCoffee": false,
"gotsissyset": false,
"firstday_late": false,
"firstday_casualclothes": false,
"firstcuteoutfit": 0,
"firstsissyoutfit": 0,
"lastOfficeVisit" : null,
"hascagekey": false,
"trustplayerwithkey": false,
"chastitydays": 0,
"chastitylevel": 0,
"spill_event": false,
"appeared_dirty": 0,
"appeared_cumsoaked": 0,
"appeared_piss": 0,
"appeared_casual_male":0,
"seensissypilleffect":false,
"talkedsissypill": false,
"talkednothing": false,
"talkedfirstreward": false,
"unlocked_badsissy1": false,
"voluntary_spanking": false,
"voluntary_spanked": 0,
"reactnamechange": false,
"first_makeup_inspection": false,
"lunch_makeup_fail": 0,
"lunch_makeup_pass": 0,
"good_girl": {
"stayed_in_chastity_voluntarily": 0,
"got_sissy_underwear": false,
"got_pink_secretary" : false
},
"bad_girl": {
"got_sissy_underwear": false,
"got_pink_secretary" : false
},
"pegging": {
"base_style" : "", /* forced +1, voluntary +3, obedient +5, money 0 */
"approval" : 0, /* tracks her mood during the scene and determines how rough she will be with you, >0 required for option to have chastity cage off*/
/* individual flags for parts of the pre-pegging scene seeded with base_style and: work: good +1, average 0, poor -1, terrible -3*/
"looked_at" : "", /* eyes +1, breasts -1, floor +1*/
"strip" : "", /* fast 0, sensuous +1*/
"thank" : "", /* refuse -2, thank -1, appreciate +1, worship +2*/
"suck" : "", /* refuse -2, kiss 0, lick +1, suck +2*/
"collar" : "", /* none, sissy, slave, her_sissy, her_slave*/
"chastity" : "", /* nooffer, remove, focused, dickless*/
"style" : "", /* what style of pegging do you get, approval >= 5:good, approval <=-4:cruel, else neutral*/
"lingerie" : "" /* did you leave your lingerie on?*/
},
"uniform_upgrade": {
"stipend_amt" : 200,
"can_ask_uniform_stipend": false,
"react_full_uniform_upgrade" : false,
"times_sexted" : 0,
"times_sexted_accidentally" : 0,
"bed_heel_punish" : false,
"lunch_heel_training" : 0,
"lunch_heel_training_complete" : false,
"item_comments" : {
"gold_hoop_earrings" : false,
"pink_satin_corset" : false,
"pink_thigh_highs" : false
}
},
"sent_bed_selfie" : false,
party : {
first_attend : false,
first_flee : false,
first_ditch : false
},
"severeCleanings": 0,
"breasts" : {
"lastSize" : 0,
"sizeChangeCount" : 0
},
"office_unlocked": false,
"took_adv_key":false,
"meeting_stage" : 1
},
"profile": false,
"profiledata": {}
}>>/*#
#desc: other data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_yogateacher = {
self_ref: "npc_yogateacher",
first_name : "Dwayne",
last_name : "Rockson",
affection : 0,
perversion : 0,
stage : 1,
profile: false,
penis_size: 9,
flags: {
reactnamechange: false,
after_class: false,
},
profiledata: {},
}>>
<<set $npc_cook = {
self_ref: "npc_cook",
call_name : "Laddie",
first_name: "Hank",
last_name: "Hardwood",
affection : 0,
perversion : 0,
stage : 1,
penis_size: 18,
flags : {
reactnamechange: false,
sexting : {
"times_sexted" : 0,
"times_sexted_accidentally" : 0
}
},
profile: false,
profiledata: {},
}>>
<<set $npc_secretary = {
self_ref: "npc_secretary",
nickname : "Bambi",
first_name : "Barbara",
last_name : "Brimstone",
anger : 0,
satisfaction : 0,
anger : 0,
perversion : 0,
stage : 1,
flags: {
},
profile: false,
profiledata: {},
}>>
<<set $npc_barkeeper = {
self_ref: "npc_barkeeper",
first_name : "Dafne",
last_name : "Logan",
affection : 0,
anger : 0,
perversion : 0,
stage : 1,
flags: {
reactnamechange: false,
foundintoilet: false,
workaswhore: false,
sexting : {
"times_sexted" : 0,
"times_sexted_accidentally" : 0
}
},
handjobs: 0,
blowjobs: 0,
toiletslave: 0,
analjobs: 0,
profile: false,
profiledata: {},
}>>
<<set $npc_barber = {
self_ref:"npc_barber",
first_name : "Stan",
last_name : "Nimble",
affection : 3,
anger : 0,
perversion : 0,
stage : 1,
flags: {
reactnamechange: false,
firstcut: false,
makeup_options: false
},
profile: false,
profiledata: {},
}>>
<<set $npc_shopkeeper = {
self_ref:"npc_shopkeeper",
first_name : "Nicole",
last_name : "Madison",
affection : 0,
anger : 0,
perversion : 0,
stage : 1,
flags: {
reactnamechange: false,
firstmet: false,
bespokeComments : {
'all' : false
}
},
bespokeItems : ['pink_thigh_highs', 'gold_hoop_earrings', 'pink_satin_corset'],
profile: false,
profiledata: {},
}>>
<<set $npc_shoestore_manager = {
self_ref:"npc_shoestore_manager",
first_name : "Adrienne",
last_name : "Walker",
affection : 0,
anger : 0,
perversion : 0,
stage : 1,
flags: {
reactnamechange: false,
firstmet: false,
"testimonials" : {
"casual": false,
"overly feminized": false,
"submissive": false,
"brainless bimbo": false,
"humiliating": false
},
"react_full_uniform_upgrade" : false,
"shot_ballet_heels_final" : false,
"shot_ballet_heels_bdsm" : false,
"know_her_bdsm_relationship" : false
},
profile: false,
profiledata: {},
}>>
<<set $npc_shoestore_assistant = {
self_ref:"npc_shoestore_assistant",
first_name : "Adelborg",
last_name : "Rhondrastytär",
affection : 0,
anger : 0,
perversion : 0,
stage : 1,
flags: {
reactnamechange: false,
firstmet: false,
},
profile: false,
profiledata: {},
}>>
<<set $npc_prostitute = {
self_ref:"npc_prostitute",
first_name : "Sissy",
last_name : "Andersson",
affection : 0,
anger : 0,
perversion : 0,
stage : 1,
flags: {
reactnamechange: false,
firstmet: false,
},
profile: false,
profiledata: {},
}>>
<<set $npc_sexstore_clerk = {
self_ref:"npc_sexstore_clerk",
first_name : "Hans",
last_name : "Groper",
affection : 0,
anger : 0,
perversion : 0,
stage : 1,
flags: {
reactnamechange: false,
firstmet: false,
chastity_quest: {
start: false,
base_payment: 0,
chastityEventId: -1,
finished: false,
overage: 0,
bonus: false
}
},
profile: false,
profiledata: {},
}>>
<<set $npc_work_doctor = {
self_ref:"npc_work_doctor",
first_name : "Stephan",
last_name : "Twig",
call : "Dr.",
flags: {
},
profile: false,
profiledata: {},
}>>/*#
#desc: psychiatrist data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_psychiatrist = {
self_ref: "npc_psychiatrist",
other_call : "Dr.",
call : "Dr.",
first_name : "Sabrina",
last_name : "Trapper",
affection : 0,
perversion : 0,
free_sessions : 3,
sessions : 0,
sessions_missed : 0,
hypnosis : 0,
hypnosis_missed : 0,
stage : 1,
penis_size: 5,
themes : {},
flags : {
reactnamechange: false,
landlord: {
first_feeling: "",
},
knowsyoucrossdress: false,
chocolate: {
white : 0,
pink : 0,
brown : 0,
},
session:[{
feminization: false,
sissyfication: false,
bimbofication: false
},{
feminization: false,
sissyfication: false,
bimbofication: false
},{
feminization: false,
sissyfication: false,
bimbofication: false
}],
signednda: false,
nextsession: false,
foundplug: false,
foundcage: false,
changeclothes: false,
handjob: 0,
blowjob: 0,
analsex: 0,
willpower_penis: false,
willpower_cum: false,
willpower_foot: false,
willpower_bondage: false,
willpower_bdsm: false,
willpower_piss: false,
react_full_uniform_upgrade : false,
aslut_enrollment_refused : false,
bed_heels_testimonial : { /* mirrors $npc_shoe_shop.flags.testimonials */
casual: false,
"overly feminized": false,
submissive: false,
"brainless bimbo": false,
humiliating: false
},
sexting : {
times_sexted : 0,
times_sexted_accidentally : 0
},
therapy_events : {
handjob : false,
blowjob : false,
console : false
},
knowgender : ""
},
profile: false,
profiledata: {}
}>>/*#
#desc: rpg_dude data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_rpg_dude = {
self_ref:"npc_rpg_dude",
first_name : "Fabio",
last_name : "Turilli",
character_name : "Sashka",
character_first_name: "Sashka",
character_last_name: "Sashka",
penis_size : 8,
flags: {
"has_met" : false
},
profile: false,
profiledata: {},
}>>/*#
#desc: rpg_warlock data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_rpg_warlock = {
self_ref:"npc_rpg_warlock",
first_name : "Luna",
last_name : "Eclipse",
character_name : "Orchid Glade",
penis_size : 3,
flags: {
"has_met" : false
},
profile: false,
profiledata: {},
}>>/*#
#desc: technician data
#status: FINISHED 0.5.0.0
#*/
<<set $npc_technician = {
self_ref: "npc_technician",
first_name : "Alex",
last_name : "Strawberry",
affection : 0,
anger : 0,
perversion : 0,
stage : 1,
penis_size : 10,
flags: {
reactnamechange: false,
knowTrans: false,
dataservice_encounter : {
"asked_for_help" : false,
"looked_up_skirt" : false,
"handjob": false,
"handjob_finish" : ''
},
rpg_campaign : {
session : 0,
cur_campaign_id : "fantasy",
character : "", /* orc_mage, elf_priestess, succubus, bard or druid*/
has_stayed_behind : false, /* have you stayed after to help her clean */
session_actions : {
fantasy : {
orc_mage : [false,false,false,false,false,false,false],
elf_priestess : [false,false,false,false,false,false,false],
succubus : [false,false,false,false,false,false,false,false],
bard : [false,false,false,false,false,false,false],
druid : [false,false,false,false,false,false,false]
}
} /* each session has a class-specific "action" junction where you can influence party's success */
},
sawyouinunisexclothes : false,
sawyouinfemaleclothes : false,
knows_bestiality_fetish : false,
fixed_manager_computer : false,
bespokeComments : {
'all' : false,
'gold_hoop_earrings' : false,
'pink_thigh_highs' : false,
'pink_satin_corset' : false
},
sexting : {
"times_sexted" : 0,
"times_sexted_accidentally" : 0
},
maid_cafe_serve : false
},
relationship : {
/*generic "everyone has these" relationship flags*/
relationship_stage : 0, /*for progressing through intimate relationship 1+ means you're dating*/
keyholder : false,
owner : false,
has_owned : false, /*for tracking if you changed owners*/
/*technician specific flags*/
her_role : "neutral", /*is she your dom, sub, or neutral*/
her_caged : false, /*note: can only cage her if her role is sub*/
called_her_mistress_first_date : false
},
dates : 0,
firstcall: false,
lastdate : null,
lastcall : null,
datetype : "",
profile: false,
profiledata: {}
}>><<set $npc_sexdoll = {
self_ref:"npc_sexdoll",
first_name : "Josef",
sissy_name : "Josy",
original_first_name : "",
last_name : "Murchev",
other_call : "Mr.",
call : "Mr.",
penis_size : 4,
flags: {
"stage" : 1,
"reactnamechange" : false
},
profile: false,
profiledata: {},
}>>
<<set $npc_sexdoll.original_first_name = $npc_sexdoll.first_name>>
<<set $npc_hucow = {
self_ref:"npc_hucow",
first_name : "Lisa", /* German for Lisa*/
last_name : "Soto", /* Hopefully a japanese surname*/
nickname : "Unit Nai Meushi", /* Chinese for milk, Japaenese for Cow */
other_call : "Ms.",
call : "Ms.",
flags: {
"stage" : 0,
"reactnamechange" : false
},
profile: false,
profiledata: {},
}>>
<<set $npc_futa = {
self_ref:"npc_futa",
first_name : "Achieng",
last_name : "Zivai",
other_call : "Ms.",
call : "Ms.",
penis_size : 11,
flags: {
"stage" : 0,
"reactnamechange" : false
},
profile: false,
profiledata: {},
}>>
<<set $npc_sissy_secretary = {
self_ref:"npc_sissy_secretary",
first_name : "Erich",
sissy_name : "Erica",
last_name : "Schwanze",
original_first_name : "",
other_call : "Mr.",
call : "Mr.",
flags: {
"stage" : 0,
"reactnamechange" : false
},
profile: false,
profiledata: {},
}>>
<<set $npc_sissy_secretary.original_first_name = $npc_sissy_secretary.first_name>><<set $npc_harassment = {
self_ref:"npc_harassment",
first_name : "Miriam",
last_name : "Tentans",
other_call : "Ms.",
call : "Ms.",
flags: {
"stage" : 0
},
profile: false,
profiledata: {},
}>>
<<set $npc_harassment_assist = {
self_ref:"npc_harassment_assist",
first_name : "Blake",
last_name : "Tollkirsche",
flags: {},
profile: false,
profiledata: {},
}>>
<<set $npc_discipline = {
self_ref:"npc_discipline",
first_name : "Olivia",
last_name : "Omnino",
other_call : "Ms.",
call : "Ms.",
flags: {
"stage" : 0
},
profile: false,
profiledata: {},
}>>
<<set $npc_nintendolls = {
self_ref:"npc_nintendolls",
first_name : "Arikado",
last_name : "Bogart",
other_call : "Mr.",
call : "Mr.",
penis_size : 12,
flags: {
"stage" : 0
},
profile: false,
profiledata: {},
}>>
<<set $npc_retention = {
self_ref:"npc_retention",
first_name : "Michael",
last_name : "Bergmeister",
other_call : "Mr.",
call : "Mr.",
penis_size : 13,
flags: {
"stage" : 0
},
profile: false,
profiledata: {},
}>>
/%note: no balls%/
<<set $npc_development = {
self_ref:"npc_development",
first_name : "Christine",
last_name : "Watergate",
other_call : "Ms.",
call : "Ms.",
penis_size : 11,
flags: {
"stage" : 0
},
profile: false,
profiledata: {},
}>>/*#
#desc: player menu (inventory/stats/etc.)
#status: FINISHED 0.4.0.0
#*/
<div class="topMenu">
<<set $player.plocation to passage()>>
[[Options|goOpt]] |
[[Stats|goSta]] |
[[Inventory|goInv]] |
[[Tasks|goTas]] |
[[Profiles|goProfiles]]
<<if gotItemSpecific("smartphone")>>
<<if setup.inPassageTag(passage(),'phone')>>
| [[Phone|goPho]]
<<else>>
| @@.link_locked;Phone@@
<</if>>
<</if>>
<span id="locationTitle">@@.textRightSide;<<=$player.location>>@@</span><br>
<hr>
</div>/*#
#desc: player stats
#status: FINISHED 0.4.0.0
#*/
<div class="topMenu">
[[Options|goOpt]] |
[[Inventory|goInv]] |
[[Tasks|goTas]] |
[[Profiles|goProfiles]]
<<if gotItemSpecific("smartphone")>>
| [[Phone|goPho]]
<</if>>
@@.textRightSide;Stats [[[back|$player.plocation]]]@@<br>
<hr>
</div><br>
/%<<printStats $player>>%/
<<printValues $player.values $player>><br>
[[back|$player.plocation]]/*#
#desc: player inventory
#status: FINISHED 0.4.0.0
#*/
<<checkOptions $options>>
<<updateValues>>
<div class="topMenu">
[[Options|goOpt]] |
[[Stats|goSta]] |
[[Tasks|goTas]] |
[[Profiles|goProfiles]]
<<if gotItemSpecific("smartphone")>>
| [[Phone|goPho]]
<</if>>
@@.textRightSide;Inventory [[[back|$player.plocation]]]@@
<<initJquery>>
<hr>
</div>
<<if $options.basicInventory>>
<<printBasicInv $player>>
<<else>>
<<printInv $player>>
<</if>>
<br><br>
Decency: <<printIndecency $player>><br>
<br>
<<include thoughts_current>>
Sleepwear:
<<if setup.checkSleepWear() == true>>
Yes
<<else>>
No
<</if>>
<<set $player.currentThought = "">>/*#
#desc: tasks screen
#status: FINISHED 0.4.0.0
#*/
<div class="topMenu">
<<set $now = setup.advanceDate($player, $now, 'seconds', 0)>>
[[Options|goOpt]] |
[[Stats|goSta]] |
[[Inventory|goInv]] |
[[Profiles|goProfiles]]
<<if gotItemSpecific("smartphone")>>
| [[Phone|goPho]]
<</if>>
@@.textRightSide;Tasks [[[back|$player.plocation]]]@@<br>
<hr>
</div><br>
<<printTasks $player $now>>/*#
#desc: phone menu
#status: FINISHED 0.4.0.0
#*/
<div class="topMenu">
[[Options|goOpt]] |
[[Stats|goSta]] |
[[Inventory|goInv]] |
[[Tasks|goTas]] |
[[Profiles|goProfiles]]
@@.textRightSide;Phone [[[back|$player.plocation]]]@@
<<initJquery>><br>
<hr>
</div><br>
<<if $currentcall>>
You are already calling someone. Finish your current conversation first!
<<else>>
You have the following numbers stored on your Phone: <br>
<<printPhone $phoneList $currentcall>>
<<set $player.currentThought = "">>
<</if>>/*#
#desc: in-game options
#status: FINISHED 0.4.0.0
#*/
<div class="topMenu">
<<checkOptions $options>>
Options
@@.textRightSide;
[<<link "back">><<checkOptions $options>><<goto $player.plocation>><</link>>]@@<br>
<hr>
</div><br>
<<createCheckBox $options.tutorial "$options.tutorial">> Tutorial Mode<br>
<<createCheckBox $options.sound "$options.sound">> Sound<br>
<<createCheckBox $options.pixelfont "$options.pixelfont">> Use Pixel Font<br>
<<createCheckBox $options.showxp "$options.showxp">> Show Experience Points <br>
<<createCheckBox $options.basicInventory "$options.basicInventory">> Text Inventory <br>
<br>
Zoom<br>
<<createRadioButton $options.zoom "$options.zoom">><br>
<br>
Version <<getVersion>><br>
<br>
[<<link "Adjust fetish flags">><<goto fetish_flag_adjust>><</link>>]<br>
[<<link "Credits">><<goto game_credits_options>><</link>>]<br>/*#
#desc: take an item pop-up
#status: FINISHED 0.4.0.0
#*/
<<pickupItem $curItem $player.takeLocation>>
You pick up <<=$curItemName>>.
@@.textRightSide;<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<goto $player.plocation>>
<</button>>@@/*#
#desc: item description
#status: FINISHED 0.4.0.0
#*/
<<printItemDesc $curItem>>
<br>
[<<return "back">>]<div class="topMenu">
Fetish flag configuration
@@.textRightSide;
[<<link "back">><<goto $player.plocation>><</link>>]@@<br>
<hr>
</div><br>
<<printAssessmentSummary>>
<br><br>
[[Save|$player.plocation]]/*#
#desc: print thoughts you have at home
#status: FINISHED 0.4.0.0
#*/
<<set _txt = "">>
<<if setup.isWorkDay($now)>>
<<set _tmpClothStr = analyzeWorkClothes($player)>>
<<if getUTCHours($now) >= 7 and getUTCHours($now) < 8>>
<<set _txt = "I have to work today."+_tmpClothStr>>
<<if getUTCMinutes($now) >= 45>>
<<set _txt += " If I leave right now I still might make it to work on time."+_tmpClothStr>>
<<elseif getUTCMinutes($now) >= 30>>
<<set _txt += " It's time to go to work."+_tmpClothStr>>
<</if>>
<<elseif getUTCHours($now) >= 8 and getUTCHours($now) < 9>>
<<if !$player.work.sendhome>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<set _txt = "Better hurry and fix things so that I don't fail a second inspection in one day...">>
<<else>>
<<set _txt = "Okay... I'm going to be late. Maybe I should call work to let them know.">>
<</if>>
<</if>>
<</if>>
<<if _txt != "">>
<<set _x = setup.addThought("homeThought",1,_txt)>>
<</if>>
<</if>>
<<set _thoughts = setup.getThougtList()>>
<<printThought $player _thoughts>><br>
<br>
<<set _x = setup.clearThougtList()>>/*#
#desc: print current thought
#status: FINISHED 0.4.0.0
#*/
<<set _thoughts = setup.getThougtList()>>
<<printThought $player _thoughts>><br>
<br>
<<set _x = setup.clearThougtList()>>/*#
#desc: work thoughts
#status: FINISHED 0.4.0.0
#*/
<<set _txt = "">>
<<if $player.timebased.horny > $player.penis.erection>>
<<if $player.timebased.horny >= 99>>
<<set _txt += "Damn it. I'm so horny I can hardly concentrate. ">>
<<else>>
<<set _txt += "It's getting hard to concentrate being this horny. ">>
<</if>>
<<if setup.getTotalValue('humiliation') >= 10>>
<<set _txt += "Maybe I should give my <<getWordMyPenis $player>> a good spanking under the table.">>
<<elseif setup.getTotalValue('humiliation') >= 6>>
<<set _txt += "Maybe I should go to the toilet and jerk my <<getWordMyPenis $player>> there.">>
<<else>>
<<set _txt += "I should have masturbated at home.">>
<</if>>
<</if>>
<<if _txt != "">>
<<set _x = setup.addThought("homeThought",1,_txt)>>
<</if>>
<<set _thoughts = setup.getThougtList()>>
<<printThought $player _thoughts>><br>
<br>
<<set _x = setup.clearThougtList()>>/*#
#desc: initialize all player data, which is WAY TO MUCH...
#status: FINISHED 0.5.0.0
#*/
<<set $player={
self_ref:"player",
call:"Mr.",
first_name: "John",
original_first_name: "",
last_name: "Doe",
workplace: "Cloud Data Service",
pronoun: 1,
penisname: "privates",
breastname: "breasts",
girldesc: "Sissy",
sissy_name: "Deedee",
descA: "good, little",
descB: "boy",
debug: true,
location: "At home",
plocation: "room_empty",
llocation: "",
takeLocation: "",
thoughtColor: "lightblue",
currentThought : "",
overwriteThought : "",
readytoleave : false,
inside : true,
alone : true,
owner : '',
identify_as : 'male',
money: {
total: 600,
maxcredit: 500,
interrest_pos: 1,
interrest_neg: 10,
base_rent:950,
corporate_debt: 0 /* placeholder for future */
},
indecent: 0,
values: {},
willpower: {
current: 0,
total: 0,
bonus: 0,
temp: 0
},
height: 170,
weight: 63,
penissize: 3, /* assumed 0 = tiny, 1=small, 2=average, 3=slightly above, 4=large, 5=huge, 6=massive */
body: {
breastsize: [0,0,0],
booty: [0,0,0],
lips: [0,0,0],
},
hair: {
style: "unkempt",
color: "brown",
length: 1,
},
makeup: {
template: "",
messed: 0,
permanent: "",
unlocked: {}
},
nails: {
style: "",
length: 0,
color: "natural",
},
eyecolor: "green",
piercings: {
nipples: false
},
virginity: "",
handjobvirginity: "",
analvirginity: "",
blowjobvirginity : "",
cunnilingusvirginity : "",
peggingvirginity: "",
ownfacial: false,
otherfacial: false,
swalloeddowncum: false,
swallowedothercum: false,
drankownpee: false,
drankotherpee: false,
swallowedotherpee: false,
fuckedbyanimalcock: false,
fuckedbyanimal: false,
fuckedbymonster: false,
work: {
lastWorkDay: 30,
mode: 0,
hoursperWeek: 16.5,
hoursDone: 0,
workPensum: 0,
tmphoursDone: 0,
tmpworkPensum: 0,
startTime: 0,
nowWorking: false,
workMessage: "",
qualifyingperiod: 28,
qualification_extension: false,
foodID : "",
foodNumber : 0,
time_morning : { hour: 12, minutes: 0},
time_midday : { hour: 12, minutes: 30},
time_evening : {hour: 17, minutes: 0},
time_friday : {hour: 13, minutes: 0},
vacation: 12,
payment: 110,
sendhome: false,
sendhomedate: null,
floorNumber: 52,
work_restraints_available: false,
work_restrained: false,
school: 0,
"bathroom_comments": {
"male": {
'start' : false,
'unisex' : false,
'female' : false,
'pink' : false,
'breastssmall' : false,
'breastsmed' : false,
'breastslarge' : false,
'breastsmassive' : false,
'generic' : false
}, "female": {
'start' : false,
'unisex' : false,
'female' : false,
'pink' : false,
'breastssmall' : false,
'breastsmed' : false,
'breastslarge' : false,
'breastsmassive' : false,
'generic' : false
}
},
bathroom_events: {
male : {
blowjob : 0,
anal : 0,
piss : 0,
piss_butt : 0
},
female : {
blowjob : 0,
cunnilingus : 0,
piss : 0,
piss_butt : 0,
piss_manager : false
}
}
},
penis: {
erection: 50,
size: 4,
},
timebased: {
superMulti: 1,
fatigue: 33,
fatigueadd: 0.092,
fatiguemulti: 1,
fatiguemax: 200,
horny: 14,
hornyadd: 0.05,
hornymulti: 1,
hornymax: 100,
errection: false,
dirty: 0,
dirtymulti: 1,
/*dirtyadd: 0.069,*/
dirtyadd: 0.045,
dirtymax: 100,
stress: 24,
stressmulti: 0,
stressadd: 0.092,
stressmax: 100,
locked_cage: 0,
locked_cage_voluntarily: 0,
without_orgasm: 0,
triedtosleep: 0,
tightlacing: 0
},
othertimebased: {
chuck_water : 0,
chuck_grow : 0,
},
cutscene: {
lockinventory : false,
reason : "",
taskszene : false,
},
workevents: {
coffee: [],
minTimeDiff : 4
},
flags: {
coffee: {
lastcoffee: null,
location: null
},
exgirlfriend: {
seen: false,
},
manager: {
tookpinkpill: false,
},
gloryhole: {
handjob: 0,
blowjob: 0,
pissjob: 0,
swallowpiss: 0,
totalmoney : 0
},
company: {
depts: 0,
},
/* valid options: forced, money, voluntary, obedient */
fem_style: {
/* stage 0 */
underwear : "", /* wear female underwear */
/* stage 1 */
unisex : "", /* wear unisex clothing */
chastity : "", /* put in chastity device */
/* stage 2 */
female : "", /* wear female clothing */
name : "", /* change your name */
makeup : "", /* start wearing feminine makeup */
/* unimplemented */
/* non-stage (can obtain in a stage before they are required for advancement) */
hair : "", /* switch to feminine hairstyle */
breasts : "", /* get permanent breasts */
nails : "", /* painted toe and fingernails */
boiless : "", /* try boiless meal supplement */
hormones : "" /* start taking hormone supplements */
},
/* counter for tracking forced progression so that players don't get "lost" or stuck (requirements are additive) */
fem_style_failures: {
underwear : 0, /* not applicable, this choice is forced the first morning */
unisex : 0, /* fail to show up clean or wearing female underwear */
chastity : 0, /* fail to wear unisex */
female : 0, /* fail to wear chastity + manage key */
name : 0, /* fail to dress female */
female : 0, /* */
/* boiless and hormones are TODOfuture side-content under current plan */
boiless : 0, /* try boiless meal supplement */
hormones : 0, /* start taking hormone supplements */
},
humiliationStyle : "", /* brazen or embarrassed or "" */
masturbation: {
normal : true,
plug : false,
dildo : false,
fuckmachine : false,
selfbondage : false,
work : {
desk : false,
desk_caught : false,
bathroom : false,
bathroom_caught : false,
bathroom_confess : false,
desk_plug : false,
desk_plug_caught : false,
bathroom_plug : false,
help : false,
help_anal : false,
punish : false
}
},
cumchastity : false,
fetishslave : false,
sissymaid : false,
dominantsissy : false,
exhibitionist : false,
commando : false,
onlineUniversity : false,
onlineMakeup : false,
onlineGaming : false,
gaming: false,
roleplay: false,
entercompany : false,
contract: {
read: 0,
understoodpartial: false,
understoodcomplete: false
},
faultcompany : "Nintendolls",
wardrobeopened : false,
datarecovery: 0,
jobsecretary: false,
manager_ignored_firstrequest: false,
firstWorkDayShopvisit: false,
landlordsawyounaked: false,
landlordsawyouinfemaleclothing: false,
landlordsawyouinfemaleunderwear: false,
firstWorkDay: false,
firstWorkDayDone: false,
firstDPassissy: false,
checkedPicture: false,
checkedDoor: false,
metCook: false,
firstremuneration: false,
plugged_self: false,
fuckedbydildo: false,
technician_firstcall: false,
atesissypill: false,
atebimbocandy: false,
used_sissy_pill_count: 0,
special_skills: {
"blowjob_training" : false, /* sensuous blowjobs */
"anal_training" : false /* anal pompoir */
},
hotties_game: {
owned : false,
times_played : 0,
times_played_alex : 0,
wins : 0,
wins_alex : 0
},
canteen_spill : 0,
/* regarding Manager */
idling: false,
/* QUESTS */
boiless: {
known: false,
tasted: false,
delivered: false,
inspections_failed: 0,
inspections_passed: 0,
special_bottle: "", /* who gave you the penis bottl, manager or barista */
sissy_hitch: false,
witnessed_hitched: 0,
confront_psych_phone: "", /* how you confronted psychiatrist re: cum; happy, confused, angry */
thanked_psych: false
},
sissypill_and_hormones: false,
mealplan: {
base : "cheap", /* options are cheap, premium, boiless */
cum_unlocked: false,
cum: false,
consecutive_days_cum: 0,
total_days_cum: 0,
cum_supply: 0,
hormones_unlocked: false,
hormones_required: false,
total_days_hormone: 0,
consecutive_days_hormone: 0,
hormones: "none", /* options are none, little, normal, lots */
total_hormones: 0 /* little = +1 per day, normal +2 per day, lots +4 per day */
},
bodyshop: {
discovered: false
},
first_permanent_breasts: false,
collar: {
owner: ""
},
uniform_upgrade : {
fully_understood_contract : false,
smart_stipend_explain : false,
contract_curiosity: false,
aslut_enrollment_refused: false,
conquer_bed_heels : false,
aslut_1_complete : false,
autoLacing : false,
laceFailCounter : 0
},
accidental_sext : false,
fuckedbydogjogging : 0,
fuckedbydogpackjogging : 0,
workExhausted : false
},
counter: {
visit_lingerie_store : 0,
},
locations:{
psychiatrist: false,
sexstore: false,
sissystore: false,
theusualplace: false,
theusualplace_gloryhole: false,
mallcafe: false,
beautyparlor: false,
home_technician: false,
bodyshop: false,
gym: false
},
clock:{
h: 7,
m: 0,
},
}>>
<<set $player.values = initPlayerValues()>>[[Skip Prologue|goStage0]] - Morning of first day as a secretary<br>
[[Start in stage 1|goStage1]] - At your first psychiatrist appointment<br>
[[Start in stage 2|goStage2]] - After you have been safely secured in chastity<br>
[[Start in stage 3|goStage3]] - After you finished your trial period and are a full-fledged SISSY secretary<br><<set $roomchange = true>>
<<set $warpinfo = {}>>
<<set $cheater_flag = true>>
<<setScene>><<include warpInit>>
<<set $warpinfo.stage = 0>>
<<include configStage0>>
<br><br>
[<<moveTo "Stage0" "Other Settings" 0 "<<allWardrobeToItem>>">>]<<debugClearEvents>>
<<include setStage0>>
<<set $now = new Date(Date.parse("2033-06-29T06:30:00+0000"))>>
<<set $warpinfo.startPassage = "event_first_workday_morning_0">>
<<moveTo "otherConfigs">><<set $warpinfo.prologue = {}>>
<<set $warpinfo.stage0 = {}>>
Prologue flags:<br>
<<configFemStyle "underwear">><br>
Ignored manager first request: <<checkbox "$player.flags.manager_ignored_firstrequest" false true checked>><br>
Fired response: <br>
<label>Anything for another chance: <<radiobutton "$warpinfo.prologue.firedResponse" 'obedient' checked>></label><br>
<label>Admitted defeat: <<radiobutton "$warpinfo.prologue.firedResponse" 'defeat'>></label><br>
<label>Waited: <<radiobutton "$warpinfo.prologue.firedResponse" 'patient'>></label><br>
<br>
Read contract before signing: <<checkbox "$warpinfo.prologue.readInitialOffer" false true checked>><br><<include Stage0SetFlags>>
<<include Stage0Tasks>>
<<include Stage0Themes>>
<<include Stage0Thresholds>>
<<include Stage0Items>><<set $player.flags.wardrobeopened = true>>
<<set $player.flags.jobsecretary = true>>
<<set $npc_manager.profile = true>>
<<if $player.flags.manager_ignored_firstrequest>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<setThreshold 'bimbofication' 'stupid_defiance' 'intro_ignore_manager' true>>
<<applyExperience 'bimbofication' 3 'insignificant' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_manager.workdiscipline -= 1>>
<</if>>
<<switch $warpinfo.prologue.firedResponse>>
<<case 'obedient'>>
<<setThreshold 'submission' 'submissive_secretary' 'intro' true>>
<<case 'defeat'>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'humiliation' 3 'insignificant' $SEEN_FRIEND>>
<<case 'patient'>>
<<set $player.work.payment+=15>>
<</switch>>
<<if $warpinfo.prologue.readInitialOffer>>
<<setThreshold 'smart' 'contract_smart' 'try_to_read' true>>
<</if>><<set _nextDate to setup.setNextDate($now, 3, 7, 0)>>
<<addEvent 'rent_first'
'{"trigger":"always","type":"date"}'
'{"szene":"event_landlord_rent_first"}'
_nextDate>>
<<include firstDaySecretaryTasks>>
<<include initializeWorkEvents>><<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_0'
0
'event_psychiatrist_session_landlord_1'
false
'theme_psychiatrist_landlord_header'
>>/% first punishment %/
<<applyExperience 'submission' 3 'almost' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<setThreshold 'bdsm' 'manager_upbringing' 'mandatory_measure' true>>
<<applyExperience 'bdsm' 2 'insignificant' $SEEN_FRIEND>>
<<switch $player.flags.fem_style.underwear>>
<<case "forced">>
<<set $player.flags.commando = true>>
None: Forced happens later in the day
<<case "obedient">>
<<setThreshold 'feminization' 'good_girl' 'alizon_package' true>>
<<case "money">>
<<applyExperience 'humiliation' 6 'normal' $SEEN_STRANGER>>
<<setThreshold 'feminization' 'money' 'mall_panties' true>>
<<case "voluntary">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'exgirlfriends_panties' true>>
<</switch>>/% you start with this:
<<addItem "pyjama">>
<<wearItem $player $now "pyjama">>
in wardrobe at start of game:
<<addItem "boxershorts">>
<<addItem "shirt">>
<<addItem "socks">>
<<addItem "b_trousers">>
<<addItem "tie">>
<<addItem "tshirt">>
<<addItem "jeans">>
%/
<<purgePhase1Items>>
<<addItemWardrobe "makeup_basic">>
<<addItemWardrobe "black_box">>
<<removeItem $player $now "pyjama" true>>
<<deleteItem $player $now "boxershorts" true>>
<<deleteItem $player $now "socks" true>>
<<deleteItem $player $now "pyjama" true>>
<<addItem "shoes_black">>
<<wearItem $player $now "shirt" true>>
<<wearItem $player $now "b_trousers" true>>
<<wearItem $player $now "tie" true>>
<<wearItem $player $now "shoes_black" true>>
<<addItem "skirt_black">>
<<addItem "satin_blouse">>
<<addItem "fountain_pen">>
<<addItem "business_card">>
<<addItem "card_landlord">>
<<addItem "smartphone">>
<<switch $player.flags.fem_style.underwear>>
<<case "obedient">>
<<addItem "blue_striped_bra">>
<<addItem "blue_striped_panties">>
<<addItem "blue_striped_stockings">>
<<wearItem $player $now "blue_striped_bra" true>>
<<wearItem $player $now "blue_striped_panties" true>>
<<wearItem $player $now "blue_striped_stockings" true>>
<<addEmail $computer
'Alizon.com'
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
$now
'mail_alizon_01_h'
'mail_alizon_01_t'
>>
<<case "forced">>
<<set $player.flags.commando = true>>
<<case "money">>
<<set $player.money.total -= 40>>
<<addItem "black_fishnet_stockings">>
<<addItem "lace_garter">>
<<addItem "black_lace_thong">>
<<addItem "black_lace_bra">>
<<wearItem $player $now "black_fishnet_stockings" true>>
<<wearItem $player $now "lace_garter" true>>
<<wearItem $player $now "black_lace_thong" true>>
<<addItemWardrobe "cotton_panties">>
<<addItemWardrobe "cotton_bra">>
<<addItemWardrobe "black_pantyhose">>
<<addItemWardrobe "satin_blouse">>
<<addItemWardrobe "skirt_black">>
<<case "voluntary">>
<<addItem "cotton_panties">>
<<addItem "cotton_bra">>
<<addItem "black_pantyhose">>
<<wearItem $player $now "cotton_panties" true>>
<<wearItem $player $now "cotton_bra" true>>
<<wearItem $player $now "black_pantyhose" true>>
<</switch>><<include warpInit>>
<<set $warpinfo.stage = 1>>
<<set $npc_manager.stage = 1>>
<<include configStage1>>
<br><br>
[<<moveTo "Stage1_0" "Other Settings" 0 "<<allWardrobeToItem>>">>]<<include configStage0>><br>
<br>
First Week Flags:
Asked about picture of predecessor? <<checkbox "$warpinfo.stage0.askPredecessor" false true checked>>
Took pink pill first day? <<checkbox "$player.flags.manager.tookpinkpill" false true checked>>
/% start post-intro on friday psychiatrist visit %/<<set $warpinfo.startPassage = "event_psychiatrist_therapy_mux">>
<<include Stage1SetFlags>>
<<debugClearEvents>>
<<set $now = new Date(Date.parse("2033-07-01T13:00:00+0000"))>>
<<include Stage1Tasks>>
<<include Stage1Themes>>
<<include Stage1Thresholds>>
<<include Stage1Items>>
<<storeVisual $player $npc_exgirlfriend>>Stage 0 setup...<br>
<<include setStage0>>
<<goto Stage1_1>>Stage 1 setup...<br>
<<include setStage1>>
<<moveTo "otherConfigs">><<set $player.flags.metCook = true>>
<<set $player.flags.firstremuneration=true>>
<<set $player.flags.firstWorkDay=true>>
<<set $player.work.qualifyingperiod=25>>
<<set $player.work.hoursperWeek = 39>>
<<set $player.work.hoursDone = 0>>
<<set $player.work.workPensum = 0>>
<<set $player.work.payment = 250>>
<<set $player.locations.psychiatrist = true>>
<<set $player.timebased.fatigue = 0>>
<<set $player.timebased.horny = 0>>
<<set $player.timebased.stress = 70>>
<<set $npc_landlord.flags.firstrent = true>>
<<set $npc_cook.profile = true>>
<<set $npc_barista.profile = true>>
<<if $player.flags.fem_style.underwear == "forced">>
<<set $npc_manager.gotsissyset = true>>
<<set $npc_manager.flags.bad_girl.got_sissy_underwear = true>>
<</if>>
<<set $npc_psychiatrist.freesessions = 3>>
<<if $warpinfo.stage0.askPredecessor>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.push('unisex')>>
<<set $player.flags.firstWorkDayDone = true>>
<<set $npc_manager.flags.gotCoffee = true>><<set _x = setup.addManagerEndlessTask1($now, false, false, false)>>
<<include initializeWorkEvents>>
<<deleteWorkEvent 'work_coffee'>><<if $player.flags.manager.tookpinkpill>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<set $player.flags.atesissypill = true>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
'theme_manager_transformation_header'
>>
<<else>>
<<addItem 'pink_pill'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_2'
8
'event_psychiatrist_session_manager_sissy_pill_1'
true
'theme_psychiatrist_manager_header'
>><<setThreshold "submission" "submissive_secretary" "first_punishment" true>>
<<if $player.flags.fem_style.underwear == "forced">>
<<setThreshold "feminization" "bad_girl_feminization" "commando" true>>
<<setThreshold "submission" "bad_girl_submission" "commando" true>>
<<setThreshold "bimbofication" "bad_girl_bimbofication" "commando" true>>
<</if>><<switch $player.flags.fem_style.underwear>>
<<case "obedient">>
<<set $underwearSet = ["blue_striped_bra", "blue_striped_panties", "blue_striped_stockings"]>>
<<case "forced">>
<<set $underwearSet = ["pink_sissy_panties", "sissy_garter", "pink_sissy_bra", "pink_sissy_stockings"]>>
<<case "money">>
<<set $underwearSet = ["black_fishnet_stockings", "lace_garter", "black_lace_thong", "black_lace_bra"]>>
<<case "voluntary">>
<<set $underwearSet = ["cotton_panties", "cotton_bra", "black_pantyhose"]>>
<</switch>><<addItem "unknown_candy">>
<<include calcUnderwearSet>>
<<if $player.flags.fem_style.underwear == "forced">>
<<addItem "pink_sissy_panties">>
<<addItem "sissy_garter">>
<<addItem "pink_sissy_bra">>
<<addItem "pink_sissy_stockings">>
<<wearItem $player $now "pink_sissy_panties" true>>
<<wearItem $player $now "sissy_garter" true>>
<<wearItem $player $now "pink_sissy_bra" true>>
<<wearItem $player $now "pink_sissy_stockings" true>>
<</if>>
<<set _name = setup.getNpcName('npc_manager', 'full')>>
<<set _officeClothing = ['tie','shirt','b_trousers','shoes_black']>>
<<set _officeClothing = _officeClothing.concat($underwearSet)>>
<<set $clothSets = [{
"name":"Office Clothes",
"data":_officeClothing,
"important":true,
},
{
"name":"Casual Clothes",
"data":["boxershorts","socks","jeans","tshirt","shoes_black"],
"important":true,
},
{
"name":"Sleep Clothes",
"data": ["pyjama"],
"important":true,
}]>>
/% this is included via firstDaySecretarytasks
<<addEmail $computer
_name
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_manager_contract_01_h'
'mail_manager_contract_01_t'
'{"name":"sissy_secretary_contract.pdf","type":"event","data":{"event":"attachment_read_contract"}}'
>>%/<<include warpInit>>
<<include configStage2>><br>
<br>
[[Continue|Stage2_0]]<<set $warpinfo.stage = 2>>
<<set $warpinfo.stage1 = {}>>
<<set $npc_manager.stage = 2>>
<<include configStage1>><br>
<br>
Stage 1 flags:<br>
<<configFemStyle "unisex">><br>
<<configFemStyle "chastity">><br>
<br>
Resist Stage 1 ending dildo: <<checkbox "$warpinfo.stage1.dildoresist" false true checked>><br>/% set and then advance time because task macro is designed to set inspection for "tomorrow" %/
<<set $warpinfo.startPassage = "room_foyer">>
<<include Stage2SetFlags>>
<<debugClearEvents>>
<<set $now = new Date(Date.parse("2033-07-11T06:30:00+0000"))>>
<<include Stage2Tasks>>
<<include Stage2Themes>>
<<include Stage2Thresholds>>
<<include Stage2Items>>Stage 0 setup...<br>
<<include setStage0>>
<br>
<<goto Stage2_1>>Stage 1 setup...<br>
<<include setStage1>>
<br>
<<goto Stage2_2>>Stage 2 setup...<br>
<<include setStage2>><br>
<br>
<<goto contentConfigs>><<set $npc_psychiatrist.sessions = 1>>
<<set $npc_psychiatrist.free_sessions = 2>>
<<set $npc_psychiatrist.profile = true>>
<<set $npc_admin.flags.sawyouinunisexclothes = true>>
<<set $npc_landlord.flags.firstremuneration = true>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<set $npc_barber.flags.firstcut = true>>
<<set $player.work.qualifyingperiod=20>>
<<set $player.locations.theusualplace=true>>
<<set $npc_manager.flags.talkedfirstreward = true>>
<<set $npc_manager.flags.hascagekey = false>>
<<switch $player.flags.fem_style.chastity>>
<<case "obedient">>
<<set $npc_manager.flags.talkedfirstreward = true>>
<<case "forced">>
None Stage 2 Set Flags fem_style.chastity.forced<br>
<<case "money">>
<<set $npc_sexstore_clerk.flags.chastity_quest.start = true>>
<<set $npc_sexstore_clerk.flags.chastity_quest.finished = true>>
/% TODO: bonus %/
<<case "voluntary">>
<<gainWillpower $player 1>>
<</switch>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.push('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<if $warpinfo.stage1.dildoresist>>
<<set $player.willpower.bonus += 1>>
<</if>><<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
'theme_psychiatrist_manager_header'
>>
<<if $player.flags.fem_style.chastity == "forced">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_punishment'
5
'event_psychiatrist_session_manager_2'
false
'theme_psychiatrist_manager_header'
>>
<<else>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_reward'
5
'event_psychiatrist_session_manager_2'
false
'theme_psychiatrist_manager_header'
>>
<</if>><<include addPsychiatristEndless>>
<<set _x = setup.addManagerEndlessTask2($now, true, false, false)>>
<<include initializeWorkEvents>>
<<deleteWorkEvent 'work_coffee'>><<set $player.locations.sexstore = true>>
<<switch $player.flags.fem_style.unisex>>
<<case "obedient">>
<<setThreshold 'feminization' 'good_girl' 'spilling_incident' true>>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<<gainWillpower $player 1>>
<<case "forced">>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1' true>>
<<case "money">>
<<setThreshold "feminization" "money" "spilling_incident" true>>
<<case "voluntary">>
<<set $player.willpower.bonus += 1>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'unisex_outside' true>>
<</switch>>
<<switch $player.flags.fem_style.chastity>>
<<case "obedient" "voluntary">>
<<setThreshold 'foot' 'secretary_foot' 'stage1_reward' true>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_reward' true>>
<<set $npc_manager.flags.talkedfirstreward = true>>
<<case "forced" "money">>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_punishment' true>>
<<applyExperience 'humiliation' 10 'terrible' $SEEN_FRIEND>>
<</switch>>
<<setThreshold 'anal' 'secretary_anal' 'stage1_end' true>>
<<setThreshold 'cum' 'secretary_cum' 'cumeater' true>>
<<set $player.flags.onlineMakeup = true>>
<<set $room_online_makeup_tutorial_start_firsttime = true>>
<<setThreshold 'makeup' 'online_makeup' 'beginner_tutorial' true>>
<<unlockMakeup $player 'nomakeupmakeup'>>
<<unlockMakeup $player 'normalmakeup'>><<addItem "card_psychiatrist">>
<<removeItem $player $now "shirt" true>>
<<removeItem $player $now "b_trousers" true>>
<<removeItem $player $now "tie" true>>
<<addItem "analplug_small_box">>
<<switch $player.flags.fem_style.unisex>>
<<case "obedient" "forced">>
<<addItem "shirt_female_office">>
<<addItem "trousers_female_office">>
<<addItem "black_flats">>
<<wearItem $player $now "shirt_female_office" true>>
<<wearItem $player $now "trousers_female_office" true>>
<<wearItem $player $now "black_flats" true>>
<<set _officeClothing = ["shirt_female_office", "trousers_female_office", "black_flats"]>>
<<case "money">>
<<set $player.money.total += 100>>
<<addItem "shirt_female_office">>
<<addItem "trousers_female_office">>
<<addItem "black_flats">>
<<wearItem $player $now "shirt_female_office" true>>
<<wearItem $player $now "trousers_female_office" true>>
<<wearItem $player $now "black_flats" true>>
<<set _officeClothing = ["shirt_female_office", "trousers_female_office", "black_flats"]>>
<<case "voluntary">>
<<addItem "shirt_female_office_white">>
<<addItem "trousers_female_office_white">>
<<addItem "black_flats">>
<<wearItem $player $now "shirt_female_office_white" true>>
<<wearItem $player $now "trousers_female_office_white" true>>
<<wearItem $player $now "black_flats" true>>
<<set _officeClothing = ["shirt_female_office_white", "trousers_female_office_white", "black_flats"]>>
<</switch>>
<<include calcUnderwearSet>>
<<set _officeClothing = _officeClothing.concat($underwearSet)>>
<<switch $player.flags.fem_style.chastity>>
<<case "forced" "obedient">>
<<addItem 'c_cage_pink'>>
<<wearItem $player $now "c_cage_pink" true>>
<<manipulateItem $player $now "c_cage_pink" "lock" true>>
<<addItem 'chastity_cage_key'>>
<<case "money">>
/% TODO: money %/
<<addItem "c_cage_advanced">>
<<wearItem $player $now "c_cage_advanced" true>>
<<manipulateItem $player $now "c_cage_advanced" "lock" true>>
<<applyExperience 'humiliation' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'submission' 9 'very' $SEEN_STRANGER>>
<<addItem "advance_chastity_cage_key">>
<<case "voluntary">>
<<addItem "c_cage_steel">>
<<addItem "steel_chastity_cage_key">>
<<wearItem $player $now "c_cage_steel" true>>
<<manipulateItem $player $now "c_cage_steel" "lock" true>>
<</switch>>
<<set _name = setup.getNpcName("npc_psychiatrist", "full")>>
<<addEmail $computer
_name
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_psychiatrist_01_h'
'mail_psychiatrist_01_t'
'{"name":"nda_vr_therapy.pdf","type":"event","data":{"event":"attachment_read_nda_signed"}}'
>>
<<set $clothSets = [{
"name":"Office Clothes",
"data":_officeClothing,
"important":true,
},
{
"name":"Casual Clothes",
"data":["boxershorts","socks","jeans","tshirt","shoes_black"],
"important":true,
},
{
"name":"Sleep Clothes",
"data": ["pyjama"],
"important":true,
}]>><<include warpInit>>
<<set $warpinfo.stage = 3>>
<<set $npc_manager.stage = 3>>
<<include configStage3>><br>
<br>
[[Continue|Stage3_0]]<<set $warpinfo.stage2 = {}>>
<<include configStage2>><br>
<br>
Stage 2 flags:<br>
<<configFemStyle "female">><br>
<<configFemStyle "name">><br>
<<configFemStyle "makeup">><br>
<br>
<<set $player.call = "Miss">>
<<set $player.original_first_name = $player.first_name>>
Female name: <<textbox "$player.first_name" $player.sissy_name>><br>
Small chastity? <<checkbox "$warpinfo.stage2.small_chastity" false true checked>><br>
<br>
Unlocked Intelligence threshold:<br>
<label>IT Analytics Employee for too long (5-6): <<radiobutton "$warpinfo.smart" 0 checked>></label><br>
<label>University Newbie (6-8): <<radiobutton "$warpinfo.smart" 1>></label><br>
<label>Enrolled (8-10): <<radiobutton "$warpinfo.smart" 2>></label><br>
<label>Post-grad (10-12): <<radiobutton "$warpinfo.smart" 3>></label><br>
<label>Max (12): <<radiobutton "$warpinfo.smart" 4>></label><br>Prologue setup...<br>
<<include setStage0>>
<br>
<<goto Stage3_1>>Stage 1 setup...<br>
<<include setStage1>>
<br>
<<goto Stage3_2>>Stage 2 setup...<br>
<<include setStage2>>
<br>
<<goto Stage3_3>>Stage 3 setup...<br>
<<set $warpinfo.startPassage = "room_foyer">>
<<include setStage3>><br>
<br>
<<goto contentConfigs>>/% set and then advance date so that we appropriately have a manager inspection %/
<<set $now = new Date(Date.parse("2033-07-30T06:30:00+0000"))>>
<<include Stage3SetFlags>>
<<debugClearEvents>>
<<set $now = new Date(Date.parse("2033-08-01T06:30:00+0000"))>>
<<include Stage3Tasks>>
<<include Stage3Themes>>
<<include Stage3Thresholds>>
<<include Stage3Items>><<set $player.timebased.stress = 0>>
<<set $npc_landlord.flags.reactnamechange = true>>
<<set $npc_admin.flags.sawyouinunisexclothes = true>>
<<set $npc_admin.flags.sawyouinfemaleclothes = true>>
<<set $npc_admin.flags.reactnamechange = true>>
<<set $npc_ai.flags.reactnamechange = true>>
<<set $npc_barista.flags.reactnamechange = true>>
<<set $npc_maid.flags.reactnamechange = true>>
<<set $npc_manager.flags.gotsissyset = true>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set $npc_manager.flags.reactnamechange = true>>
<<set $npc_manager.flags.party.first_attend = true>>
<<set $npc_manager.flags.pegging.base_style = setup.getAverageFemstyle($player)>>
<<set $npc_cook.flags.reactnamechange = true>>
<<set $npc_barkeeper.flags.reactnamechange = true>>
<<set $npc_barber.flags.reactnamechange = true>>
<<set $npc_shopkeeper.flags.firstmet = true>>
<<set $npc_shopkeeper.flags.reactnamechange = true>>
<<set $npc_psychiatrist.flags.knowsyoucrossdress = true>>
<<set $npc_psychiatrist.flags.reactnamechange = true>>
<<set $npc_manager.call='Mistress'>>
<<set $npc_manager.title='Mistress'>>
<<if $player.flags.fem_style.underwear != "forced">>
<<set $npc_manager.flags.good_girl.got_sissy_underwear = true>>
<</if>>
<<if $player.flags.fem_style.female == "forced">>
<<set $npc_manager.flags.bad_girl.got_pink_secretary = true>>
<<else>>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<</if>>
<<set _x = $shopStatus['mall_apparel_store'].unlocked_inventory.push('designer')>>
<<set _x = $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.push('maid')>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<set $npc_cook.call_name = "Lassie">>
<<set $player.locations.bodyshop = true>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.push('formal')>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.push('formal')>><<set _x = setup.addManagerEndlessTask3($now, false, false)>>
<<include addPsychiatristEndless>>
<<include initializeWorkEvents>>
<<deleteWorkEvent 'work_coffee'>><<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_10'
10
'event_admin_theme_female_clothes'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_12'
12
'event_admin_theme_female_clothes'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
'theme_psychiatrist_transition_header'
>>
<<if $player.flags.fem_style.name == "obedient">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_7'
7
'event_psychiatrist_theme_good_girl_oral_manager_1'
false
'theme_psychiatrist_manager_header'
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
'theme_psychiatrist_manager_header'
>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_header'
0
'event_manager_theme_badsissy1'
true
>>
<<addNpcTheme 'npc_manager' 'voluntary_punishment' 'theme_manager_voluntary_punishment'
0
'event_manager_theme_voluntary_spanking_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_0'
0
'event_psychiatrist_session_admin_promotion'
false
'theme_psychiatrist_admin_header'
>><<switch $player.flags.fem_style.female>>
<<case "obedient">>
<<setThreshold "feminization" "good_girl" "cute_secretary" true>>
<<case "forced">>
<<setThreshold "feminization" "bad_girl_feminization" "cute_secretary" true>>
<<case "money">>
<<setThreshold "feminization" "money" "cute_secretary" true>>
<<case "voluntary">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'full_female_outside' true>>
<<set $player.willpower.bonus += 1>>
<</switch>>
<<switch $player.flags.fem_style.name>>
<<case "obedient">>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<<case "forced">>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<<case "money">>
<<applyExperience 'feminization' 13 'very' $SEEN_FRIEND>>
<<case "voluntary">>
<<applyExperience 'feminization' 15 'very' $ALONE>>
<</switch>>
<<set $player.makeup.messed = 0>>
<<switch $player.flags.fem_style.makeup>>
<<case "obedient">>
<<set $player.makeup.template = "normalmakeup">>
<<unlockMakeup $player 'normalmakeup'>>
<<setThreshold 'makeup' 'makeup_instruction' 'beginner_tutorial' true>>
<<case "forced">>
<<set $player.makeup.template = "">>
<<set $player.makeup.permanent = 'sissy_doll'>>
<<case "money">>
<<setThreshold 'makeup' 'online_makeup' 'beginner_tutorial' true>>
<<set $player.makeup.template = "normalmakeup">>
<<unlockMakeup $player 'normalmakeup'>>
<<case "voluntary">>
<<setThreshold 'makeup' 'online_makeup' 'beginner_tutorial' true>>
<<set $player.makeup.template = "normalmakeup">>
<<unlockMakeup $player 'normalmakeup'>>
<<set $player.willpower.bonus += 1>>
<</switch>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<setThreshold 'heels' 'wearing_heels' 'beginner' true>>
<<unlockMakeup $player "expertmakeup">>
<<setThreshold "makeup" "online_makeup" "technician_tips" true>>
<<setThreshold 'anal' 'secretary_anal' 'stage2_end' true>>
<<switch $warpinfo.smart>>
<<case 0>>
<<setThreshold 'smart' "original_smart" "org" true>>
<<case 1>>
<<setThreshold 'smart' "online_university" "beginner" true>>
<<case 2>>
<<setThreshold 'smart' "online_university" "advanced" true>>
<<case 3>>
<<setThreshold 'smart' "online_university" "expert" true>>
<<case 4>>
<<setThreshold 'smart' "online_university" "expert" true>>
<<applyExperience 'smart' 12 1000000 $ALONE>>
<<applyExperience 'smart' 12 1000000 $ALONE>>
<<applyExperience 'smart' 12 1000000 $ALONE>>
<</switch>><<removeItem $player $now "shirt_female_office" true>>
<<removeItem $player $now "trousers_female_office" true>>
<<removeItem $player $now "black_flats" true>>
<<addItem "pink_formal_dress">>
<<addItem "pink_court_shoes">>
<<addItem "makeup_mirror">>
<<addItem "remote_control_plug">>
<<wearItem $player $now "remote_control_plug" true>>
<<addItem "satin_blouse_pink">>
<<wearItem $player $now "satin_blouse_pink" true>>
<<addItem "skirt_pink_leather">>
<<wearItem $player $now "skirt_pink_leather" true>>
<<addItem "pink_mary_janes">>
<<wearItem $player $now "pink_mary_janes" true>>
<<if $player.flags.fem_style.underwear != "forced">>
<<addItem "pink_sissy_panties">>
<<addItem "sissy_garter">>
<<addItem "pink_sissy_bra">>
<<addItem "pink_sissy_stockings">>
<</if>>
<<if $warpinfo.stage2.small_chastity>>
<<set _cageId = setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<removeItem $player $now _cageId true>>
<<deleteItem $player $now _keyId>>
<<set $npc_manager.flags.hascagekey = false>>
<<addItem 'chastity_cage_tiny'>>
<<wearItem $player $now "chastity_cage_tiny" true>>
<<manipulateItem $player $now "chastity_cage_tiny" "lock" true>>
<<addItem 'small_chastity_cage_key'>>
<</if>>
<<set _officeClothing = ["pink_sissy_panties", "sissy_garter", "pink_sissy_bra", "pink_sissy_stockings", "satin_blouse_pink", "skirt_pink_leather", "pink_mary_janes", "pink_court_shoes"]>>
<<set $clothSets = [{
"name":"Office Clothes",
"data":_officeClothing,
"important":true,
},
{
"name":"Casual Clothes",
"data":["boxershorts","socks","jeans","tshirt","shoes_black"],
"important":true,
},
{
"name":"Sleep Clothes",
"data": ["pyjama"],
"important":true,
}]>><<set _dest = $warpinfo.startPassage>>
<<include otherHandler>>
<<include storeVisuals>>
<<unset $warpinfo>>
<<moveTo _dest>><<storeVisual $player $npc_admin>>
<<storeVisual $player $npc_barkeeper>>
<<storeVisual $player $npc_technician>>
<<storeVisual $player $npc_manager>>
<<storeVisual $player $npc_landlord>>
<<storeVisual $player $npc_psychiatrist>>
<<storeVisual $player $npc_shopkeeper>><<include adminConfig>><br>
<br>
<<include exgfConfig>><br>
<br>
<<include technicianConfig>><br>
<br>
<<include landlordConfig>><br>
<br>
<<include chuckConfig>><br>
<br>
<<if $npc_manager.stage > 1>>
<<include hypnoConfig>><br>
<br>
<</if>>
<<if $warpinfo.stage > 0>>
<<include prostitutionConfig>><br>
<br>
<<include workNpcConfig>><br>
<br>
<<include aiConfig>><br>
<br>
<</if>>
Debug mode: <<checkbox "$debug" false true>><br>
<br>
[[Start|startCheatMode]]<<include technicianHandler>>
<<include adminHandler>>
<<include landlordHandler>>
<<include exgfHandler>>
<<include prostitutionHandler>>
<<include chuckHandler>>
<<include hypnoHandler>>
<<include aiHandler>>
<<include workNpcHandler>>-- Prostitution --<br>
<<if $warpinfo.stage > 1>>
Prostitution Experience:<br>
<label>Never done (0): <<radiobutton "$warpinfo.prostitutionStage" 0 checked>></label><br>
<label>Gloryhole (5): <<radiobutton "$warpinfo.prostitutionStage" 5>></label><br>
/%<label>Backy-alley whore (10): <<radiobutton "$warpinfo.prostitutionStage" 10>></label><br>
<label>Prostitute (15): <<radiobutton "$warpinfo.prostitutionStage" 15>></label><br>
<label>Elite Callgirl (20): <<radiobutton "$warpinfo.prostitutionStage" 20>></label><br>%/
<</if>><<if $warpinfo.prostitutionStage > 0>>
<<include prostitutionBasic>>
<<addWorkEvent 'broken_computer' '{"trigger":"daily","type":"chance","chance":25,"repeat":false,"priority":100}' '{"szene":"event_work_broken_computer_1","length":"15"}' $now>>
<</if>><<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining' true>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_5'
5
'event_psychiatrist_session_prostitution_2'
true
'theme_psychiatrist_prostitution_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_10'
0
'event_psychiatrist_session_prostitution_1'
true
'theme_psychiatrist_prostitution_header'
>>--- Technician ---<br>
<br>
Technician Relationship:<br>
Asked for help with data recovery: <<checkbox "$npc_technician.flags.dataservice_encounter.asked_for_help" false true checked>><br>
/% technically these are dependent on the asked for help so should hide but bleh, for now just ignoring "impossible" selections %/
Strove extra hard to recover data: <<checkbox "$warpinfo.prologue.WorkHardDataRecovery" false true>><br>
First day:<br>
<label>Didn't look up her skirt: <<radiobutton "$warpinfo.stage0.technician" 0 checked>></label><br>
<label>Looked up her skirt: <<radiobutton "$warpinfo.stage0.technician" 1 checked>></label><br>
<label>Touched her cock: <<radiobutton "$warpinfo.stage0.technician" 2 checked>></label><br>
<label>Failed at jerking her off: <<radiobutton "$warpinfo.stage0.technician" 3 checked>></label><br>
<label>Successful handjob: <<radiobutton "$warpinfo.stage0.technician" 4 checked>></label><br>
<label>Blowjob: <<radiobutton "$warpinfo.stage0.technician" 5 checked>></label><br>
<<if $npc_manager.stage >= 2>>
<br><br>
Meetups:<br>
<label>Haven't met: <<radiobutton "$warpinfo.technician" 0 checked>></label><br>
<label>Met for coffee: <<radiobutton "$warpinfo.technician" 1>></label><br>
<<if $npc_manager.stage >= 3>>
<label>Joined RPG Group: <<radiobutton "$warpinfo.technician" 2>></label><br>
<label>Finished Campaign: <<radiobutton "$warpinfo.technician" 3>></label>
<</if>>
<</if>><<set $npc_technician.profile = true>>
<<if $npc_technician.flags.dataservice_encounter.asked_for_help>>
<<if $warpinfo.stage0.technician > 0>>
<<set $npc_technician.flags.dataservice_encounter.looked_up_skirt = true>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_0'
0
'event_technician_upskirt_apology'
false
'theme_technician_crossdress_header'
>>
<<setThreshold 'penis' 'through_alex' 'intro_penis' true>>
<<if $warpinfo.stage0.technician > 1>>
<<set $player.handjobvirginity = 'npc_technician'>>
<<set $npc_technician.flags.dataservice_encounter.handjob = true>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_3'
4
'psychiatrist_technician_handjob'
true
'theme_psychiatrist_other_header'
>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_handjob'
0
'event_technician_theme_handjob'
false
'theme_technician_sex_header'
>>
<</if>>
<<switch $warpinfo.stage0.technician>>
<<case 1>>
<<set $player.flags.datarecovery = 40>>
<<case 2>>
<<set $player.flags.datarecovery = 40>>
<<case 3>>
<<addItem "card_technician">>
<<set $player.flags.datarecovery = 50>>
<<applyExperience 'penis' 6 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'insignificant' $SEEN_FRIEND>>
<<set $npc_technician.flags.dataservice_encounter.handjob_finish = 'fail'>>
<<case 4>>
<<addItem "card_technician">>
<<set $player.flags.datarecovery = 51>>
<<applyExperience 'penis' 7 'normal' $SEEN_FRIEND>>
<<set $npc_technician.flags.dataservice_encounter.handjob_finish = 'hand'>>
<<case 5>>
<<set $npc_technician.flags.dataservice_encounter.handjob_finish = 'mouth'>>
<<set $player.flags.datarecovery = 60>>
<<set $player.blowjobvirginity = 'npc_technician'>>
<<setThreshold 'oral' 'through_alex' 'intro_oral' true>>
<<setThreshold 'cum' 'through_alex' 'intro_cum' true>>
<<applyExperience 'oral' $npc_technician.penis_size 'little' $SEEN_FRIEND>>
<<applyExperience 'cum' 6 'little' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'penis' 8 'normal' $SEEN_FRIEND>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_blowjob'
5
'event_technician_theme_blowjob'
true
'theme_technician_sex_header'
>>
<<addItem "card_technician">>
<</switch>>
<<else>>
<<setThreshold 'foot' 'foot_massages' 'alex_in_intro' true>>
<<applyExperience 'foot' 5 'very' $SEEN_FRIEND>>
<<set $player.flags.datarecovery = 45>>
<</if>>
<<else>>
<<gainWillpower $player 1>>
<<if $warpinfo.prologue.WorkHardDataRecovery>>
<<spendWillpower $player 1>>
<<set $player.flags.datarecovery = 36>>
<<else>>
<<set $player.flags.datarecovery = 4>>
<</if>>
<</if>>
/% early campaign stuff %/
<<if $warpinfo.technician >= 1>>
<<set $npc_ai.profile = true>>
<<set $player.locations.mallcafe=true>>
<<set $npc_technician.dates+=1>>
<<set $npc_technician.flags.knowTrans = true>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_2'
2
'event_technician_makeup_1'
true
'theme_technician_crossdress_header'
>>
<<addNpcTheme 'npc_technician' 'roleplay' 'theme_technician_rpg_5'
5
'event_technician_theme_roleplay_1_0'
true
'theme_technician_rpg_header'
>>
<</if>>
<<if $warpinfo.technician >= 2>>
<<set $player.locations.home_technician = true>>
<<include addRPGSessionTask>>
<<set $npc_rpg_warlock.profile = true>>
<<set $npc_rpg_dude.profile = true>>
<</if>>
<<if $warpinfo.technician >= 3>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_0'
0
'event_psychiatrist_theme_group_1'
false
'theme_psychiatrist_rpg_header'
>>
/% mid/late campaign stuff %/
<<set $npc_technician.flags.rpg_campaign.session = 8>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_20'
7
'event_psychiatrist_theme_rpg_finish'
false
'theme_psychiatrist_rpg_header'
>>
<</if>>--- Chuck ---<br>
<br>
<label>Sprout: <<radiobutton "$player.othertimebased.chuck_grow" 0 checked>></label><br>
<label>Growing: <<radiobutton "$player.othertimebased.chuck_grow" 50>></label><br>
<label>Baseball: <<radiobutton "$player.othertimebased.chuck_grow" 100>></label><br><<set $player.othertimebased.chuck_water = 100>>--- Hypnosis ---
Hypnosis stage:<br>
<label>Haven't signed: <<radiobutton "$warpinfo.hypno" 0 checked>></label><br>
<label>Haven't been: <<radiobutton "$warpinfo.hypno" 1>></label><br>
<label>First appointment (relax/obey) finished: <<radiobutton "$warpinfo.hypno" 2>></label><br>
<label>Second appointment (brainwashing is good for me) finished: <<radiobutton "$warpinfo.hypno" 3>></label><br>
<<if $npc_manager.stage > 2>>
<label>Third (love to suck cock) stage: <<radiobutton "$warpinfo.hypno" 4>></label><br>
<label>Fourth (basic VR) hypnosis: <<radiobutton "$warpinfo.hypno" 5>></label><br>
<label>"Decline" all basic VR options: <<radiobutton "$warpinfo.hypno" 6>></label><br>
<label>"Accepted" all basic VR options: <<radiobutton "$warpinfo.hypno" 7>></label>
<</if>><<if $warpinfo.hypno >= 1>>
<<set $npc_psychiatrist.flags.signednd = true>>
<</if>>
<<if $warpinfo.hypno >= 2>>
/% first appointment hypno %/
<<set $npc_psychiatrist.hypnosis = 1>>
<<setThreshold 'bondage' 'pre_hypnosis_bondage' 'bondage_chair' true>>
<<setThreshold 'submission' 'hypnosis_submission' 'first_session' true>>
<<set $npc_psychiatrist.free_sessions += 1>>
<</if>>
<<if $warpinfo.hypno >= 3>>
/% second appointment hypno %/
<<set $npc_psychiatrist.free_sessions += 1>>
<<set $npc_psychiatrist.hypnosis = 2>>
<<setThreshold 'anal' 'psychiatrist_anal' 'fingered'>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<setThreshold 'penis' 'pre_hypnosis_penis' 'session_2' true>>
<<setThreshold 'bimbofication' 'hypnosis_bimbofication' 'session_2' true>>
<</if>>
<<if $warpinfo.hypno >= 4>>
/% 3rd appointment hypno %/
<<set $npc_psychiatrist.free_sessions += 1>>
<<set $npc_psychiatrist.hypnosis = 3>>
<<set $npc_psychiatrist.flags.session[1].feminization = false>>
<<set $npc_psychiatrist.flags.session[1].sissyfication = false>>
<<set $npc_psychiatrist.flags.session[1].bimbofication = false>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<addItem "analplug_medium_ems">>
<<setThreshold 'anal' 'psychiatrist_anal' 'ems_plugged' true>>
<<set $sceneVisibility = $EXPOSED>>
<<if(setup.getTotalValue('oral')==0)>>
<<setThreshold 'oral' 'hypnosis_oral' 'session_3' true>>
<<else>>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<</if>>
<<if(setup.getTotalValue('cum')==0)>>
<<setThreshold 'cum' 'pre_hypnosis_cum' 'session_3' true>>
<<else>>
<<applyExperience 'cum' 12 'very' $EXPOSED>>
<</if>>
<<applyExperience 'penis' 18 'little' $EXPOSED>>
<<applyExperience 'bimbofication' 16 'little' $EXPOSED>>
<</if>>
<<if $warpinfo.hypno >= 5>>
<<setScene>>
<<set $scene.spendFatigue = true>>
/% 4th "endless" hypno %/
<<set $npc_psychiatrist.hypnosis = 4>>
<</if>>
<<if $warpinfo.hypno >= 6>>
<<HypnosisSession4Decline $player $scene 'cum'>>
<<HypnosisSession4Decline $player $scene 'penis'>>
<<HypnosisSession4Decline $player $scene 'bdsm'>>
<<HypnosisSession4Decline $player $scene 'bondage'>>
<<HypnosisSession4Decline $player $scene 'foot'>>
<<if $fetish.piss>>
<<HypnosisSession4Decline $player $scene 'piss'>>
<</if>>
<<if $fetish.bestiality_soft>>
/% TODO! <<HypnosisSession4Decline $player $scene 'bestiality'>>%/
<</if>>
<</if>>
<<if $warpinfo.hypno >= 7>>
<<set $scene.spendWillpower = true>>
<<HypnosisSession4Accept $player $scene 'cum'>>
<<HypnosisSession4Accept $player $scene 'penis'>>
<<HypnosisSession4Accept $player $scene 'bdsm'>>
<<HypnosisSession4Accept $player $scene 'bondage'>>
<<HypnosisSession4Accept $player $scene 'foot'>>
<<if $fetish.piss>>
<<HypnosisSession4Accept $player $scene 'piss'>>
<</if>>
<<if $fetish.bestiality_soft>>
/% TODO! <<HypnosisSession4Accept $player $scene 'bestiality'>>%/
<</if>>
<</if>>
<<if $npc_manager.stage>1>>
<<include addHypnosisTask>>
<</if>>[[Manually Configure Content|configureContent]]<br>
[[Activate All Content|activateAllContent]]<br><<activateAllFetishes>><br>
<br>
<<moveTo otherConfigs>><<printAssessmentSummary>><br>
<br>
<<moveTo otherConfigs "Other Configs">><<set $warpinfo.admin = {}>>
--- Admin ---<br>
<br>
<<if $npc_manager.stage > 1>>
Met for drinks? <<checkbox "$warpinfo.admin.drinks" false true checked>>
<</if>>
<<if $npc_manager.stage > 2>>
Attempt eavesdrop on his hiring meeting? <<checkbox "$warpinfo.admin.ageofconfusion_eavesdrop1" false true checked>>
Got help eavesdropping on his hiring meeting? <<checkbox "$warpinfo.admin.ageofconfusion_eavesdrop2" false true checked>>
<</if>><<if $warpinfo.admin.drinks>>
<<if !setup.checkItemOwned("card_technician")>>
<<addItem "card_technician">>
<</if>>
<<set $npc_admin.dates+=1>>
<<set $npc_barkeeper.profile = true>>
/% barkeeper mistakes you for girl %/
<<applyExperience 'humiliation' 3 'little' $SEEN_FRIEND>>
<</if>>
<<if $npc_manager.stage > 2>>
/% age of confusion %/
<<set $npc_admin.flags.sawyouinfemaleclothes = true>>
<<set $npc_admin.flags.reactnamechange = true>>
<<set $npc_admin.flags.ageofconfusion = false>>
/% evesdrop %/
<<if $warpinfo.admin.ageofconfusion_eavesdrop1>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $npc_ai.profile=true>>
<<applyExperience 'bimbofication' 2 'slightly' $INCOGNITO>>
<</if>>
<<if $warpinfo.admin.ageofconfusion_eavesdrop2>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $npc_ai.flags.blackmail = true>>
<<applyExperience 'bimbofication' 2 'little' $INCOGNITO>>
<</if>>
<<applyExperience 'humiliation' 6 'unbelievable' $SEEN_FRIEND>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_12'
12
'event_admin_theme_female_clothes'
false
'theme_admin_transition_header'
>>
<</if>>
<<set $npc_admin.flags.firstsawfemale = "bar">><<set $warpinfo.landlord = {}>>
--- Landlord ---<br>
<br>
Flashed landlord first visit? <<checkbox "$warpinfo.landlord.flash" false true checked>><br>
Landlord saw you female? <<checkbox "$warpinfo.landlord.sawFemale" false true checked>><<if $warpinfo.landlord.flash>>
<<set $player.flags.landlordsawyounaked = true>>
<<setThreshold 'bimbofication' 'wardrobe_malfunction' 'open_door' true>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_5'
5
'event_psychiatrist_session_landlord_2'
false
'theme_psychiatrist_landlord_header'
>>
<</if>>
<<if $warpinfo.landlord.sawFemale>>
<<set $npc_landlord.call_name = "Chica">>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<if $warpinfo.stage > 0>>
<<include "rentEvent">>
<</if>><<set $warpinfo.exgf = {}>>
--- Ex-girlfriend ---<br>
<br>
Flashed ex gf first visit? <<checkbox "$warpinfo.exgf.flash" false true checked>><br>
Wore her clothes first visit? <<checkbox "$warpinfo.exgf.wornclothes" false true checked>><br><<if $warpinfo.exgf.flash>>
<<set $npc_exgirlfriend.flags.nakedwhiledelivery = true>>
<<applyExperience 'humiliation' 8 'slightly' $SEEN_FRIEND>>
<</if>>
<<if $warpinfo.exgf.wornclothes>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<</if>>--- Coworkers ---<br>
<br>
<<npcStageSelection $npc_manager.stage 'npc_sexdoll'>>
<<npcStageSelection $npc_manager.stage 'npc_hucow'>>
<<npcStageSelection $npc_manager.stage 'npc_futa'>>
<<npcStageSelection $npc_manager.stage 'npc_sissy_secretary'>>
<br>
--- Managers ---<br>
<br>
<<if $npc_manager.stage <= 2>>
<<npcStageSelection $npc_manager.stage 'npc_harassment'>>
<<npcStageSelection $npc_manager.stage 'npc_nintendolls'>>
<<else>>
<<npcStageSelection 4 'npc_harassment'>>
<<npcStageSelection 5 'npc_nintendolls'>>
<</if>>
<<npcStageSelection $npc_manager.stage 'npc_retention'>>
<<npcStageSelection $npc_manager.stage 'npc_development'>>
<<npcStageSelection $npc_manager.stage 'npc_discipline'>><<switch $npc_sexdoll.flags.stage>>
<<case 1>>
<<set $randomEvents['canteen'].pushUnique({id: 'coworker_sexdoll', done: false})>>
<<case 2>>
<<set $randomEvents['work_bathroom_female'].pushUnique({id: 'coworker_sexdoll', done: false})>>
<<case 3>>
<<set $randomEvents['work_coffee_shop'].pushUnique({id: 'coworker_sexdoll', done: false})>>
<<case 4>>
<</switch>>
<<if $npc_sexdoll.flags.stage > 0>>
/% no op, first event force %/
<</if>>
<<if $npc_sexdoll.flags.stage > 1>>
<</if>>
<<if $npc_sexdoll.flags.stage > 2>>
<<set $npc_sexdoll.flags.reactnamechange = true>>
<<set $npc_sexdoll.first_name = $npc_sexdoll.sissy_name>>
<<set $npc_sexdoll.other_call = "Ms.">>
<<set $npc_sexdoll.call = "Ms.">>
<</if>>
<<if $npc_sexdoll.flags.stage > 3>>
<</if>>
<<switch $npc_hucow.flags.stage>>
<<case 1>>
<<set $randomEvents['work_bathroom_female'].pushUnique({id: 'coworker_hucow', done: false})>>
<<case 2>>
<<set $randomEvents['work_coffee_shop'].pushUnique({id: 'coworker_hucow', done: false})>>
<<case 3>>
<<set $randomEvents['elevator_home'].pushUnique({id: 'coworker_hucow', done: false})>>
<<case 4>>
<</switch>>
<<if $npc_hucow.flags.stage > 0>>
<<set _x = setup.cancelRandomEvent('canteen', 'coworker_hucow')>>
<</if>>
<<if $npc_hucow.flags.stage > 1>>
<</if>>
<<if $npc_hucow.flags.stage > 2>>
<<set $npc_hucow.flags.reactnamechange = true>>
<</if>>
<<if $npc_hucow.flags.stage > 3>>
<</if>>
<<switch $npc_futa.flags.stage>>
<<case 1>>
<<set $randomEvents['elevator_home'].pushUnique({id: 'coworker_futa', done: false})>>
<<case 2>>
<<set $randomEvents['canteen'].pushUnique({id: 'coworker_futa', done: false})>>
<<case 3>>
<<set $randomEvents['work_bathroom_female'].pushUnique({id: 'coworker_futa'})>>
<</switch>>
<<if $npc_futa.flags.stage > 0>>
<<set _x = setup.cancelRandomEvent('work_coffee_shop', 'coworker_futa')>>
<</if>>
<<if $npc_futa.flags.stage > 1>>
<</if>>
<<if $npc_futa.flags.stage > 2>>
<<set $npc_futa.flags.reactnamechange = true>>
<</if>>
<<if $npc_futa.flags.stage > 3>>
<</if>>
<<switch $npc_sissy_secretary.flags.stage>>
<<case 1>>
<<set $randomEvents['work_coffee_shop'].pushUnique({id: 'coworker_sissy_secretary', done: false})>>
<<case 2>>
<<set $randomEvents['elevator_home'].pushUnique({id: 'coworker_sissy_secretary', done: false})>>
<<case 3>>
<<set $randomEvents['canteen'].pushUnique({id: 'coworker_sissy_secretary'})>>
<</switch>>
<<if $npc_sissy_secretary.flags.stage > 0>>
<<set _x = setup.cancelRandomEvent('work_bathroom_male', 'coworker_sissy_secretary')>>
<</if>>
<<if $npc_sissy_secretary.flags.stage > 1>>
<</if>>
<<if $npc_sissy_secretary.flags.stage > 2>>
<<set $npc_sissy_secretary.flags.reactnamechange = true>>
<<set $npc_sissy_secretary.flags.stage = 3>>
<<set $npc_sissy_secretary.other_call = "Ms.">>
<<set $npc_sissy_secretary.call = "Ms.">>
<</if>>
<<if $npc_sissy_secretary.flags.stage > 3>>
<</if>>
/% hr managers %/
<<if $npc_harassment.flags.stage > 1>>
<</if>>
<<if $npc_harassment.flags.stage > 2>>
<</if>>
<<if $npc_harassment.flags.stage > 3>>
<</if>>
<<if $npc_harassment.flags.stage > 4>>
<</if>>
<<if $npc_nintendolls.flags.stage > 1>>
<</if>>
<<if $npc_nintendolls.flags.stage > 2>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<if $npc_nintendolls.flags.stage > 3>>
<<applyExperience 'humiliation' 12 'slightly' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'little' $SEEN_FRIEND>>
<</if>>
<<if $npc_nintendolls.flags.stage > 4>>
<<applyExperience 'cum' 11 'slightly' $SEEN_STRANGER>>
<<applyExperience 'whoring' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'normal' $SEEN_STRANGER>>
<</if>>
<<if $npc_retention.flags.stage > 1>>
<</if>>
<<if $npc_retention.flags.stage > 2>>
<</if>>
<<if $npc_retention.flags.stage > 3>>
<<set $player.work.work_restraints_available = true>>
<<applyExperience 'bondage' 8 'almost' $SEEN_FRIEND>>
/%
or
<<applyExperience 'bondage' 9 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<set $player.work.work_restrained = true>>
%/
<</if>>
<<if $npc_retention.flags.stage > 4>>
<<if $fetish.pet_play && $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<if $npc_development.flags.stage > 1>>
<</if>>
<<if $npc_development.flags.stage > 2>>
<</if>>
<<if $npc_development.flags.stage > 3>>
<<applyExperience 'oral' $npc_development.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
/%
technically or
<<applyExperience 'anal' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
%/
<</if>>
<<if $npc_development.flags.stage > 4>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<</if>>
<<if $npc_discipline.flags.stage > 1>>
<</if>>
<<if $npc_discipline.flags.stage > 2>>
<</if>>
<<if $npc_discipline.flags.stage > 3>>
<<applyExperience 'bdsm' 14 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 10 'almost' $SEEN_FRIEND>>
/%
<<applyExperience 'anal' 10 'very' $EXPOSED>>
<<applyExperience 'submission' 7 'terrible' $EXPOSED>>
or
<<applyExperience 'humiliation' 15 'unbelievable' $EXPOSED>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
%/
<</if>>
<<if $npc_discipline.flags.stage > 4>>
/%
options
%/
<</if>>
<<if $npc_discipline.flags.stage > 5>>
/%
event_work_hr_discipline_dom
or
event_work_hr_discipline_sub%/
<</if>>--- AI ---<br>
<br>
Tried to snoop? <<checkbox "$warpinfo.stage0.aisnoop" false true checked>><br>
Denied snooping (ignored if snoop is unchecked)? <<checkbox "$warpinfo.stage0.aisnooplie" false true checked>><br>
<<if $npc_manager.stage > 2>>
Completed first mission: <<checkbox "$warpinfo.stage2.firstaimission" false true checked>><br>
<</if>>
<<if $npc_manager.stage > 3>>
/% technically these are done in a specific order %/
Completed connection mission: <<checkbox "$npc_ai.flags.missions.connection" false true checked>><br>
Completed milking mission: <<checkbox "$npc_ai.flags.missions.milking" false true checked>><br>
/% completion style: talk, fight hide%/
Completed robot body mission: <<checkbox "$npc_ai.flags.missions.robot_body" false true checked>><br>
End AI missions: <<checkbox "$npc_ai.flags.end_missions" false true checked>><br>
<</if>>
<<if $npc_manager.stage >=3>> /% TODO; technically post age of confusion %/
<<set $randomEvents['elevator_home'].pushUnique({id: 'ai_mission', done: false})>>
<</if>>
/% TODO: $npc_ai.flags.manager_file_access %/<<if $warpinfo.stage0.aisnoop>>
<<if $warpinfo.stage0.aisnooplie>>
<<set $npc_ai.profile = true>>
<<set $npc_ai.flags.blackmail = true>>
<<set $npc_ai.flags.ignoredFirstDoorAccess = true>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $player.flags.checkedDoor = true>>
<</if>>
<</if>>
<<if $npc_manager.stage > 2>>
<<if $warpinfo.stage2.firstaimission>>
<<set _x = setup.cancelRandomEvent('elevator_home', 'ai_mission')>>
<<set $npc_ai.profile=true>>
/%
optional:
<<applyExperience 'humiliation' 6 'almost' $SEEN_STRANGER>>
<<applyExperience 'anal' 5 'little' $SEEN_STRANGER>>
%/
<<addWorkEvent 'ai_mission'
'{"trigger":"daily","type":"chance","chance":25,"repeat":true,"priority":0}'
'{"szene":"event_ai_mission_root","length":"15"}'
>>
<</if>>
<<if $npc_ai.flags.missions.connection>>
<<addItem 'data_plug'>>
<<switch $npc_ai.flags.jailbreak_style>>
<<case 'sex'>>
<<applyExperience 'oral' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<<case 'fight'>>
<<case 'dunce'>>
<<case 'smart'>>
<</switch>>
/% optional:
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>%/
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 17 'unbelievable' $SEEN_STRANGER>>
<<set _tmp = "Use " + setup.getNpcName('npc_ai', 'first') + " link">>
<<addSearch $computer _tmp 'room_ai_chat'>>
<</if>>
<<if $npc_ai.flags.missions.milking>>
<<set $npc_ai.satisfaction += 5>>
<<switch $scene.style>>
<<case 'talk'>>
<<applyExperience 'smart' 10 'very' $SEEN_STRANGER>>
<<case 'fight'>>
<<applyExperience 'martial_arts' 10 'very' $SEEN_STRANGER>>
<<case 'hide'>>
<<applyExperience 'bimbofication' 17 'terrible' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<if $npc_ai.flags.missions.robot_body>>
<</if>>
<<if $npc_ai.flags.end_missions>>
<</if>>
<</if>>/*#
#desc: initializes the game: very first passage of the game set by tweego!
#status: FINISHED 0.5.0.0
#*/
<<initJquery>>
<<set $debug = false>>
<<set $forceEvents = false>>
<<set $version = "0.7.1.0">>
<<include initGameVariables>>
/* PLAYER */
<<include initPlayerData>>
/* NPC DATA */
<<include initNPC_ExGirlfriend_Data>>
<<include initNPC_Manager_Data>>
<<include initNPC_Admin_Data>>
<<include initNPC_Technician_Data>>
<<include initNPC_Maid_Data>>
<<include initNPC_Psychiatrist_Data>>
<<include initNPC_Landlord_Data>>
<<include initNPC_Boss_Data>>
<<include initNPC_AI_Data>>
<<include initNPC_Barista_Data>>
<<include initNPC_rpg_warlock_Data>>
<<include initNPC_rpg_dude_Data>>
<<include initNPC_other_Data>>
<<include initNPC_coworkers_Data>>
<<include initNPC_hr_managers_Data>>
<<include initNPC_gym_Data>>
<<include otherData>>
<<include initShops>>
<<initSoMuchData $player>>
<<goto 'room_start_game'>>
/%<<goto 'game_startgame'>>%//*#
#desc: init game variables
#status: FINISHED 0.5.0.0
#*/
<<set $now = new Date(Date.parse("2033-06-28T07:05:00+0000"))>>
<<set $lookItem to "">>
<<if !$debug>>
<<set $startgame = false>>
<<script>>
Config.history.maxStates = 30;
<</script>>
<<else>>
<<set $startgame = true>>
<<script>>
Config.history.maxStates = 15;
<</script>>
<</if>>
<<set $errorMessage = "">>
<<set $resting = false>>
<<set $roomchange = false>>
<<set $currentcall = false>>
<<set $tutText = "">>
<<set $options={
tutorial:true,
sound:true,
pixelfont:true,
easyInventory:true,
zoom:{
values:["100%","75%","50%"],
value:"100%",
org_value:"100%",
},
showxp:true,
}>>
<<set $mangedWear = false>>
<<set $ALONE = 0>>
<<set $INCOGNITO = 0.25>>
<<set $SEEN_STRANGER = 0.5>>
<<set $SEEN_FRIEND = 0.75>>
<<set $EXPOSED = 1>>
<<set $fetish = {
"tattoos" : false,
"piss" : false,
"bestiality_soft" : false,
"bestiality_hard" : false,
"rape" : false,
"get_raped" : false,
"cum" : true,
"penis" : true,
"humiliation" : true,
"feminization" : true,
"bladerunner" : false,
"bladerunner2": false,
"bimbofication" : true,
"inflation" : false,
"work_sex" : true,
"work_lewd" : true,
"work_harrassment" : true,
"pet_play" : false,
"bondage" : true,
"daddy" : false,
"milking" : false,
"penis_milking" : false,
"catcall" : false,
"karmic_harass" : false,
"harass" : false,
"slurs" : false,
"sph" : false,
"tentacle" : false,
"grope" : false
}>>
<<include initRandomEvents>>
<<set $sceneVisibility = $ALONE>>/*#
#desc: adding player start items and clothes
#status: FINISHED 0.5.0.0
#*/
<<addItem "pyjama">>
<<wearItem $player $now "pyjama">>
<<addItemWardrobe "boxershorts">>
<<addItemWardrobe "shirt">>
<<addItemWardrobe "socks">>
<<addItemWardrobe "b_trousers">>
<<addItemWardrobe "tie">>
<<addItemWardrobe "tshirt">>
<<addItemWardrobe "jeans">>/*#
#desc: add start events, emails and topics
#status: FINISHED 0.5.0.0
#*/
/%<<if !$npc_landlord.flags.firstrent>>
<<set $npc_landlord.flags.firstrent = true>>%/
<<set _nextDate to setup.setNextDate($now, 3, 7, 0)>>
<<addEvent 'rent_first'
'{"trigger":"always","type":"date"}'
'{"szene":"event_landlord_rent_first"}'
_nextDate>>
/%<</if>>%/
<<addEmail $computer
'Manbert Habakuck'
'<<=$player.first_name>> <<=$player.last_name>>'
true
false
1656304363000
'spam01_h'
'spam01_t'>>
<<addEmail $computer
'Dumi Sissifica'
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
1656373442000
'spam02_h'
'spam02_t'>>
<<set _tmpTime = new Date(Date.parse("2033-06-28T08:03:00+0000"))>>
<<addEvent 'prologue_company_call'
'{"trigger":"always","type":"date","id":"call_company_1"}'
'{"szene":"call_company_1"}'
_tmpTime
>>
<<addNpcTheme 'npc_psychiatrist' 'ex_girlfriend' 'theme_psychiatrist_ex_0'
0
'event_psychiatrist_session_girlfriend_1'
false
'theme_psychiatrist_ex_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_0'
0
'event_psychiatrist_session_manager_1'
false
'theme_psychiatrist_manager_header'
>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_0'
0
'event_admin_theme_recent_breakup'
false
'theme_admin_recent_header'
>>/*#
#desc: initialize game variables
#status: FINISHED 0.4.0.0
#*/
<<set $status_flat = {
wardrobe : "room_bedroom_wardrobe_1",
bedroom : 0,
toilet : 0,
livingroom: 0,
kitchen: 0,
computerroom: 0,
atthedoor: ""
}>>
<<set $phoneList = [
"npc_admin","npc_exgirlfriend"
]>>
<<set $computer = {
sort: "date",
sortdir: -1,
upgrades: {},
list_emails: [],
list_surf: [],
online_uni: {
visited: false,
level: 0,
},
}>>/*#
#desc: start game warning screen
#status: FINISHED 0.4.0.0
#*/
<br>
<br>
<br>
<div align="middle" style="color:red">A FAIR WARNING!</div><br>
<br>
This game is still very early in development! It is still in alpha, which means a lot of the content planned for the game is missing AND some game mechanics might change during the course of the development. This means, that it is possible, that even though I've added mechanics to export and import your savefiles through different version, they could turn out completely incompatible. And the back and forward button tends to be buggy due the way events are handled within the games code, so please save often and early. If you have any questions, feel free to post them at the link below: <br>
<br>
<div align="middle"><a target="_blank" href="https://www.tfgamessite.com/phpbb3/viewtopic.php?f=6&t=10166">TFG Forum Secretary Thread</a></div>
<br>
<div align="middle">Or join us at the Secretary Discord Server at </div>
<br>
<div align="middle"><a target="_blank" href="https://discord.gg/XShMmqr">Secretary Discord Server</a></div>
<br>
<div align="middle">Thank you for your time and patience.</div>
<br>
<div align="middle">[<<link "Start Game">><<goto choose_name>><</link>>]</div>/*#
#desc: choose PC/NPC names at start of game
#status: FINISHED 0.4.0.0
#*/
<<set $startgame = true>>
<<set $start_version = setup.getVersion()>>
Player Character (Male)<br>
<<textbox "$player.first_name" "John" autofocus>>
<<textbox "$player.last_name" "Doe">><br>
<br>
Manager Name (Female)<br>
<<textbox "$npc_manager.first_name" "Sandra">>
<<textbox "$npc_manager.last_name" "Antlers">><br>
<br>
Old Friend Name (Male)<br>
<<textbox "$npc_admin.first_name" "Bob">>
<<textbox "$npc_admin.last_name" "Sanders">><br>
<br>
Psychiatrist Name (Female)<br>
<<textbox "$npc_psychiatrist.first_name" "Sabrina">>
<<textbox "$npc_psychiatrist.last_name" "Trapper">><br>
<br>
Ex Girlfriend (Female)<br>
<<textbox "$npc_exgirlfriend.first_name" "Serena">>
<<textbox "$npc_exgirlfriend.last_name" "Grey">><br>
<br>
[<<link "Start Game">><<goto firstScene>><</link>>]
<br><br>
<<include quicklink_root>>/*#
#desc: start game
#status: FINISHED 0.4.0.0
#*/
<div align="middle">
<img src="./images/others/startscreen.png" height="808" width="570"><br>
[<<link "Start Game">>
<<set $player.plocation = "room_bedroom">>
<<goto game_startgame>>
<</link>>]<br>
<br>
[<<link "Credits">>
<<goto game_credits_start>>
<</link>>]
</div>/*#
#desc: start game
#status: FINISHED 0.4.0.0
#*/
<<include addStartItems>>
<<include addStartEvents>>
/* OTHER DATA */
<<storeVisual $player $npc_exgirlfriend>>
<<storeVisual $player $npc_admin>>
<<goto 'a_fair_warning'>>/*#
#desc: initializes shops with initial inventory
#status: RELEASED 0.6.0.0
#*/
<<set $shopStatus = {
"mall_apparel_store" : {
"unlocked_inventory" : ["initial"]
},
"mall_lingerie_shop" : {
"unlocked_inventory" : ["initial"]
},
"mall_lingerie_shop_fetish" : {
"unlocked_inventory" : ["initial"]
},
"mall_shoe_store" : {
"unlocked_inventory" : ["initial"]
},
"mall_sexstore" : {
"unlocked_inventory" : ["initial"]
},
"mall_wholesale_store" : {
"unlocked_inventory" : ["initial"]
},
"gym" : {
"unlocked_inventory" : ["initial"]
}
}>>/*#
#desc: gloryhole first time, a wild penis appears
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _tmpVal = setup.checkOutsideDecency($player)>>
<<if $roomchange==true>>
<<set $sceneVisibility = $INCOGNITO>>
<<setThreshold 'penis' 'gloryhole_penis' 'big_member' true>>
<<set $gloryhole_1 = {}>>
<<set $gloryhole_1.changedClothes = false>>
<<set $gloryhole_1.topTagStyle = "">>
<<set $gloryhole_1.topTagType = "">>
<<set $gloryhole_1.finished = false>>
<<set $gloryhole_1.orgHorney = setup.canPlayerSex($player,'handjob')>>
<<useClothSetPush 'gloryhole_1'>>
<<else>>
<<set $gloryhole_1.orgHorney = setup.canPlayerSex($player,'handjob')>>
<<if !setup.compareCurrentClothesWithClothSet($player,'gloryhole_1')>>
<<set $gloryhole_1.changedClothes = true>>
<<set $gloryhole_1.topTagStyle = setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','male'])>>
<<set $gloryhole_1.topTagType = setup.analyzeWornTags(['underwear','overgarment'])>>
<<else>>
<<set $gloryhole_1.changedClothes = false>>
<<set $gloryhole_1.topTagStyle = "">>
<<set $gloryhole_1.topTagType = "">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
<<if !$gloryhole_1.changedClothes>>
As usual you feel uncomfortable doing your business at the urinal so you decide to use the 2nd to last stall from the end of the room. You're already sitting on the toilet emptying your bladder as you realise what is wrong with this scene. Your <<getWordMyPenis $player>> is hanging in the toilet, so where did the quite enormous <<getWordPenis $player>> you're looking at come from. Since you've tanked quite a lot it takes you a while to realise that there's a gloryhole with a pink fleshy meatstick protruding through.<br>
<br>
<<printThought $player "Hehe... I drank way too much today. I must be seeing things. Time to get home and catch some zzz's">><br>
<br>
But no matter how long you stare at it, it does not go away. Simply stays there protruding from the wall. For some reason you really want to touch it. Just to dispel the hallucination you poke it with your finger. It isn't a hallucination. It's warm and twitches when you touch it.<br>
<br>
<<printThought $player "Fuck... that's... that's real.">><br>
<br>
You can hear a deep, manly voice from the other side of the wall. "@@.npc_gloryhole;So, Sissy. You gonna start anytime soon? A friend of mine recommended this stall to me. If you're as good as they say you are, I'll pay you double your normal rate!@@"<br>
<br>
<<if $npc_manager.flags.bad_girl.got_sissy_underwear>>
<<printThought $player "Sissy? How did he know... No, wait. Maybe he's expecting someone else?">><br>
<<else>>
<<printThought $player "Sissy? Did he expect someone else?">><br>
<</if>>
<br>
Clearly this must be a case of mistaken Identity. But whoever is waiting on the other side is pretty eager in anticipation of what's coming next. Normally you'd run for the hills without even a second thought. But these last few days have been everything but normal. Besides, you could really use the money...
<<if $npc_psychiatrist.hypnosis>0>>
And there's something else in your mind... you can't really put your finger on it. It's some kind of strange curiosity, dwelling deep inside you.
<</if>>
<br><br>
<<else>>
You feel the sudden urge to change your clothes.
<<switch $gloryhole_1.topTagStyle>>
<<case 'sissy' 'fetish' 'bold' 'cute' 'female'>>
Your heart starts pounding, as you kneel in front of this quite enormous <<getWordPenis $player>>, wearing your <<=$gloryhole_1.topTagStyle>>
<<if $gloryhole_1.topTagType == 'underwear'>>
lingerie.
<<else>>
outfit.
<</if>>
<<case 'modest'>>
You kneel in front of this quite enormous <<getWordPenis $player>>, wearing your modest looking female underwear. Not so modest anymore, when you think about what you're going to do next.
<<case 'male'>>
Your heart starts pounding as you kneel in front of this quite enormous <<getWordPenis $player>>.
<</switch>><br>
<br>
"@@.npc_gloryhole;Hey, Sissy. I can hear you moving in there. Changing into something more comfortable? To bad I can't see ya! I bet you look real cute and stuff. So... you gonna start anytime soon?@@"<br>
<br>
<<if $gloryhole_1.topTagType == 'underwear'>>
<<switch $gloryhole_1.topTagStyle>>
<<case 'sissy' 'fetish' 'bold' 'cute' 'female' 'modest'>>
<<printThought $player "I really could use that money. But why did I strip down... especially into these clothes?">>
<<default>>
<<printThought $player "I really could use that money. But why did I strip down? I don't want my clothes to get dirty. Yeah, that's it!">>
<</switch>>
<<else>>
<<switch $gloryhole_1.topTagStyle>>
<<case 'sissy' 'fetish' 'bold' 'cute' 'female' 'modest'>>
<<printThought $player "I really could use that money. But why did I change into these clothes?">>
<<default>>
<<printThought $player "I really could use that money.">>
<</switch>>
<</if>>
<br><br>
<</if>>
<<if $player.money.total<0>>
[<<moveTo "event_gloryhole_1_2" "Give in and do a handjob... but just for the money!" 360 '<<set $gloryhole_1.reason = "money">>'>>]<br>
<<else>>
[@@.link_locked;You're not desperate enough for money to prostitution yourself@@]<br>
<</if>>
<<if $npc_psychiatrist.hypnosis>0>>
[<<moveTo "event_gloryhole_1_2" "Give in and do a handjob... because you're curious!" 360 '<<set $gloryhole_1.reason = "curiosity">>'>>]<br>
<</if>>
<<if $gloryhole_1.orgHorney.ret>>
[<<moveTo "event_gloryhole_1_2" "Give in and do a handjob... because you're horny as hell!" 360 '<<set $gloryhole_1.reason = "horny">>'>>]<br>
<</if>>
<<if _tmpVal>>
[<<moveTo "event_gloryhole_1_1_leave" "Leave in a hurry!" 180>>]
<<else>>
[@@.link_locked;You're not leaving in those clothes!@@]
<</if>>
</div>/*#
#desc: have second thoughts about fleeing first time in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _tmpVal = setup.checkOutsideDecency($player)>>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
You are just about to abandon the stall, grab your stuff and run for the hills when something inside you draws you short, makes you hesitate. Just a moment. Less then a second. Something inside you wants to touch this dick. Needs to touch this dick. Give it exactly what it wants. Touch it. Squeeze it. Rub it until it comes. Give it the attention it deserves.<br>
<br>
<<printThought $player "I just like, want to touch it!" 40>><br>
<<printThought $player "Were those my thoughts? What is happening to me?">><br>
<br>
[<<moveTo "event_gloryhole_1_1" "Give it another thought..." 360>>]<br>
<<if _tmpVal>>
[<<moveTo "event_gloryhole_1_1_flee" "Run like hell!" 180>>]
<</if>>
</div>/*#
#desc: flee from first time at gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
In a panic you pull on your clothes and rush out of the stall without even remembering to flush. Some deranged part of you glances over as you walk past the partially-ajar stall door to catch a glimpse of the potential "client" pressed against the wall opposite where you were moments ago sitting.<br>
<br>
"@@.npc_gloryhole;Hey!, come back!@@" The man shouts but you flee the bathroom as swiftly as you can.<br>
<br>
[<<moveTo "room_usual_place_outside" "Rushing through the bar you don't stop until you're back outside in the cool night air" 360 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: first time gloryhole, jerk him off, he asks you to lick it clean
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<set _c1 = setup.checkTopBodySlot('penis','bottom')>>
<<set _c2 = setup.checkTopBodySlot('tits','top')>>
<<if $roomchange==true>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $gloryhole_1.cum = false>>
<<set $player.timebased.horny = setup.changeHorny($player,20)>>
<<if setup.canPlayerCum($player,setup.getTotalValue('penis'))>>
<<set $gloryhole_1.cum = true>>
<</if>>
<<set $player.flags.gloryhole.handjob += 1>>
<<set $gloryhole_1.cage = setup.getItemTypeName("cage")>>
<<set $gloryhole_1.plug = setup.getItemTypeName("plug")>>
<<if $player.timebased.dirty<50>>
<<set $player.timebased.dirty = 50>>
<</if>>
<<if _c1 != 'none'>>
<<if $gloryhole_1.cum>>
<<changeItemStatus _c1 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<<if _c1 != 'none'>>
<<changeItemStatus _c2 'cumsoaked' '["set",100]'>>
<</if>>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
<<setThreshold 'penis' 'gloryhole_penis' 'first_contact' true>>
<<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining' true>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<<case 'curiosity'>>
<<setThreshold 'penis' 'gloryhole_penis' 'first_contact' true>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<<case 'horny'>>
<<setThreshold 'penis' 'gloryhole_penis' 'first_contact' true>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<</switch>>
<<set $handJobMoney = 30>>
<<set $player.money.total+=$handJobMoney>>
<<set $player.flags.gloryhole.totalmoney += $handJobMoney>>
<<set $npc_barkeeper.handjobs+=1>>
<<if $player.handjobvirginity == "">>
<<set $player.handjobvirginity = 'npc_gloryhole'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_10'
0
'event_psychiatrist_session_prostitution_1'
true
'theme_psychiatrist_prostitution_header'
>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_handjob_size.mp4">>
<div id="invframe" class="scrolltext">
And here you finally are. If someone had told you a few weeks ago you would end up here, on your knees in front of a throbbing <<getWordPenis $player>>, you'd call them nuts.<br>
<br>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
<<printThought $player "Calm down, damn it. I'm only doing this for the money!">><br>
<br>
At least that is what you try to tell yourself over and over again. That doesn't change the fact that you're kneeling in front of this enormous <<getWordPenis $player>>, dressed like
<<case 'curiosity' 'horny'>>
<<printThought $player "Oh god. What am I doing? This can't be real!">><br>
<br>
This thought circles your mind over and over again, while you remain kneeling in front of this enormous <<getWordPenis $player>>, dressed like
<</switch>>
<<switch $gloryhole_1.topTagStyle>>
<<case 'sissy' 'fetish'>>
<<if $gloryhole_1.topTagType == 'underwear'>>
some <<=$gloryhole_1.topTagStyle>> whore ready to get on with it!
<<else>>
a <<=$gloryhole_1.topTagStyle>> slave ready to serve its master!
<</if>>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
And while the money sure is a nice bonus, that's not the reason why you do this at all, is it, Sissy? It's because deep inside you knew all along that this is where you belong!
<<case 'curiosity'>>
And like the good little sissy you are, you know deep inside that this is exactly where you belong! On your knees, in front of this big <<getWordPenis $player>>.
<<case 'horny'>>
And like the horny little bitch you are, you know deep inside that this is exactly where you have always belonged! On your knees, in front of this big <<getWordPenis $player>>.
<</switch>>
<<case 'bold'>>
some common whore, ready to serve its next customer.
<<switch $gloryhole_1.reason>>
<<case 'money'>>
Which is exactly what you are right now.
<<case 'curiosity'>>
Except you're not doing this for the money. You simply want to know...
<<case 'horny'>>
But you're simply a puppet of your desires, horny beyond measure, so you don't even care.
<</switch>>
<<case 'cute'>>
some cute schoolgirl trying to earn a few bucks for a more comfortable life.
<<switch $gloryhole_1.reason>>
<<case 'money'>>
Or, more accurately, a prostitute dressing as schoolgirl. Though outcome is pretty much the same.
<<case 'curiosity'>>
Except you're not doing this for the money. You simply want to know...
<<case 'horny'>>
But you're simply a puppet of your desires, horny beyond measure, so you don't even care.
<</switch>>
<<case 'female' 'modest'>>
some bored housewife, trying to make her life more exciting!
<<switch $gloryhole_1.reason>>
<<case 'money'>>
Or a Prostitute dressing as Schoolgirl. The outcome is pretty much the same.
<<case 'curiosity'>>
Except you're not doing this for the money, do you? Oh no, you simply want some cock in your life, do you?
<<case 'horny'>>
But you're simply a puppet of your desires, horny beyond measure, so you don't even care.
<</switch>>
<<default>>
some boy toy whore, ready to serve its next customer.
<<switch $gloryhole_1.reason>>
<<case 'money'>>
Which is exactly what you are right now.
<<case 'curiosity'>>
Except you're not doing this for the money. You simply want to know...
<<case 'horny'>>
But you're simply a puppet of your desires, horny beyond measure, so you don't even care.
<</switch>>
<</switch>>
Your heart is racing as you lean closer to this big <<getWordPenis $player>>. The head is rosy and pulses with energy, the dickhole already oozing with precum. You can see the blood pumping through the veins making its shaft twitch and thump. It has a strong, musky smell emanating from it, potent but not unpleasant. It's driving you insane. You should be repulsed, not aroused,
<<if $gloryhole_1.cage!="">>
but your <<getWordMyPenis $player>> is pressing against the <<=$gloryhole_1.cage>> without mercy.
<<else>>
<<if setup.checkItemTypeWorn('panties')>>
but your <<getWordMyPenis $player>> is getting hard rubbing against your <<=setup.getItemTypeName('panties')>>, while you gently stroke it through the fabric.
<<else>>
but your <<getWordMyPenis $player>> is getting hard while you gently stroke it.
<</if>>
<</if>>
<br>
<br>
<<printThought $player "This is so wrong, but I can't help myself!">><br>
<br>
You take the <<getWordPenis $player>> in your hand. It is much warmer than expected, and you feel it pulsing and twitching in your hand. You hear an audible moan from the other side of the stall and take it as encouragement as you start moving your hand up and down the long, meaty shaft. You realise that without any help from lotion working on an extra large tool like this will take way too long. Thinking quick you spit into one hand and rub it all over his dickhead to mix with the precum for added viscosity. As you work your second hand starts on his balls, massaging them wholeheartedly. All your hard work massaging feet for years pays off as you feel the rhythm of the throbbing and pulsating getting stronger and quicker in your hands, the moans from the other side of the wall progressively more ecstatic. As you indulge this <<getWordPenis $player>>, you're getting hornier and hornier as well.
<<if $gloryhole_1.cage!="">>
But your <<getWordMyPenis $player>> is being constrained by your <<=$gloryhole_1.cage>>, making you unable to cum in a normal fashion. But you want to cum, you need to cum, together with the manly <<getWordPenis $player>> in your hand.
<<if $gloryhole_1.plug!="">>
You pull the <<=$gloryhole_1.plug>> out of your wet sissy pussy and start fingering your anus vigorously, until you've brought yourself to the brink of sweet analgasm!
<<else>>
Lubricating your other hand with the precum leaking through your <<=$gloryhole_1.cage>>, you start fingering your sissy pussy vigorously, until you're yourself on the brink of sweet analgasm!
<</if>>
<</if>>
Suddenly the hard, pulsing <<getWordPenis $player>> explodes in your gasp, spraying <<getWordCum $player>> all over your hand
<<if _c2 == 'none'>>
and chest inking your skin with the creamy off white <<getWordCum $player>>,
<<else>>
and chest, onto your <<=setup.getItemName(_c2)>>, soaking it with <<getWordCum $player>>,
<</if>>
<<if $gloryhole_1.cage!="">>
<<if $gloryhole_1.cum>>
<<if _c1 == 'none'>>
<<getWordCum $player>> leaks out of your <<getWordMyPenis $player>> onto the floor, but without the sweet release of an real orgasm, you still feel horny as hell.
<<else>>
<<getWordCum $player>> leaks out of your <<getWordMyPenis $player>> onto the floor, soaking into your <<=setup.getItemName(_c1)>>, but without the sweet release of an real orgasm, you still feel horny as hell.
<</if>>
<<if $scene.gloryholejob.plug!="">>
Groaning with need you shove the <<=$scene.gloryholejob.plug>> back up your wet sissy pussy.
<</if>>
<<else>>
<<if _c1 == 'none'>>
Besides a few drops of <<getWordCum $player>> dripping onto the floor you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it.
<<else>>
Besides a few drops of <<getWordCum $player>> dripping into your <<=setup.getItemName(_c1)>> you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it.
<</if>>
<</if>>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
And if money was really the sole reason you did this, why do you feel so disappointed? Maybe you wanted more?
<<case 'curiosity'>>
And since you're unable to please yourself, it looks like its your calling now to please others, like a good little sissy. But wasn't that the reason why you were curious in the first place?
<<case 'horny'>>
And being unable to find sweet, sweet release is driving you nuts. It's driving you over the edge. You have to advance your efforts to bring pleasure to this <<getWordPenis $player>> to find pleasure yourself!
<</switch>>
<<else>>
<<if $gloryhole_1.cum>>
<<if _c1 == 'none'>>
you shoot a load of <<getWordCum $player>> on the floor.
<<else>>
you spray a load of <<getWordCum $player>> into your <<=setup.getItemName(_c1)>>.
<</if>>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
If money was really the sole reason you did this, why did you cum as hard as you ever have before?<br>
<br>
<<printThought $player "But... but I only did it for the money... didn't I?">>
<<case 'curiosity'>>
Pleasing others made you so horny you came yourself, sissy!<br>
<br>
<<printThought $player "Oh God... what have I done? But I'm so horny! Why does this make me so horny?">>
<<case 'horny'>>
Pleasing others made you so horny you came yourself<<if setup.getItemFromType("cage") != "">>, despite the chastity device locked around your <<getWordMyPenis $player>><</if>>!<br>
<br>
<<printThought $player "Oh I came by giving pleasure to others. Maybe that's the way?">>
<</switch>>
<<else>>
while you're unable to cum yourself.
<<switch $gloryhole_1.reason>>
<<case 'money'>>
And if money was really the sole reason you did this, why do you feel so disappointed? Maybe you wanted more?
<<case 'curiosity'>>
And since you're unable to please yourself, it looks like its your calling now to please others, like a good little sissy. But wasn't that the reason why you were curious in the first place?
<<case 'horny'>>
Pleasing others made you so much more horny, but still, you're unable to find sweet release yourself!<br>
<br>
<<printThought $player "Maybe I have to increase my efforts? Yeah, that has to be it!">>
<</switch>>
<</if>>
<</if>>
<br><br>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
<<printThought $player "No... my lack of money made me do it... right?">>
<<case 'curiosity'>>
<<printThought $player "What? No, this is wrong. I'm not into guys! I'm into girls. Damn it!">>
<<case 'horny'>>
<<printThought $player "What? No, this is wrong. I cannot let my urges control me like this!">>
<</switch>>
<br><br>
"@@.npc_gloryhole;Wow... Sissy. You're awesome. Legends of your handiwork were not exaggerated. You're really good with your hands. Makes me wonder how good your mouth would be. Anyway, here, take this. You've earned it.@@"<br>
<br>
He hands you <<=$handJobMoney>> Credits through the gloryhole.
<<switch $gloryhole_1.reason>>
<<case 'money'>>
30. Credits. You just sold the remains of your dignity for 30 Credits. Way to go.<br>
<br>
<<printThought $player "What... I just prostituted myself for a mere 30 Credits?">>
<<case 'curiosity' 'horny'>>
You hesitate. Getting paid for sexual acts is not forbidden per se, but you feel kind of odd for taking it.
<<if $player.money.total <= 0>>
But then again, your financial situation ain't that great.
<</if>>
After a short while you decide to take it.
<</switch>>
<br><br>
"@@.npc_gloryhole;So, Sissy. You wanna earn a few extra creds? All you have to do is to lick up that hot <<getWordCum $player>> all over your hand and swallow it while showing me your mouth through the hole. Go ahead, you know you want to!@@"<br>
<br>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
[<<moveTo "event_gloryhole_1_3" "Reluctantly lick the <<getWordCum $player>> off your hand while thinking about the money..." 360>>]<br>
<<case 'curiosity'>>
[<<moveTo "event_gloryhole_1_3" "Lick the <<getWordCum $player>> off your hand while accepting the truth..." 360>>]<br>
<<case 'horny'>>
[<<moveTo "event_gloryhole_1_3" "Eagerly lick the <<getWordCum $player>> off your hand because you're still horny!" 360>>]<br>
<</switch>>
[<<moveTo "event_gloryhole_1_3_stop" "Stop this right now!" 30>>]
</div>/*#
#desc: decline to lick cock clean first time at gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<</if>>
<<set _tmpVal = setup.checkOutsideDecency($player)>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
<<if !$gloryhole_1.finished>>
You decide to end this charade and leave as swiftly as possible.<br>
<br>
<</if>>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
<<printThought $player "Oh God. I sold myself to the highest bidder like a prostitute. No one can ever know about this! I should have never come here. I should have never stayed here!">>
<<case 'curiosity'>>
<<printThought $player "Oh God. I masturbated that guy like a Sissy in heat. No one can ever know about this! I should have never come here. I should have never stayed here!">>
<<case 'horny'>>
<<printThought $player "Oh God. I masturbated that guy like a bitch in heat. No one can ever know about this! I should have never come here. I should have never stayed here!">>
<</switch>>
<br><br>
You clean yourself as best as possible, but someone might notice the signs of what you've done upon closer inspection. You better hurry home fast.
<<if _tmpVal>>
<br><br>
[<<moveTo "room_usual_place_outside" "Leave in a hurry!" 180>>]
<<else>>
But you're not feeling comfortable to traverse the streets in this outfit. You really should change your clothes.
<</if>>
</div>/*#
#desc: lick cock clean first time gloryhole, he asks you to drink his piss
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<if $roomchange==true>>
<<set $sceneVisibility = $INCOGNITO>>
<<setThreshold 'cum' 'gloryhole_cum' 'cum_curious' true>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<<applyExperience 'submission' 11 'almost' $INCOGNITO>>
<<if $player.swallowedothercum == false>>
<<set $player.swallowedothercum = true>>
<<set $player.swallowedothercum_first = 'npc_gloryhole'>>
<</if>>
<<if $gloryhole_1.reason == 'money'>>
<<applyExperience 'whoring' 3 'normal' $INCOGNITO>>
<<set $player.timebased.horny = setup.changeHorny($player,5)>>
<<else>>
<<set $player.timebased.horny = setup.changeHorny($player,25)>>
<</if>>
<<set $player.money.total+=10>>
<<set $player.flags.gloryhole.totalmoney += 10>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/swallow_cum_1.mp4">>
<div id="invframe" class="scrolltext">
You shiver as you slowly move your hand towards your mouth, positioning your mouth close to the gloryhole so it is visible from the other stall.<br>
<br>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
<<printThought $player "I might as well do this, if it means I get some more... 30 ain't that much after all...">>
<<case 'curiosity'>>
<<printThought $player "I came this far, I might as well continue...">>
<<case 'horny'>>
<<printThought $player "I came this far, but I'm not done yet!">>
<</switch>>
<br><br>
You dip the tip of your tongue into the stranger's cum. Suddenly it hits you like a hammer. You just licked someones else's baby batter, straight from their meatstick.
<<if $player.swalloeddowncum == false && $player.swallowedothercum == true>>
Even before you tasted your own cum. Which wasn't your plan anyway. Which both weren't your plans!
<</if>>
<<if $fetish.piss >>
It tastes bitter and smells a little bit like urine. Maybe the stranger pissed right before you went to work on his shaft of manliness. Yuck. But still you can't stop licking your hand until it's all inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine. Only once the flavour has filled your throat do you swallow it.<br>
<br>
<<else>>
It tastes bitter and thin, like he masturbated more then once today. Yuck. But still you can't stop licking your hand until it's all inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine. Only once the flavour has filled your throat do you swallow it.<br>
<br>
<</if>>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
<<printThought $player "Why... why am I enjoying this so much?">>
<<case 'curiosity'>>
<<printThought $player "I enjoyed that way too much!">>
<<case 'horny'>>
<<printThought $player "This... this is making me way horny again!">>
<</switch>>
<br><br>
"@@.npc_gloryhole;Nice. You surely are a whore through and through Sissy. Very good. Here you go, your reward.@@", the stranger tells you while handing you another 10 credits through the glory hole. "@@.npc_gloryhole;Hmmm... Tell you what. I'll double that amount if you do me one last favour.@@"<br>
<br>
You explain to the stranger that you don't do blowjobs.<br>
<br>
<<printThought $player "I am not going to put your cock into my mouth, no matter what. I still have a little shred of dignity left inside of me!">><br>
<br>
"@@.npc_gloryhole;Don't worry, I simply need you to put your open mouth next to the gloryhole and don't move no matter what, do you understand? You're a good little sissy, eager to follow my every command, aren't you?@@"<br>
<br>
<<if $fetish.piss >>
<<if $gloryhole_1.reason=='money'>>
[<<moveTo "event_gloryhole_1_4" "Nod and move your head into position thinking of the money..." 360>>]<br>
<<else>>
<<if ($npc_psychiatrist.hypnosis>0) || (setup.getTotalValue('submission')>3)>>
[<<moveTo "event_gloryhole_1_4" "Nod and move your head into position because you were told to..." 360>>]<br>
<<elseif setup.getWillpower($player)>0>>
[<<moveTo "event_gloryhole_1_4" "Decide for yourself that this is what you want and move your head into position." 360>>]<br>
<</if>>
<</if>>
[<<moveTo "event_gloryhole_1_3_stop" "Really, this time stop it!" 30>>]
<<else>>
You have a bad feeling about this and tell your patron that you decline his offer.<br>
<br>
"@@.npc_gloryhole;Screw you, you deserve to be pissed on Sissy, or whatever your name is. I know very well that you're not Sissy. It's not a very nice thing to steal someone's workplace, you know? So if you don't leave that stall soon I am going to piss on you whether you like it or not. And I think we both know what's the case here you whore!@@"<br>
<br>
You suddenly hear an angry voice from a few stalls away: "@@.npc_prostitute;Screw you Robert, you know full well that my stall is over here, or are you too drunk to count again!@@" followed by laughter echoing through the restroom.<br>
<br>
"@@.npc_gloryhole;What? Oh shit. Fuck. I am so sorry. Wow, look at the time. Whelp,@@" you hear a zipper being closed from the other side, "@@.npc_gloryhole;I'll be gone then@@", is the last thing you hear before someone hastily leaves the stall next to yours.<br>
<br>
[<<moveTo "event_gloryhole_1_3_stop" "Clean yourself up as best you can given the circumstances." 60>>]
<</if>>
</div>/*#
#desc: drink piss first time gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<if $roomchange==true>>
<<set $sceneVisibility = $INCOGNITO>>
<<if $player.drankotherpee == false>>
<<applyExperience 'humiliation' 14 'normal' $INCOGNITO>>
<<applyExperience 'submission' 11 'almost' $INCOGNITO>>
<<set $player.drankotherpee = true>>
<<set $player.drankotherpee_first = "npc_gloryhole">>
<<else>>
<<applyExperience 'humiliation' 14 'very' $INCOGNITO>>
<<applyExperience 'submission' 11 'very' $INCOGNITO>>
<</if>>
<<setThreshold 'piss' 'gloryhole_piss' 'first_time' true>>
<<if $gloryhole_1.reason == 'money'>>
<<applyExperience 'whoring' 3 'normal' $INCOGNITO>>
<<set $player.timebased.horny = setup.changeHorny($player,5)>>
<<else>>
<<set $player.timebased.horny = setup.changeHorny($player,25)>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_piss_1.mp4">>
<div id="invframe" class="scrolltext">
"@@.npc_gloryhole;Very good. I've been waiting the whole evening to do this. So don't waste a single drop@@"<br>
<br>
<<printThought $player "Wait a second... he is not going to... is he?">><br>
<br>
Before you can finish that train of thought a torrent of hot, golden <<getWordPiss $player>> hits your face, pouring down into your open mouth. You can feel the hot liquid all over your face, its rather nasty fragrance findings its way into your nose, its bitter taste on your tongue, removing all the lingering taste of cum remaining from your last perversion. And you just kneel there. Unable to move even a single inch, as if rooted to the spot. The sheer shock of being used like a dirty urinal in a public toilet is too much for your mind and you stay in place like a fawn staring right into two oncoming headlights.<br>
<br>
<<printThought $player "Oh god! No! What have I done?">><br>
<br>
"@@.npc_gloryhole;Come on sissy. My friend told me you like this. But to me it looks like maybe that was an exaggeration? Tell you what, Sissy. If you swallow it like the good little toilet slave you are... Swallow it like the living urinal you're supposed to be and show me your proud empty mouth like the slut you are, I'll triple that amount! So, what do you say? Ooh, I feel like there's still a lot inside me. Be ready!@@"<br>
<br>
<<switch $gloryhole_1.reason>>
<<case 'money'>>
[<<moveTo "event_gloryhole_1_5_swallow" "I have to swallow it. Even if that makes me a toilet slave!" 360>>]<br>
[<<moveTo "event_gloryhole_1_5_spit" "No money is worth this! I need to spit it out!" 360>>]<br>
<<case 'curiosity'>>
[<<moveTo "event_gloryhole_1_5_swallow" "I have to swallow it. Even if that makes me a sissy toilet!" 360>>]<br>
[<<moveTo "event_gloryhole_1_5_spit" "No, no sexual curiosity is worth this! I should spit it out!" 360>>]<br>
<<case 'horny'>>
[<<moveTo "event_gloryhole_1_5_swallow" "God, I'm so horny right now. I'll do everything he wants!" 360>>]<br>
[<<moveTo "event_gloryhole_1_5_spit" "No! I have to calm down. I don't want this. I should spit it out!" 360>>]<br>
<</switch>>
</div>/*#
#desc: spit out piss first time at gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<if $roomchange==true>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $gloryhole_1.pissChest = setup.checkTopBodySlot('tits','top')>>
<<set $gloryhole_1.pissButtTop = setup.checkTopBodySlot('bootie','top')>>
<<set $gloryhole_1.pissButtBottom = setup.checkTopBodySlot('bootie','bottom')>>
<<set $gloryhole_1.finished = true>>
<<if $gloryhole_1.pissChest !='none'>>
<<changeItemStatus $gloryhole_1.pissChest 'piss' '["set",50]'>>
<</if>>
<<if $gloryhole_1.reason == 'money'>>
<<if setup.getTotalValue('whoring')>0>>
<<applyExperience 'whoring' 3 'normal' $INCOGNITO>>
<<else>>
<<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining' true>>
<</if>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<applyExperience 'piss' 5 'normal' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 14 'very' $INCOGNITO>>
<<applyExperience 'piss' 7 'normal' $INCOGNITO>>
<</if>>
<<changeStatAllWorn 'piss' 100>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+50)>>
<<set $player.money.total+=40>>
<<set $player.flags.gloryhole.totalmoney += 40>>
<<set $player.flags.gloryhole.pissjob += 1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_piss_1.mp4">>
<div id="invframe" class="scrolltext">
You spit out the piss then close your mouth so no more can flow inside. Unfortunately you're still left with the bitter, nasty taste on your tongue.
<br>
<<printThought $player "No way! I am not going to swallow this!">><br>
<br>
"@@.npc_gloryhole;Oh well, I can still have fun like this, you know.@@" You hear from the other side as he starts to swing his <<getWordPenis $player>> around, spraying piss all over you. He must have drunk a lot because he easily sprays over you until there's nothing left that has not been soaked in <<getWordPiss $player>>.<br>
<br>
<<printThought $player "Fuck, I will smell like a dirty urinal while walking home. I really hope nobody sees me like this!">><br>
<br>
"@@.npc_gloryhole;Now turn around and put that sexy little butt of yours in the air so I can mark you like the dirty bitch you are@@"<br>
<br>
You hesitate for a moment.
<<if setup.getTotalValue('submission')>5>>
But with all your submissive behaviour lately you find his dominant way with you rather exciting, and decide to continue to follow his instructions.
<<else>>
But you have come this far
<<switch $gloryhole_1.reason>>
<<case 'money'>>
in pursuit of some desperate needed money, and decide to continue to following his instructions.
<<case 'curiosity'>>
in pursuit of your sexual curiosity, and decide to continue to following his instructions.
<<case 'horny'>>
in attempting to fulfill your sexual curiosity <<glitchText "need">>, and decide to continue following his instructions.
<</switch>>
<</if>>
You turn around and bend over, moving your head very close to the floor, which is already wet from all that urine, moving your butt in the air. After only a few seconds you can feel the hot <<getWordPiss $player>>
<<if $gloryhole_1.pissButtTop == 'none'>>
wetting your buttcheeks.
<<else>>
<<if $gloryhole_1.pissButtTop == $gloryhole_1.pissButtBottom>>
soaking through your <<=setup.getItemName($gloryhole_1.pissButtTop)>>.
<<else>>
soaking through your <<=setup.getItemName($gloryhole_1.pissButtTop)>> until it finally reaches your <<=setup.getItemName($gloryhole_1.pissButtBottom)>>.
<</if>>
<</if>>
You lose track of time during the whole ordeal, forgetting the reason why you do it in the first place after a while. All there is for you is your place on the floor, accepting urine like a nasty toilet. Maybe that's just your place in life now.<br>
<br>
<<printThought $player "Wh... What?">><br>
<br>
"@@.npc_gloryhole;I said maybe that's your place in life now Sissy. Or whatever your name is. I know very well that you're not Sissy. It's not a very nice thing to steal someone's workplace, you know? But heavens, you took that piss like it was the best thing in life. You should have swallowed though, the cleaner is going to get an heart attack. Well, but a deal is a deal, here you go.@@", he says, passing you 40 more credits.<br>
<br>
You suddenly hear an angry voice from a few stalls away: "@@.npc_prostitute;Screw you Robert, you know full well that my stall is over here, or are you too drunk to count again!@@" followed by laughter echoing through the restroom.<br>
<br>
"@@.npc_gloryhole;Oh shit. Fuck. I am so sorry. Wow, look at the time. Whelp, I'll be gone then@@", is the last thing you hear before someone hastily leaves the stall next to yours.<br>
<br>
[<<moveTo 'event_gloryhole_1_3_stop' 'Continue.' 666>>]
</div>/*#
#desc: swallow piss first time at gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<if $roomchange==true>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $gloryhole_1.pissChest = setup.checkTopBodySlot('tits','top')>>
<<set $gloryhole_1.finished = true>>
<<if !$player.swallowedotherpee>>
<<set $player.swallowedotherpee = true>>
<</if>>
<<if $gloryhole_1.pissChest !='none'>>
<<changeItemStatus $gloryhole_1.pissChest 'piss' '["set",50]'>>
<</if>>
<<if $gloryhole_1.reason == 'money'>>
<<applyExperience 'whoring' 5 'normal' $INCOGNITO>>
<<applyExperience 'piss' 10 'normal' $INCOGNITO>>
<<else>>
<<applyExperience 'piss' 10 'normal' $INCOGNITO>>
<</if>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+25)>>
<<set $player.money.total+=80>>
<<set $player.flags.gloryhole.totalmoney += 80>>
<<set $player.flags.gloryhole.pissjob += 1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_piss_1.mp4">>
<div id="invframe" class="scrolltext">
You hold your mouth wide open... as the steamy <<getWordPiss $player>> fills and fills your mouth until there's no more space left!<br>
<br>
<<printThought $player "Oh no... I am not really going to... am I?">><br>
<br>
The stream stops on the other side as your mouth is completely full and you can hear the stranger whisper, "@@.npc_gloryhole;Go ahead, do it. Swallow it. You know you want to, Sissy!@@"<br>
<br>
And then a sudden outburst "@@.npc_gloryhole_dom;DO IT!@@", which makes you flinch back, gulping down the whole load!<br>
<br>
<<printThought $player "Oh... what have I done. He used me like a toilet!">><br>
<br>
"@@.npc_gloryhole;Now, that wasn't that hard now was it, Sissy? Go ahead, open your beautiful little mouth for me to check if everything flushed down.@@"<br>
<br>
You hesitate for a moment.
<<if setup.getTotalValue('submission')>5>>
But will all your submissive behaviour lately you find his dominant way with you rather exciting and decide to continue to follow his instructions.
<<else>>
But you have come this far
<<switch $gloryhole_1.reason>>
<<case 'money'>>
in pursuit of some desperately needed money and decide to continue following his instructions.
<<case 'curiosity'>>
in pursuit of your sexual curiosity and decide to continue following his instructions.
<<case 'horny'>>
in attempting to fulfill your sexual curiosity <<glitchText "need">> and decide to continue following his instructions.
<</switch>>
<</if>>
You open your mouth again, and without warning his rock hard <<getWordPenis $player>> resumes pissing right into that toilet mouth of yours, until its filled to the brink with hot, nasty <<getWordPiss $player>> yet again. Only this time he doesn't give you the benefit of stopping when your mouth is full. This forces you to swallow it fast. While your mouth is closed a continuous stream of <<getWordPiss $player>> makes its way down your face, to trickle right onto your
<<if $gloryhole_1.pissChest !='none'>>
<<=setup.getItemName($gloryhole_1.pissChest )>>, soaking it with hot <<getWordPiss $player>>.
<<else>>
bare chest, bathing it with the hot, nasty urine.
<</if>>
You lose track of time during the whole ordeal. You swallow his nasty smelling, and even worse tasting, piss, forgetting the reason why you do it in the first place after a while. All there is for you is your place on the floor, accepting urine like a nasty toilet. Maybe that's your place in life now.<br>
<br>
<<printThought $player "Wh... What?">><br>
<br>
"@@.npc_gloryhole;I said, maybe that's your place in life now Sissy. Or whatever your name is. I know very well that you're not Sissy. It's not a very nice thing to steal someone's workplace, you know? But heavens, you swallowed my piss like it was the best thing in life. Well a deal is a deal, here you go.@@", he says, passing you 80 more credits.<br>
<br>
You suddenly hear an angry voice from a few stalls away: "@@.npc_prostitute;Screw you Robert, you know exactly that my stall is over here, or are you too drunk to count again!@@" followed by laughter echoing through the bathroom.<br>
<br>
"@@.npc_gloryhole;Oh shit. Fuck. I am so sorry. Wow, look at the time. Whelp, I'll be gone then@@", is the last thing you hear before someone hastily leaves the stall next to yours.<br>
<br>
[<<moveTo 'event_gloryhole_1_3_stop' 'Continue.' 666>>]
</div>/*#
#desc: stand outside usual place
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<set $scene.gloryhole_service = {}>>
<<include initGloryhole>>
<</if>>
<<set _open = false>>
<<if (($now.getUTCDay()==1) && ($now.getUTCHours()<1)) || (($now.getUTCDay()>=2) && ($now.getUTCDay()<5) && ($now.getUTCHours()>=19)) || (($now.getUTCDay()>=3) && ($now.getUTCDay()<6) && ($now.getUTCHours()<1)) ||
(($now.getUTCDay()>=5) && ($now.getUTCHours()>=18)) || ((($now.getUTCDay()>=6) || ($now.getUTCDay()==0)) && ($now.getUTCHours()<3)) || (($now.getUTCDay()==0) && ($now.getUTCHours()>=18)) >>
<<set _open = true>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_usual_place_outside')>>
<<if ( (getUTCHours($now)>=6) && (getUTCHours($now) <= 20) )>>
<<set _tmpImage = "./images/locations/the_usual_place_day.png">>
<<else>>
<<set _tmpImage = "./images/locations/the_usual_place_night.png">>
<</if>>
<<set $player.location to "The Usual Place">>
<<include enterroom>>
<<initRoom>>
<<createBGR _tmpImage>>
<div id="invframe" class="scrolltext">
You arrive at the Usual Place, your favourite bar in town. You can read a sign in the window: "Tue-Thu: 19:00-01:00,Fri-Sat: 18:00-03:00, Sun: 18:00-01:00, Mondays closed, because fuck Mondays. ~D."
<<if _open>>
The old school neon open sign is lit over the door and you can ear the sounds of muffled music resonating through the air. A few people stand outside and smoke.
<<else>>
The bar seems to be closed.
<</if>>
<<if _nextdate == null>>
You're not meeting anyone here tonight.
<<elseif setup.compareDay($now,_nextdate)>>
You have plans to meet somebody here today at <<=setup.shortTime(_nextdate)>>.
<</if>>
<br>
<<include thoughts_current>><br>
<br>
<<if _open && ($npc_admin.dates>0)>>
[<<moveTo "room_usual_place_inside" "Go inside" 30>>]<br>
<</if>>
<<if _nextdate == null>>
<<elseif setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondstoDate($now,_nextdate)>>
[<<moveTo "room_usual_place_outside" "Wait." _tmpSeconds>>]<br>
<</if>>
<br>
[<<moveTo "room_citymap" "City Centre" 300>>]
</div>/*#
#desc: at bar of usual place
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_barkeeper.png">>
<div id="invframe" class="scrolltext">
<<if $npc_barkeeper.flags.reactnamechange>>
"@@.npc_barkeeper;Good Evening Ms. <<=$player.last_name>>, how are you? Can I make you something, maybe a cocktail?@@"
<<else>>
"@@.npc_barkeeper;Good Evening Mr. <<=$player.last_name>>, how are you? Can I make you something, maybe a cocktail?@@"
<</if>>
<br><br>
You ponder your options...<br>
<br>
<<buyDrink $player "White Russian" 8 0.25 "room_usual_place_inside">><br>
<<buyDrink $player "Sex on the Beach" 6 0.2 "room_usual_place_inside">><br>
<br>
<<if !$npc_barkeeper.flags.reactnamechange && $player.flags.fem_style.name != "">>
[<<moveTo "event_barkeeper_namechange" "Inform her that you changed your name." 30 "<<set $npc_barkeeper.flags.reactnamechange = true>>">>]<br>
<</if>>
<<if $player.flags.gloryhole.handjob>0>>
[<<moveTo "room_usual_place_toilet" "Go to the Toilet." 30>>]<br>
<<else>>
[<<moveTo "event_gloryhole_1_1" "Go to the Toilet." 30>>]<br>
<</if>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
</div><<set $scene.gloryhole_service.handjob = 0>>
<<set $scene.gloryhole_service.blowjob = 0>>
<<set $scene.gloryhole_service.pissjob = 0>>
<<set $scene.gloryhole_service.swallowpiss = 0>>
<<set $scene.gloryhole_service.swallowcum = 0>>
<<set $scene.gloryhole_service.totalmoney = 0>>/*#
#desc: at bar of usual place
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<set $npc_barkeeper.flags.reactnamechange = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_barkeeper.png">>
<div id="invframe" class="scrolltext">
You inform <<=setup.getNpcName('npc_barkeeper', 'first')>> that, actually, you changed your name and you go by <<=$player.first_name>> <<=$player.last_name>>.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
"@@.npc_barkeeper;Oh! I'm so sorry, I mean, I had no way of knowning but I still would never want to refer to someone incorrectly. I mean, I wondered, what with your change in attire but, well, I try never to assume from that sort of thing. That said... does that mean you are going by Ms. <<=$player.last_name>> now?@@"
<<case 'unisex'>>
"@@.npc_barkeeper;Oh! I'm so sorry, I mean, I had no way of knowning but I still would never want to refer to someone incorrectly. I mean, I wondered, what with your subtle shift in attire but, well, I try never to assume from that sort of thing. That said... does that mean you are going by Ms. <<=$player.last_name>> now?@@"
<<case 'male'>>
"@@.npc_barkeeper;Oh! I'm so sorry, I mean, I had no way of knowning but I still would never want to refer to someone incorrectly. Does that mean you are going by Ms. <<=$player.last_name>> now?@@"
<</switch>>
<br><br>
You nod.<br>
<br>
"@@.npc_barkeeper;Very good, I will be certain to refer to you properly henceforth!@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Continue." 30>>]
</div>/*#
#desc: wait in stall (glory hole) of usual place toilet
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
<<set _open = false>>
<<if (($now.getUTCDay()==1) && ($now.getUTCHours()<1)) || (($now.getUTCDay()>=2) && ($now.getUTCDay()<5) && ($now.getUTCHours()>=19)) || (($now.getUTCDay()>=3) && ($now.getUTCDay()<6) && ($now.getUTCHours()<1)) ||
(($now.getUTCDay()>=5) && ($now.getUTCHours()>=18)) || ((($now.getUTCDay()>=6) || ($now.getUTCDay()==0)) && ($now.getUTCHours()<3)) || (($now.getUTCDay()==0) && ($now.getUTCHours()>=18)) >>
<<set _open = true>>
<</if>>
<<if $roomchange==true>>
<<if !$scene.hasOwnProperty("gloryhole_service")>>
<<set $scene.gloryhole_service = {}>>
<<include initGloryhole>>
<</if>>
<<set $room_usual_place_toilet_entertime = $now>>
<</if>>
<<set _waitTime = Math.round((15+(60*Math.random()))*60)>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
<<if _open>>
<<if $player.timebased.fatigue<=100>>
You're in the 2nd to the last stall of the Usual Place Toilet. There is an empty gloryhole on the side.<br>
<br>
[<<moveTo "room_usual_place_job" "Wait for someone to appear." _waitTime>>]<br>
<br>
<<if (setup.getTotalValue('humiliation')<=7)>>
<<if ($scene.gloryhole_service.pissjob>0) || ($scene.gloryhole_service.swallowpiss>0)>>
<<printThought $player "Oh god! I cannot believe I allowed <<=setup.numberInWords($scene.gloryhole_service.pissjob, true)>> <<if $scene.gloryhole_service.pissjob>1>>guys<<else>>guy<</if>> to pour their <<getWordPiss $player>> all over me<<if $scene.gloryhole_service.swallowpiss>0>>, and I swallowed<<if $scene.gloryhole_service.pissjob==$scene.gloryhole_service.swallowpiss>>... Oh God, I swallowed all of it <<else>> swallowed the pee of <<=setup.numberInWords($scene.gloryhole_service.swallowpiss, true)>> <<if $scene.gloryhole_service.swallowpiss>1>>guys<<else>>guy<</if>><</if>><<if $scene.gloryhole_service.totalmoney>0>> for money!<<else>>!<</if>><<else>>.<</if>>">>
<<elseif $scene.gloryhole_service.blowjob>0>>
<<printThought $player "Oh god! Did I really suck off <<=setup.numberInWords($scene.gloryhole_service.blowjob, true)>> <<if $scene.gloryhole_service.blowjob>1>>guys<<else>>guy<</if>> since I entered this stall?">>
<<elseif $scene.gloryhole_service.handjob>0>>
<<printThought $player "Oh god! Did I really jack off <<=setup.numberInWords($scene.gloryhole_service.handjob, true)>> <<if $scene.gloryhole_service.handjob>1>>guys<<else>>guy<</if>> since I entered this stall?">>
<</if>>
<<else>>
<<if ($scene.gloryhole_service.pissjob>0) || ($scene.gloryhole_service.swallowpiss>0)>>
<<printThought $player "Oh! I've already served <<=setup.numberInWords($scene.gloryhole_service.pissjob, true)>> <<if $scene.gloryhole_service.pissjob>1>>guys<<else>>guy<</if>> as a toilet slave to pour their <<getWordPiss $player>> all over me<<if $scene.gloryhole_service.swallowpiss>0>>, and I swallowed<<if $scene.gloryhole_service.pissjob==$scene.gloryhole_service.swallowpiss>>... I swallowed all of it like the good little slut I am<<else>> the pee of only <<=setup.numberInWords($scene.gloryhole_service.swallowpiss, true)>>of them<</if>><<if $scene.gloryhole_service.totalmoney>0>> for money!<<else>>!<</if>><<else>>.<</if>>">>
<<elseif $scene.gloryhole_service.blowjob>0>>
<<printThought $player "Wow! Did I really suck off <<=setup.numberInWords($scene.gloryhole_service.blowjob, true)>> <<if $scene.gloryhole_service.blowjob>1>>guys<<else>>guy<</if>> since entered this stall?">>
<<elseif $scene.gloryhole_service.handjob>0>>
<<printThought $player "Wow! Did I really jack off <<=setup.numberInWords($scene.gloryhole_service.handjob, true)>> <<if $scene.gloryhole_service.handjob>1>>guys<<else>>guy<</if>> since entered this stall?">>
<</if>>
<</if>>
<<else>>
You're in the 2nd to the last stall of the Usual Place Toilet. There is an empty gloryhole on the side. But that's no longer any concern to you.
It's not like you had any energy left. You feel all washed-out. If you don't rest soon you might pass out.<br>
<br>
<<if (setup.getTotalValue('humiliation')<=7)>>
<<if ($scene.gloryhole_service.pissjob>0) || ($scene.gloryhole_service.swallowpiss>0)>>
<<printThought $player "Oh god! I cannot believe I allowed <<=setup.numberInWords($scene.gloryhole_service.pissjob, true)>> <<if $scene.gloryhole_service.pissjob>1>>guys<<else>>guy<</if>> to pour their <<getWordPiss $player>> all over me<<if $scene.gloryhole_service.swallowpiss>0>>, and I swallowed<<if $scene.gloryhole_service.pissjob==$scene.gloryhole_service.swallowpiss>>... Oh God, I swallowed all of it<<else>> swallowed the pee of <<=setup.numberInWords($scene.gloryhole_service.swallowpiss, true)>> <<if $scene.gloryhole_service.swallowpiss>1>>guys<<else>>guy<</if>><</if>><<if $scene.gloryhole_service.totalmoney>0>> for money!<<else>>!<</if>><<else>>.<</if>>">>
<<elseif $scene.gloryhole_service.blowjob>0>>
<<printThought $player "Oh god! Did I really suck off <<=setup.numberInWords($scene.gloryhole_service.blowjob, true)>> <<if $scene.gloryhole_service.blowjob>1>>guys<<else>>guy<</if>> since I entered this stall?">>
<<elseif $scene.gloryhole_service.handjob>0>>
<<printThought $player "Oh god! Did I really jack off <<=setup.numberInWords($scene.gloryhole_service.handjob, true)>> <<if $scene.gloryhole_service.handjob>1>>guys<<else>>guy<</if>> since I entered this stall?">>
<</if>>
<<else>>
<<if ($scene.gloryhole_service.pissjob>0) || ($scene.gloryhole_service.swallowpiss>0)>>
<<printThought $player "Oh! I've already served <<=setup.numberInWords($scene.gloryhole_service.pissjob, true)>> <<if $scene.gloryhole_service.pissjob>1>>guys<<else>>guy<</if>> as a toilet slave to pour their <<getWordPiss $player>> all over me<<if $scene.gloryhole_service.swallowpiss>0>>, and I swallowed<<if $scene.gloryhole_service.pissjob==$scene.gloryhole_service.swallowpiss>>... I swallowed all of it like the good little slut I am<<else>> the pee of only <<=setup.numberInWords($scene.gloryhole_service.swallowpiss, true)>>of them<</if>><<if $scene.gloryhole_service.totalmoney>0>> for money!<<else>>!<</if>><<else>>.<</if>>">>
<<elseif $scene.gloryhole_service.blowjob>0>>
<<printThought $player "Wow! Did I really suck off <<=setup.numberInWords($scene.gloryhole_service.blowjob, true)>> <<if $scene.gloryhole_service.blowjob>0>>guys<<else>>guy<</if>> since I entered this stall?">>
<<elseif $scene.gloryhole_service.handjob>0>>
<<printThought $player "Wow! Did I really jack off <<=setup.numberInWords($scene.gloryhole_service.handjob, true)>> <<if $scene.gloryhole_service.handjob>0>>guys<<else>>guy<</if>> since I entered this stall?">>
<</if>>
<</if>><br>
<br>
[@@.link_locked;You feel too tired to continue your debauchery.@@] /% TODOfuture change for prostitution %/
<</if>>
<<else>>
You're in the 2nd to the last stall of the Usual Place Toilet. There is an empty gloryhole on the side. But it's not like anyone is going to show up at this hour.
It is getting late and the Usual Place is about to close, there is really no point for you to stay any longer.
<<if $player.timebased.fatigue<=100>>
Besides, it's not like you have any energy left. You feel all washed-out. If you don't rest soon you might pass out.
<</if>>
<br>
<br>
<<if setup.getTotalValue('humiliation')<=7>>
<<printThought $player "What am I even doing here?">>
<<else>>
<<if ($scene.gloryhole_service.handjob+$scene.gloryhole_service.blowjob) < 3>>
<<printThought $player "Slow evening, heh!">>
<<else>>
<<printThought $player "Wow, I can't believe I serviced <<=setup.numberInWords($scene.gloryhole_service.handjob+$scene.gloryhole_service.blowjob,true)>> guys this evening!">>
<</if>>
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("makeup") > 0>>
<<if $player.flags.fem_style.makeup == "">>
[@@.link_locked;You do not think you are ready to put on makeup in a public restroom.@@]
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Bathroom of the Usual Place">><<set $return_makeuproom="room_usual_place_toilet">><<set $makeuproom_image="./images/locations/the_usual_place_toilet.png">><<set $return_makeuproomtext="Finished.">><<set $makeuproom_water=false>>'>>]
<</if>>
<br><br>
<</if>>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_usual_place_inside" "Leave the Toilet!" 30>>]
<<else>>
[@@.link_locked;You're not going to leave the toilet dressed like this@@]
<</if>>
</div>/*#
#desc: sit waiting for work in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $up_handjob = false>>
<<set _tmpHandJob = setup.canPlayerSex($player,'handjob')>>
<<set _tmpBlowJob = setup.canPlayerSex($player,'blowjob')>>
<<if $roomchange==true>>
<<setScene>>
<<set $scene.gloryholejob = {}>>
<<set $scene.gloryholejob.up_moan = 0>>
<<set $scene.gloryholejob.up_cum = false>>
<<set $scene.gloryholejob.up_pantiessoaked = false>>
<<set $scene.gloryholejob.cloth1="">>
<<set $scene.gloryholejob.cloth2part="">>
<<set $scene.gloryholejob.cloth2="">>
<<set $scene.gloryholejob.type="">>
<<set $scene.gloryholejob.reason="">>
<<set $scene.gloryholejob.paid=false>>
<<if (Math.random()*100)<25 && $fetish.piss>>
<<set $scene.gloryholejob.pissjob = true>>
<<else>>
<<set $scene.gloryholejob.pissjob = false>>
<</if>>
<<if (Math.random()*100)<25>>
<<set $scene.gloryholejob.asshole = true>>
<<else>>
<<set $scene.gloryholejob.asshole = false>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
<<if (setup.getTotalValue('whoring')>=setup.getTotalValue('penis')) && (setup.getTotalValue('whoring')>=3)>>
You wait for quite a while sitting on the toilet thinking about the life choices that brought you here. Is touching a stranger's <<getWordPenis $player>> for a fistful of credits really what you had in mind? Or is there something else going on as well? Right on cue a rather enormous specimen gets shoved through the gloryhole. Hard and dripping with precum, waiting for your ... affection.
<<elseif $npc_psychiatrist.hypnosis>0>>
You wait for quite a while sitting on the toilet thinking about the life choices that brought you here. Right here, right now, waiting for a <<getWordPenis $player>> to appear in a hole... in a toilet... in a bar... in the middle of the night. Right on cue a rather enormous specimen gets shoved through the gloryhole. Hard and dripping with precum, waiting for your ... affection.
<<elseif (_tmpHandJob.ret||_tmpBlowJob.ret) || ($npc_psychiatrist.hypnosis>0)>>
You wait for quite a while sitting on the toilet thinking about the life choices that brought you here. Right here, right now, waiting for a <<getWordPenis $player>> to appear in a hole... in a toilet... in a bar... in the middle of the night. Right on cue a rather enormous specimen gets shoved through the gloryhole. Hard and dripping with precum, waiting for your ... affection.
<<if setup.getTotalValue('humiliation')<=5>>
And even though rational thought tells you to simply leave and forget all about this, a voice inside you begs you to stay and to do your duty on this magnificent <<getWordPenis $player>> like you're supposed to do.
<<else>>
The voices in your head trying to stop you from doing this are fading away into the gray noise that used to be your mind. Your only thoughts circle around what's right in front of you. Your ready to do your duty on this magnificent <<getWordPenis $player>>, like you're supposed to do.
<</if>>
<<else>>
You have no idea what exactly you expected to happen. Yeah, you've done things in here before, but that was different... somehow. A part of you is repulsed by your actions and wants to run away at the sight of the rather enormous specimen shoved through the gloryhole. It's hard and dripping with precum, waiting for your affection. But you're not going to touch this <<getWordPenis $player>>, are you?
<<if (_tmpHandJob.perc>90) || (_tmpBlowJob.perc>90)>>
But you can already feel your defences crumbling by simply staring at this manly <<getWordPenis $player>>.<br><br>
<<printThought $player "No... but I kinda want to feel its manliness!">>
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue('humiliation')<=5>>
<<printThought $player "Oh god. What am I becoming? I have to get out here, fast!">><br>
<br>
<<elseif setup.getTotalValue('whoring')>=3>>
<<printThought $player "Anyway, let's get this over with. Maybe I can even handle a few of these tonight!">><br>
<<else>>
<<if _tmpBlowJob.ret>>
<<printThought $player "I.. I wonder how it tastes. A small lick won't hurt anyone, will it?">><br><br>
<<elseif _tmpHandJob.ret>>
<<printThought $player "I.. I want to touch this...">><br><br>
<</if>>
<</if>>
<br><br>
<<if ($player.money.total<0) || (setup.getTotalValue('whoring')>0) || setup.getTotalValue('penis')>=5 || setup.getTotalValue('cum')>=5>>
[<<moveTo "room_usual_place_handjob" "Offer a handjob for money." 360 '<<set $scene.gloryholejob.type="handjob">><<set $scene.gloryholejob.reason="money">><<set $scene.gloryholejob.paid=true>>'>>]<br>
<<else>>
[@@.link_locked;I am not so desperate to touch someone's penis for money!@@] <<hint $options "If you embraced being a whore, maybe this would be less of a barrier...">><br>
<</if>>
<<if _tmpHandJob.ret || (setup.getTotalValue('penis')>=5) || (setup.getTotalValue('cum')>=5)>>
[<<moveTo 'room_usual_place_handjob' 'Mmm, cock makes you horny offer a handjob.' 360 '<<set $scene.gloryholejob.type="handjob">><<set $scene.gloryholejob.reason="horny">><<set $scene.gloryholejob.paid=false>>'>>]<br>
<<else>>
[@@.link_locked;No way in hell am I going to touch this ... monster!@@] <<hint $options "If your player character refuses to do its job, there are several ways to increase your chances. Certain skills decide how good you are at doing this, certain fetishes decide how much you want it. Horniness is a big factor as well. And it would be much more fun to work here dressed as a slut or whore then in boring casual male clothes, wouldn't it?">><br>
<</if>>
<<if setup.getTotalValue('penis')>=5 || $npc_psychiatrist.hypnosis >= 3 >>
<<if $player.blowvirgin>>
<<if $npc_psychiatrist.hypnosis>=3>>
[<<moveTo "room_usual_place_blowjob_init" "I want to pull my lips over this <<getWordPenis>>!" 360 '<<set $scene.gloryholejob.type="blowjob">><<set $scene.gloryholejob.reason="horny">><<set $scene.gloryholejob.paid=false>>'>>]<br>
<<else>>
[<<moveTo "room_usual_place_blowjob_init" "Do ... do ... a blow ... a blowjob." 360 '<<set $scene.gloryholejob.type="blowjob">><<set $scene.gloryholejob.reason="horny">><<set $scene.gloryholejob.paid=false>>'>>]<br>
<</if>>
<<else>>
<<if ($player.money.total<0) || (setup.getTotalValue('whoring')>3) || setup.getTotalValue('cum')>=5>>
[<<moveTo "room_usual_place_blowjob_init" "Offer a blowjob for money." 360 '<<set $scene.gloryholejob.type="blowjob">><<set $scene.gloryholejob.reason="money">><<set $scene.gloryholejob.paid=true>>'>>]<br>
<<elseif _tmpBlowJob.ret>>
[<<moveTo "room_usual_place_blowjob_init" "Offer a blowjob." 360>>]<br>
<<else>>
[@@.link_locked;No way my lips will part for this monster!@@] <<hint $options "If you were more of a whore, maybe this would be less of a barrier...">><br>
<</if>>
<</if>>
<</if>>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_usual_place_inside" "Leave the Toilet!" 30>>]
<<else>>
[@@.link_locked;I can't leave the toilet dressed like this!@@]
<</if>>
</div>/*#
#desc: give handjob in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm already working on it, so it's to late to change my clothes now">>
<<if $roomchange==true>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryhole_service.handjob += 1>>
<<set $player.flags.gloryhole.handjob += 1>>
<<if $player.flags.gloryhole.handjob == 1>>
<<setThreshold 'penis' 'gloryhole_penis' 'first_contact' true>>
<</if>>
<<set $scene.gloryholejob.cage = setup.getItemTypeName("cage")>>
<<set $scene.gloryholejob.plug = setup.getItemTypeName("plug")>>
<<set $scene.gloryholejob.cum_quality = Math.floor(5*Math.random())>>
<<if !$fetish.piss>>
<<set $scene.gloryholejob.cum_quality = Math.max(2,$scene.gloryholejob.cum_quality)>>
<</if>>
<<set $scene.gloryholejob.up_moan = Math.floor(5*Math.random())>>
<<set $scene.gloryholejob.up_cum = false>>
<<set $scene.gloryholejob.up_pantiessoaked = false>>
<<applyFatigue $player 15>>
<<set $player.timebased.horny =setup.changeHorny($player,10)>>
<<set $scene.gloryholejob.cloth1 = setup.checkTopBodySlot('penis','bottom')>>
<<set $scene.gloryholejob.up_cum = setup.canPlayerCum($player,[ ['penis','normal'] ])>>
<<set _bodyparts = [ "head" , "mouth" , "upperbody" , "tits" , "lowerbody" , "crotch" ]>>
<<set $scene.gloryholejob.cloth2part = setup.randomArray(_bodyparts)>>
<<set $scene.gloryholejob.cloth2 = setup.checkTopBodySlot($scene.gloryholejob.cloth2part,'top')>>
<<if $player.timebased.dirty<50>>
<<set $player.timebased.dirty = 50>>
<</if>>
<<if ($scene.gloryholejob.cloth1 != 'none')&&($scene.gloryholejob.up_cum == true)>>
<<if setup.hasItemStatus(setup.getItemFromType('panties'), 'cumsoaked','>','25')>>
<<set $scene.gloryholejob.up_pantiessoaked = true>>
<</if>>
<<changeItemStatus $scene.gloryholejob.cloth1 'cumsoaked' '["set",100]'>>
<</if>>
<<if $scene.gloryholejob.cloth2 != 'none'>>
<<changeItemStatus $scene.gloryholejob.cloth2 'cumsoaked' '["set",100]'>>
<</if>>
<<set $scene.gloryholejob.topTagStyle = setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','male'])>>
<<set $scene.gloryholejob.topTagType = setup.analyzeWornTags(['underwear','overgarment'])>>
<<switch $scene.gloryholejob.reason>>
<<case 'money'>>
<<if setup.getTotalValue('whoring')>0>>
<<applyExperience 'whoring' 2 'little' $INCOGNITO>>
<<else>>
<<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining' true>>
<</if>>
<<applyExperience 'humiliation' 11 'little' $INCOGNITO>>
<<applyExperience 'submission' 8 'almost' $INCOGNITO>>
<<default>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<<applyExperience 'submission' 11 'almost' $INCOGNITO>>
<</switch>>
<<applyExperience 'penis' 8 'very' $INCOGNITO>>
<<applyExperience 'stamina' 4 'almost' $INCOGNITO>>
<<set $scene.gloryholejob.money = setup.calcHandjobMoney($player,10)>>
<<if !($scene.gloryholejob.pissjob && $scene.gloryholejob.asshole)>>
<<set $player.money.total+=$scene.gloryholejob.money>>
<<set $scene.gloryhole_service.totalmoney+=$scene.gloryholejob.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholejob.money>>
<</if>>
<<set $npc_barkeeper.handjobs+=1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_handjob_size.mp4">>
<div id="invframe" class="scrolltext">
<<switch $scene.gloryholejob.topTagStyle>>
<<case 'fetish'>>
Dressed in provocative fetish attire, you
<<case 'sissy'>>
<<if setup.getTotalValue('feminization')<10>>
Dressed like a sissy, you
<<else>>
Dressed like the sissy you are, you
<</if>>
<<case 'bold'>>
Dressed like a prostitute,
<<case 'cute'>>
Dressed in girly things, you
<<case 'modest'>>
Dressed like a housewife, you
<<default>>
You
<</switch>>
decided to help out this poor, big, throbbing <<getWordPenis $player>>.
<<if $scene.gloryholejob.reason=='money'>>
For a certain reward of course. Though your excited <<getWordMyPenis $player>> is telling another story as to your your reasons.<br>
<br>
<<if $scene.gloryholejob.topTagStyle!="male">>
<<printThought $player "Calm down, damn it. I'm only doing this for the money... But then why am I then dressed like this?">>
<<else>>
<<printThought $player "Calm down, damn it. I'm only doing this for the money... ">>
<</if>>
<br><br>
<</if>>
You're getting used to this, but your heart is still racing as you get on your knees, taking a good look at this big <<getWordPenis $player>>. The head is rosy and pulses with energy, the dickhole already oozing with precum in anticipation. You can see the blood pumping through the veins making its shaft twitch and thump. It has a strong, musky smell emitting from it, potent but not unpleasant. It's driving you insane. You should be repulsed, not aroused,
<<if $scene.gloryholejob.cage!="">>
but your <<getWordMyPenis $player>> is pressing against the <<=$scene.gloryholejob.cage>> without mercy.
<<else>>
<<if setup.checkItemTypeWorn('panties')>>
but your <<getWordMyPenis $player>> is getting hard rubbing against your
<<if _pantiessoaked==true>>
filled with <<getWordCum $player>>
<</if>>
<<=setup.getItemTypeName('panties')>>, while you gently stroke over its fabric.
<<else>>
but your <<getWordMyPenis $player>> is getting hard, while you gently stroke it.
<</if>>
<</if>>
<br><br>
You take the <<getWordPenis $player>> in your grasp. It is warm and you feel it pulse and twitch in your hand. You hear an audible moan from the other stall and take it as encouragement as you start moving your hand up and down the long, meaty shaft.
<<switch $scene.gloryholejob.up_moan>>
<<case 0>>
<br><br>
"@@.npc_gloryhole;Yeah, work it you whore!@@"<br>
<br>
<<case 1>>
<br><br>
"@@.npc_gloryhole;Ugh!@@"<br>
<br>
<<case 2>>
<br><br>
"@@.npc_gloryhole;Yes. Yes! This... This is delicious!@@"<br>
<br>
You feel some psychic energy emitting from the other stall.
<<case 3>>
<br><br>
"@@.npc_gloryhole;Ja, touch it you sissy schlampe!@@"<br>
<br>
<<case 4>>
<br><br>
"@@.npc_gloryhole;Ah! More!@@"<br>
<br>
<</switch>>
You realise, that without any help of lotion working on an extra large tool like this might take way to long, you spit into one hand, and rub it all over his dickhead to mix it together with the precum for added viscosity, while your second hand starts to work on his balls, massaging them wholeheartedly. You can feel how the rhythm of the throbbing and pulsating gets stronger and quicker, as you work on the shaft with one hand, while you massage the balls with your other. The moans get more ecstatically and louder from the other side. And as you indulge this <<getWordPenis $player>>, you're getting hornier and hornier as well.
<<if $scene.gloryholejob.cage!="">>
But your <<getWordMyPenis $player>> is constrained by your <<=$scene.gloryholejob.cage>>, making you unable to cum in a normal fashion. But you want to cum, you need to cum, together with the manly <<getWordPenis $player>> in your hand.
<<if $scene.gloryholejob.plug!="">>
You pull the <<=$scene.gloryholejob.plug>> out of your wet sissy pussy and start fingering your anus vigorously, until you're on the brink of sweet analgasm!
<<else>>
Lubricating your other hand with the precum leaking through your <<=$scene.gloryholejob.cage>>, you start fingering your sissy pussy vigorously, until you're on the brink of sweet analgasm!
<</if>>
<</if>>
And as this hard, pulsing <<getWordPenis $player>> explodes in your hand, spraying cum all over your hand
<<switch $scene.gloryholejob.cloth2part >>
<<case 'head'>>
and onto your face,
<<if $scene.gloryholejob.cloth2 == 'none'>>
inking your rosy cheeks with hot manly white <<getWordCum $player>>,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholejob.cloth2)>> in <<getWordCum $player>>,
<</if>>
<<case 'mouth'>>
and onto your lips,
<<if $scene.gloryholejob.cloth2 == 'none'>>
making you lick them subconsciously,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholejob.cloth2)>> in <<getWordCum $player>>,
<</if>>
<<case 'upperbody' 'tits'>>
and onto your chest,
<<if $scene.gloryholejob.cloth2 == 'none'>>
makeing the <<getWordCum $player>> flow down your nipples,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholejob.cloth2)>> in <<getWordCum $player>>,
<</if>>
<<case 'lowerbody' 'crotch'>>
and onto your crotch,
<<if $scene.gloryholejob.cloth2 == 'none'>>
soaking your <<getWordMyPenis $player>> in someone else's <<getWordCum $player>>,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholejob.cloth2)>> in <<getWordCum $player>>,
<</if>>
<</switch>>
<<if $scene.gloryholejob.cage!="">>
<<if $scene.gloryholejob.up_cum>>
<<if $scene.gloryholejob.cloth1 == 'none'>>
<<getWordCum $player>> leaks out of your <<getWordMyPenis $player>> on the floor. Without the sweet release of a real orgasm you still feel horny as hell. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little sissy you are.
<<else>>
<<getWordCum $player>> leaks out of your <<getWordMyPenis $player>> on the floor, soaking into your <<=setup.getItemName($scene.gloryholejob.cloth1)>>, but without the sweet release of an real orgasm, you still feel horny as hell. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little sissy you are.
<</if>>
<<else>>
<<if $scene.gloryholejob.cloth1 == 'none'>>
Besides a few drops of <<getWordCum $player>> dripping on the floor you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little sissy you are.
<<else>>
Besides a few drops of <<getWordCum $player>> dripping into your <<=setup.getItemName($scene.gloryholejob.cloth1)>> you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little sissy you are.
<</if>>
<</if>>
<<if $scene.gloryholejob.plug!="">>
Moaning with want you take small solace in shoving the <<=$scene.gloryholejob.plug>> back up your wet sissy pussy.
<</if>>
<<else>>
<<if $scene.gloryholejob.up_cum>>
<<if $scene.gloryholejob.cloth1 == 'none'>>
you shoot a load of <<getWordCum $player>> on the floor,
<<else>>
you spray a load of <<getWordCum $player>> into your <<=setup.getItemName($scene.gloryholejob.cloth1)>>,
<</if>>
like the good little sissy you are.
<<else>>
you're unable to cum yourself. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little sissy you are.
<</if>>
<</if>>
<br><br>
<<if $scene.gloryholejob.pissjob>>
<<if $scene.gloryholejob.asshole>>
<<if $scene.gloryholejob.reason=='money'>>
"@@.npc_gloryhole;Not bad. Not bad at all. But not enough, whore! Double or nothing. I have another pressure building up in my <<getWordPenis $player>>, and only the sweet release of my bladder all over that cute little face of yours can satisfy it. So open your mouth like the toilet slave you are or fuck off! And you better swallow all of it.@@"
<<else>>
"@@.npc_gloryhole;Not bad. Not bad at all. But not enough, whore! I have another pressure building up in my <<getWordPenis $player>>, and only the sweet release of my bladder all over that cute little face of yours can satisfy it. So open your mouth like the toilet slave you are or fuck off! And you better swallow all of it.@@"
<</if>>
<br><br>
<<if setup.getTotalValue('piss')>7 && setup.getTotalValue('submission')>7>>
Before he even finishes the request your mouth is already halfway open, practically salivating as you anticipate your golden shower.<br>
<br>
<<printThought $player "Yes, please let me receive your <<getWordPiss $player>> like the toilet slave I am!">>
<<elseif setup.getTotalValue('piss')>5>>
<<printThought $player "What an Asshole. If he'd ask nicely I would have done it as well">>
<<elseif setup.getTotalValue('submission')>7>>
<<printThought $player "I don't really want to but his forceful way really turns me on...">>
<<elseif $player.money.total<0 && $scene.gloryholejob.reason=='money'>>
<<printThought $player "What an Asshole. But I could really use that money right now.">>
<<else>>
<<printThought $player "What an Asshole.">>
<</if>>
<br><br>
[<<moveTo "room_usual_place_handjob_acceptpiss" "Accept by opening your mouth, but don't swallow." 60>>]<br>
[<<moveTo "room_usual_place_handjob_drinkpiss" "Accept by opening your mouth and swallow." 60>>]<br>
<<if setup.getTotalValue('piss')<=7 && setup.getTotalValue('submission')<=7>>
[<<moveTo "room_usual_place_handjob_decline_asshole_piss" "Decline his offer." 60>>]
<<elseif setup.getWillpower($player)>>
[<<moveTo "room_usual_place_handjob_decline_asshole_piss" "Decline his request, even though you're really thirsty for his offer!" 60>>]
<<else>>
[@@.link_locked;You feel unable... or rather unwilling to decline his request@@]
<</if>>
<<else>>
<<if $scene.gloryholejob.reason=='money'>>
"@@.npc_gloryhole;That was awesome. You're really good with your hands. But I have a certain desire, and if you're willing to help me out there as well, you can earn a few extra credits.@@", the stranger tells you while handing you your <<=setup.numberInWords($scene.gloryholejob.money, true)>> credits, "@@.npc_gloryhole;You see I'd love to release my bladder all over you. So, what do you say? Deal?@@"
<<else>>
"@@.npc_gloryhole;That was awesome. You're really good with your hands. And you're a saint for doing this for free. So I feel almost bad for asking this, but I have a certain desire. You see I'd love to release my bladder all over you. So, what do you say?@@"
<</if>>
<br><br>
<<if setup.getTotalValue('piss')>7 && setup.getTotalValue('submission')>7>>
Before he even finishes the request you mouth is already halfway open, practically salivating as you anticipate your golden shower..<br>
<br>
<<printThought $player "Yes, please let me receive your <<getWordPiss $player>> like the toilet slave I am!">>
<<elseif setup.getTotalValue('piss')>5>>
<<printThought $player "Well, he is rather polite for asking if he can pee on my face... wait what?">>
<<elseif setup.getTotalValue('submission')>7>>
<<printThought $player "He... he wants to pee on me to show dominance over me?">>
<<elseif $player.money.total<0 && $scene.gloryholejob.reason=='money'>>
<<printThought $player "Hmm... I'm not really in the mood, but I could really use that money.">>
<<else>>
<<printThought $player "What did he say!? Why am I even considering this?">>
<</if>>
<br><br>
[<<moveTo "room_usual_place_handjob_acceptpiss" "Accept by opening your mouth, but don't swallow." 60>>]<br>
[<<moveTo "room_usual_place_handjob_drinkpiss" "Accept by opening your mouth and swallow." 60>>]<br>
<<if setup.getTotalValue('piss')<=7 && setup.getTotalValue('submission')<=7>>
[<<moveTo "room_usual_place_handjob_decline_piss" "Decline his offer." 60>>]
<<elseif setup.getWillpower($player)>>
[<<moveTo "room_usual_place_handjob_decline_piss" "Decline his request, even though you're really thirsty for his offer!" 60>>]
<<else>>
[@@.link_locked;You feel unable... or rather unwilling to decline his request@@]
<</if>>
<</if>>
<<else>>
"@@.npc_gloryhole;That was awesome. You're really good with your hands. Makes me wonder how good your mouth would be. Anyway, here, take this. You've earned it.@@"<br>
<br>
He hands you <<=$scene.gloryholejob.money>> credits through the gloryhole, which you embrace while saying thank you.<br>
<br>
<<if ((setup.getTotalValue('humiliation')>=5) && (setup.getTotalValue('bimbofication')>=3))||(setup.getTotalValue('cum')>0)>>
The smell of cum rises in your nose and makes you curious how it might taste. For a moment you're repulsed by your own thoughts, but you just gave another man a handjob so the time thinking about the morality of this all has long passed.<br>
<br>
[<<moveTo "room_usual_place_handjob_lickcum" "Lick the <<getWordCum $player>> off your hand" 60>>]<br>
<</if>>
[<<moveTo "room_usual_place_toilet" "Clean yourself up" 60>>]
<</if>>
</div>/*#
#desc: reject asshole client's request to piss in your mouth
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
You tell the stranger on the other side of the stall to fuck off. He does not take your rejection lightly.<br>
<br>
"@@.npc_gloryhole;Screw you, bitch! Better hope I never run into you again!@@", he shouts as you hear him storm off He kicks the door to your stall on the way past, almost breaking it.<br>
<br>
<<if setup.getWillpower($player)>>
<<printThought $player "Screw you asshole. I don't need a toxic personality like yours anywhere near me right now!">>
<<else>>
<<printThought $player "Eek. I really should be more careful from now on.">>
<</if>>
<br><br>
[<<moveTo "room_usual_place_toilet" "Clean yourself up as best as possible." 60>>]
</div>/*#
#desc: decline normal client's request to piss in your mouth
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
You tell the stranger on the other side of the stall that you have to decline is proposition.<br>
<br>
"@@.npc_gloryhole;Don't worry about it. I understand that getting peed on is not everyone's notion of a good time. Still, thanks for everything you did until now!@@"<br>
<br>
You hear the stranger exit the other stall, leaving you to your own business.<br>
<br>
<<if setup.getTotalValue('piss')>5>>
<<printThought $player "Aw. He was awfully polite. Almost makes me wish I've granted his request.">>
<<else>>
<<printThought $player "Well, I really don't like being peed on.">>
<</if>>
<br><br>
[<<moveTo "room_usual_place_toilet" "Clean yourself up as best as possible." 60>>]
</div>/*#
#desc: accept gloryhole client's request to piss in your mouth (don't swallow)
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<if $roomchange==true>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryholejob.pissChest = setup.checkTopBodySlot('tits','top')>>
<<set $scene.gloryholejob.pissButtTop = setup.checkTopBodySlot('bootie','top')>>
<<set $scene.gloryholejob.pissButtBottom = setup.checkTopBodySlot('bootie','bottom')>>
<<set $scene.gloryholejob.finished = true>>
<<if $player.drankotherpee == false>>
<<set $player.drankotherpee = true>>
<<set $player.drankotherpee_first = "npc_gloryhole">>
<</if>>
<<if $scene.gloryholejob.pissChest !='none'>>
<<changeItemStatus $scene.gloryholejob.pissChest 'piss' '["set",50]'>>
<</if>>
<<if setup.getTotalValue("piss") == 0 && !setup.hasThreshold('piss', 'gloryhole_piss', 'first_time')>>
<<setThreshold 'piss' 'gloryhole_piss' 'first_time' true>>
<</if>>
<<if $scene.gloryholejob.reason == 'money'>>
<<applyExperience 'whoring' 5 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 14 'little' $INCOGNITO>>
<<applyExperience 'piss' 8 'almost' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 14 'very' $INCOGNITO>>
<<applyExperience 'piss' 10 'very' $INCOGNITO>>
<</if>>
<<changeStatAllWorn 'piss' 100>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+50)>>
<<if $scene.gloryholejob.reason=='money'>>
<<if $scene.gloryholejob.asshole>>
<<set $player.money.total+=$scene.gloryholejob.money*2>>
<<set $scene.gloryhole_service.totalmoney+=$scene.gloryholejob.money*2>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholejob.money*2>>
<<else>>
<<set $player.money.total+=$scene.gloryholejob.money>>
<<set $scene.gloryhole_service.totalmoney+=$scene.gloryholejob.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholejob.money>>
<</if>>
<</if>>
<<set $scene.gloryhole_service.pissjob += 1>>
<<if $player.makeup.template!="">>
<<set $player.makeup.messed += Math.min(100,Math.round(12+Math.random()*12))>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_piss_1.mp4">>
<div id="invframe" class="scrolltext">
"@@.npc_gloryhole;Very good. I've been waiting the whole evening to do this. So don't waste a single drop@@"<br>
<br>
<<if setup.getTotalValue('piss')<7 && setup.getTotalValue('submission')<7>>
<<printThought $player "Oh, god, why do I let other people do that to me? He is pissing right into my dirty toilet mouth, and I let it happen?">>
<<else>>
<<printThought $player "Yes, spray your <<getWordPiss $player>> all over my toilet slave face!">>
<</if>>
<br><br>
A torrent of hot, golden <<getWordPiss $player>> hits your face, pouring down into your mouth. You can feel the hot liquid all over your face, its
<<if setup.getTotalValue('piss')<5>>
rather nasty fragrance finding its way into your nose, its bitter flavour soaking your tongue,
<<elseif setup.getTotalValue('piss')<7>>
strong fragrance finding its way into your nose, its strong flavour on your tongue,
<<else>>
strong fragrance of manliness finding its way into your nose, its exotic flavour on your tongue,
<</if>>
removing all remaining taste of cum you had from before.
<<if $player.makeup.template!="">>
The constant onslaught of pee running down your face ruins your makeup.
<<elseif $player.makeup.permanent!="">>
Were it not for your permanently applied makeup the onslaught of pee would have surely ruined your face, but, though you glisten with lingering drops, your face remains as perfect as when you walked in
<</if>>
And you just stand there.
<<if setup.getTotalValue('piss')<7>>
Unable
<<else>>
Unwilling
<</if>>
to move even a single inch, as if rooted to the spot. The sheer
<<if setup.getTotalValue('piss')<7>>
shock
<<else>>
excitement
<</if>>
of being used like a dirty urinal in a toilet is too much for your mind and you stay in place like a fawn staring right into two oncoming headlights.<br>
<br>
<<if setup.getTotalValue('piss')<5>>
<<printThought $player "Oh god! No! What have I done?">>
<<elseif setup.getTotalValue('piss')<7>>
<<printThought $player "What am I doing?">>
<<else>>
<<printThought $player "This is where I belong...">>
<</if>>
<br><br>
You spit out the piss, closing your mouth, so no more can flow inside, but you still have the bitter, acrid taste on your tongue.
<br><br>
<<if setup.getTotalValue('piss')<7>>
<<printThought $player "No way, I am not going to swallow this!">><br>
<<else>>
<<printThought $player "No I am not going to swallow it, this time. Even though I enjoy the taste on my tongue...">><br>
<</if>>
<br>
"@@.npc_gloryhole;Oh well, I can still have fun like this, you know@@", you hear from the other side as he starts to swing his <<getWordPenis $player>> around, spraying piss all over you, until there's nothing left that has not been soaked in <<getWordPiss $player>>.<br>
<br>
<<if setup.getTotalValue('piss')<7>>
<<printThought $player "Fuck, I will smell like a dirty urinal while walking home. I really hope nobody sees me like this!">><br>
<<else>>
<<printThought $player "I smell like a dirty urinal. Why do I find that so exciting?">><br>
<</if>>
<br>
"@@.npc_gloryhole;Now, turn around and put that sexy little butt of yours in the air, so I can mark you like the dirty bitch you are@@"<br>
<br>
You hesitate for a moment.
<<if setup.getTotalValue('submission')>5>>
But with all your submissive behaviour lately you find his dominant way with you rather exciting and decide to continue to follow his instructions.
<<else>>
But you have come this far
<<switch $scene.gloryholejob.reason>>
<<case 'money'>>
in pursuit of some desperate needed money and decide to continue to following his instructions.
<<case 'curiosity'>>
in pursuit of your sexual curiosity and decide to continue to following his instructions.
<<case 'horny'>>
in attempting to fulfill your sexual curiosity <<glitchText "need">> and decide to continue to following his instructions.
<</switch>>
<</if>>
You turn around and bend over, moving your head very close to the floor, already wet from all that urine, moving your butt in the air. After only a few seconds you can feel the hot <<getWordPiss $player>>
<<if $scene.gloryholejob.pissButtTop == 'none'>>
wetting your buttcheeks.
<<else>>
<<if $scene.gloryholejob.pissButtTop == $scene.gloryholejob.pissButtBottom>>
soaking through your <<=setup.getItemName($scene.gloryholejob.pissButtTop)>>.
<<else>>
soaking through your <<=setup.getItemName($scene.gloryholejob.pissButtTop)>> until it finally reaches your <<=setup.getItemName($scene.gloryholejob.pissButtBottom)>>.
<</if>>
<</if>>
You lose track of time during the whole ordeal, forgetting the reason why you do it in the first place after a while. All there is for you is your place on the floor, accepting urine like a nasty toilet.<br>
<br>
<<if setup.getTotalValue('piss')<7>>
<<printThought $player "Is... is it finally over?">>
<<else>>
<<printThought $player "Is... is it already over?">>
<</if>>
<br><br>
<<if $scene.gloryholejob.reason=='money'>>
<<if $scene.gloryholejob.asshole>>
"@@.npc_gloryhole;Yeah, that was satisfactory whore. Here you go,@@" he says, passing you <<=$scene.gloryholejob.money*2>> credits.<br>
<<else>>
"@@.npc_gloryhole;Yeah, I really liked that. Here you go,@@" he says, passing you <<=$scene.gloryholejob.money>> credits.<br>
<</if>>
<<else>>
<<if $scene.gloryholejob.asshole>>
"@@.npc_gloryhole;Yeah, that was satisfactory, whore. Next time I'll piss into that whore mouth of yours while my <<getWordPenis $player>> is impaled in that throat of yours, you hear me bitch?@@"<br>
<<else>>
"@@.npc_gloryhole;Yeah, I really like that. You really made my day, thanks!@@"<br>
<</if>>
<</if>>
<br>
[<<moveTo "room_usual_place_toilet" "Clean yourself up as best you can." 60>>]
</div>/*#
#desc: sawllow piss after handjob
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<if $roomchange==true>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $gloryhole_1.pissChest = setup.checkTopBodySlot('tits','top')>>
<<set $gloryhole_1.finished = true>>
<<if $gloryhole_1.pissChest !='none'>>
<<changeItemStatus $gloryhole_1.pissChest 'piss' '["set",50]'>>
<</if>>
<<set $scene.gloryholejob.finished = true>>
<<if $player.drankotherpee == false>>
<<set $player.drankotherpee = true>>
<<set $player.drankotherpee_first = "npc_gloryhole">>
<</if>>
<<if $scene.gloryholejob.reason == 'money'>>
<<applyExperience 'whoring' 5 'very' $INCOGNITO>>
<<applyExperience 'humiliation' 14 'almost' $INCOGNITO>>
<<applyExperience 'piss' 8 'very' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 14 'normal' $INCOGNITO>>
<<applyExperience 'piss' 10 'very' $INCOGNITO>>
<</if>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+25)>>
<<if $scene.gloryholejob.reason=='money'>>
<<if $scene.gloryholejob.asshole>>
<<set $player.money.total+=$scene.gloryholejob.money*2>>
<<set $scene.gloryhole_service.totalmoney+=$scene.gloryholejob.money*2>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholejob.money*2>>
<<else>>
<<set $player.money.total+=$scene.gloryholejob.money>>
<<set $scene.gloryhole_service.totalmoney+=$scene.gloryholejob.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholejob.money>>
<</if>>
<</if>>
<<if $player.makeup.template!="">>
<<set $player.makeup.messed += Math.min(100,Math.round(12+Math.random()*12))>>
<</if>>
<<set $scene.gloryhole_service.pissjob += 1>>
<<set $scene.gloryhole_service.swallowpiss += 1>>
<<set $player.flags.gloryhole.swallowpiss += 1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_piss_1.mp4">>
<div id="invframe" class="scrolltext">
"@@.npc_gloryhole;Very good. I've been waiting the whole evening for this. So don't waste a single drop@@"<br>
<br>
<<if setup.getTotalValue('piss')<7 && setup.getTotalValue('piss')<7>>
<<printThought $player "Oh, god, why do I let other people do that to me? He is pissing right into my dirty toilet mouth, and I let it happen?">>
<<else>>
<<printThought $player "Yes, spray your <<getWordPiss $player>> all over my toilet slave face!">>
<</if>>
<br><br>
A torrent of hot, golden <<getWordPiss $player>> hits your face, pouring down into your mouth. You can feel the hot liquid all over your face, its
<<if setup.getTotalValue('piss')<5>>
rather nasty fragrance finding its way into your nose, its bitter flavour on your tongue,
<<elseif setup.getTotalValue('piss')<7>>
strong fragrance finding its way into your nose, its strong flavour on your tongue,
<<else>>
strong fragrance of manliness finding its way into your nose, its exotic flavour on your tongue,
<</if>>
removing all remaining taste of cum you had from before.
<<if $player.makeup.template!="">>
The constant onslaught of pee running down your face ruins your makeup.
<<elseif $player.makeup.permanent!="">>
Were it not for your permanently applied makeup the onslaught of pee would have surely ruined your face, but, though you glisten with lingering drops, your face remains as perfect as when you walked in
<</if>>
And you just stand there.
<<if setup.getTotalValue('piss')<7>>
Unable
<<else>>
Unwilling
<</if>>
to move even a single inch, as if rooted to the spot. The sheer
<<if setup.getTotalValue('piss')<7>>
shock
<<else>>
excitement
<</if>>
of being used like a dirty urinal in a toilet is too much for your mind and you stay in place like a fawn staring right into two oncoming headlights.<br>
<br>
<<if setup.getTotalValue('piss')<5>>
<<printThought $player "Oh god! No! What have I done?">>
<<elseif setup.getTotalValue('piss')<7>>
<<printThought $player "What am I doing?">>
<<else>>
<<printThought $player "This is where I belong...">>
<</if>>
<br><br>
You hold your mouth wide as the steamy <<getWordPiss $player>> fills and fills. And fills, until there's no more space left!<br>
<br>
<<if setup.getTotalValue('piss')<7>>
<<printThought $player "Oh no... I am not really going to... am I?">>
<<else>>
<<printThought $player "Mmmm, I love guzzling <<getWordPiss $player>>!">><br>
<</if>>
<br><br>
The stream stops on the other side as your mouth is completely full, as if the stranger is waiting for you to do your part of the deal. You close your eyes and swallow
<<if setup.getTotalValue('piss')<5>>
the bitter tasting liquid,
<<elseif setup.getTotalValue('piss')<7>>
the strong tasting liquid,
<<else>>
the golden liquid oozing with manliness,
<</if>>
presenting your empty toilet hole you once called mouth to the person responsible for filling it with hot <<getWordPiss $player>> in the first place.
<br><br>
<<if setup.getTotalValue('piss')<7>>
<<printThought $player "Oh... what have I done. He's treating me like a toilet!">>
<<else>>
<<printThought $player "Ooooh... He's using me as a toilet slave!">>
<</if>>
<br><br>
<<if setup.getTotalValue('submission')>5>>
But your submissive behaviour of late mades it easy for you to follow his instructions to the letter.
<<else>>
You have come this far
<<switch $gloryhole_1.reason>>
<<case 'money'>>
in pursuit of some desperately needed money and decide to continue to follow his instructions.
<<case 'curiosity'>>
in pursuit of your sexual curiosity and decide to continue to follow his instructions.
<<case 'horny'>>
in attempting to fulfill your sexual curiosity <<glitchText "need">> and decide to continue to obey his instructions.
<</switch>>
<</if>>
Without warning his rock hard <<getWordPenis $player>> resumes pissing right into that toilet mouth of yours, until its filled to the brink with hot, nasty <<getWordPiss $player>> yet again. Only this time he doesn't give you the benefit of stopping when your mouth is full. This forces you to swallow it, fast. But while your mouth is closed, a continuous stream of <<getWordPiss $player>> makes its way down your face, to splash right onto your
<<if $gloryhole_1.pissChest !='none'>>
<<=setup.getItemName($gloryhole_1.pissChest )>>, soaking it with hot <<getWordPiss $player>>.
<<else>>
bare chest, bathing it with the hot, nasty urine.
<</if>>
You lose track of time during the whole ordeal. You swallow his
<<if setup.getTotalValue('piss')<5>>
nasty smelling and even worse tasting piss,
<<elseif setup.getTotalValue('piss')<7>>
strong smelling and bitter tasting piss,
<<else>>
manly smelling and exotic tasting piss,
<</if>>
forgetting the reason why you did this in the first place after a while. All there is for you is your place on the floor, accepting urine like a
<<if setup.getTotalValue('piss')<7>>
nasty toilet.
<<else>>
human toilet slave.
<</if>>
<br><br>
<<if setup.getTotalValue('piss')<7>>
<<printThought $player "Is... is it finally over?">>
<<else>>
<<printThought $player "Is... is it already over?">>
<</if>>
<br><br>
<<if $scene.gloryholejob.reason=='money'>>
<<if $scene.gloryholejob.asshole>>
"@@.npc_gloryhole;Yeah, that was satisfactory, whore. Here you go,@@" he says, passing you <<=$scene.gloryholejob.money*2>> credits.<br>
<<else>>
"@@.npc_gloryhole;Yeah, I really liked that. Here you go,@@" he says, passing you <<=$scene.gloryholejob.money>> credits.<br>
<</if>>
<<else>>
<<if $scene.gloryholejob.asshole>>
"@@.npc_gloryhole;Yeah, that was satisfactory, whore. Next time I'll piss into that whore mouth of yours while my <<getWordPenis $player>> is hilted in that throat of yours, you hear me, bitch?@@"<br>
<<else>>
"@@.npc_gloryhole;Yeah, I really like that. You really made my day, thanks!@@"<br>
<</if>>
<</if>>
<br>
[<<moveTo "room_usual_place_toilet" "Clean yourself up as best as possible." 60>>]
</div>/*#
#desc: lick up cum after gloryhole handjob
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a hand job!">>
<<if $roomchange==true>>
<<set $scene.previousswallowcum = $player.swallowedothercum>>
<<set $sceneVisibility = $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<applyExperience 'submission' 10 'almost' $INCOGNITO>>
<<if !$player.swallowedothercum>>
<<set $player.swallowedothercum = true>>
<<set $player.swallowedothercum_first = 'npc_gloryhole'>>
<</if>>
<<switch $scene.gloryholejob.cum_quality>>
<<case 0>>
<<applyExperience 'piss' 9 'normal' $INCOGNITO>>
<<applyExperience 'cum' 6 'little' $INCOGNITO>>
<<case 1>>
<<applyExperience 'piss' 9 'slightly' $INCOGNITO>>
<<applyExperience 'cum' 6 'almost' $INCOGNITO>>
<<case 2>>
<<applyExperience 'cum' 6 'normal' $INCOGNITO>>
<<case 3>>
<<applyExperience 'cum' 6 'very' $INCOGNITO>>
<<case 4>>
<<applyExperience 'cum' 6 'terrible' $INCOGNITO>>
<</switch>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/swallow_cum_1.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.previousswallowcum>>
You shiver in anticipation as you are once again about to taste another man's hot <<getWordCum $player>>.
<<else>>
You shiver as you slowly move your hand towards your mouth.
<</if>>
You dip the tip of your tongue into the stranger's <<getWordCum $player>>.
<<if setup.getTotalValue('cum')<4>>
Suddenly it hits you like a hammer.
<</if>>
You just licked someone else's <<getWordCum $player>>, straight from their <<getWordPenis $player>>.
<<if $player.swalloeddowncum == false>>
<<if $player.swallowedothercum>>
again
<</if>>
even before ever tasting your own <<getWordCum $player>>.
<</if>>
<<switch $scene.gloryholejob.cum_quality>>
<<case 0>>
There's plenty of cum in your mouth, but it's thin and tastes weak. <br><br>
<<printThought $player "Oh <<getWordGod $player>>. This tastes more like piss than <<getWordCum $player>>!">><br>
<br>
<<if setup.getTotalValue('piss')>=10>>
It leaves the delicious aftertaste of <<getWordPiss $player>> on your tongue, and you have lick your lips in with relish.
<<else>>
It leaves a bitter aftertaste on your tongue and you have to cough.
<</if>>
<<if setup.getTotalValue('piss')<1>>
The thought of having <<getWordPiss $player>> in your mouth is repulsive to you. You spit it out.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. That tasted like... well... <<getWordPiss $player>>!">><br>
<br>
<<else>>
But for some reason, maybe all the <<getWordPiss $player>> you've been guzzling lately, you don't find this as repulsive as you used to be, a fact that frankly scares you a little bit. Voraciously you swallow this unholy mixture of <<getWordCum $player>> and <<getWordPiss $player>>.<br><br>
<<if setup.getTotalValue('piss')>5>>
<<printThought $player "I really am just a human toilet slave!!">>
<<else>>
<<printThought $player "Oh no... no more <<getWordPiss $player>> please!">>
<</if>>
<br><br>
<</if>>
<<case 1>>
It tastes bitter and smells a little bit like <<getWordPiss $player>>. Maybe the stranger pissed right before you worked on his shaft of manliness. <<if setup.getTotalValue('piss')>10>>Yum!<<else>>Yuck.<</if>> Still you cant stop licking your hand until its all inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought $player "Yay! I'm a cumslut!">>
<<else>>
<<printThought $player "Why am I doing this?">>
<</if>>
<<case 2>>
It is thin and watered down, like someone has masturbated too often earlier in the day. There isn't much as well, but still you can't stop licking your hand until every drip of <<getWordCum $player>> is inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought $player "I need more <<getWordCum $player>>!">>
<<else>>
<<printThought $player "I have got to stop doing things like this!">>
<</if>>
<br><br>
<<case 3>>
It is thick and gooey and there's quite a lot of it. You quite enjoy licking it all up until the last drop is in your mouth, coating your tongue and throat. You love how it feels moving around in your mouth and enjoy the rich taste it leaves there. After you got the most out of it, you swallow it like a good little cumslut.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought $player "Creamy! That really hits the spot!">>
<<else>>
<<printThought $player "Huh, that didn't taste too bad... what am I thinking?">>
<</if>>
<br><br>
<<case 4>>
This giant, viscous load of <<getWordCum $player>> has the perfect consistency and texture. It is bright, white and smells, and tastes, oh <<getWordGod $player>> the taste! of manliness. You cant stop licking your fingers, since this might well be the apex of <<getWordCum $player>>, at least as far as you have tasted. It almost seems a waste to swallow it, but after a while you do, with a guilty, pleased smile on your lips.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought $player "So good! I want a lot more from where that came from!">>
<<else>>
<<printThought $player "Yum! I want more! Wait, what? Oh no...">>
<</if>>
<br><br>
<</switch>>
<br><br>
[<<moveTo "room_usual_place_toilet" "Clean yourself up" 60>>]
</div>/*#
#desc: variable setup for giving blowjob in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryholejob.cage = setup.getItemTypeName("cage")>>
<<set $scene.gloryholejob.plug = setup.getItemTypeName("plug")>>
<<if $player.flags.gloryhole.blowjob == 0>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_5'
5
'event_psychiatrist_session_prostitution_2'
true
'theme_psychiatrist_prostitution_header'
>>
<<setThreshold 'oral' 'anonymous_oral' 'gloryhole' true>>
<<addWorkEvent 'broken_computer' '{"trigger":"daily","type":"chance","chance":25,"repeat":false,"priority":100}' '{"szene":"event_work_broken_computer_1","length":"15"}' $now>>
<</if>>
<<set $scene.gloryhole_service.blowjob += 1>>
<<set $player.flags.gloryhole.blowjob += 1>>
<<set $scene.gloryholejob.firstBlowJob = false>>
<<if $player.blowjobvirginity == "">>
<<set $scene.gloryholejob.firstBlowJob = true>>
<<set $player.blowjobvirginity = 'npc_gloryhole'>>
<</if>>
<<if $scene.gloryholejob.firstBlowJob>>
<<set $scene.gloryholejob.cum_quality = 4>>
<<set $scene.gloryholejob.penis_size = 8>>
<<set $scene.gloryholejob.deepthroat = true>>
<<set $scene.gloryholejob.struggle_deepthroat = true>>
<<else>>
<<set $scene.gloryholejob.cum_quality = Math.floor(5*Math.random())>>
<<if !$fetish.piss>>
<<set $scene.gloryholejob.cum_quality = Math.max(2,$scene.gloryholejob.cum_quality)>>
<</if>>
<<set $scene.gloryholejob.penis_size = Math.max(5,Math.ceil(Math.random()*(setup.getTotalValue('penis')+setup.getTotalValue('oral')))-3+Math.floor(7*Math.random(),30))>>
<<if (setup.getTotalValue('oral')+Math.random(setup.getTotalValue('penis')/2))>$scene.gloryholejob.penis_size>>
<<set $scene.gloryholejob.deepthroat = true>>
<<if (setup.getTotalValue('oral')+(setup.getTotalValue('penis')/2))>$scene.gloryholejob.penis_size>>
<<set $scene.gloryholejob.struggle_deepthroat = false>>
<<else>>
<<set $scene.gloryholejob.struggle_deepthroat = true>>
<</if>>
<<else>>
<<set $scene.gloryholejob.deepthroat = false>>
<<set $scene.gloryholejob.struggle_deepthroat = false>>
<</if>>
<</if>>
<<if $player.makeup.template!="">>
<<changeMakeupMessed $player 25>>
<</if>>
<<set $scene.gloryholejob.up_moan = Math.floor(5*Math.random())>>
<<set $scene.gloryholejob.up_cum = false>>
<<set $scene.gloryholejob.up_pantiessoaked = false>>
<<applyFatigue $player 20>>
<<set $player.timebased.horny += 15>>
<<set $scene.gloryholejob.cloth1 = setup.checkTopBodySlot('penis','bottom')>>
<<if setup.canPlayerCum($player,setup.getTotalValue('penis'))>>
<<set $scene.gloryholejob.up_cum = true>>
<</if>>
<<set _bodyparts = [ "head" , "mouth" , "upperbody" , "tits" ]>>
<<set $scene.gloryholejob.cloth2part = setup.randomArray(_bodyparts)>>
<<set $scene.gloryholejob.cloth2 = setup.checkTopBodySlot($scene.gloryholejob.cloth2part,'top')>>
<<if $player.timebased.dirty<50>>
<<set $player.timebased.dirty = 50>>
<</if>>
<<if ($scene.gloryholejob.cloth1 != 'none')&&($scene.gloryholejob.up_cum == true)>>
<<if setup.hasItemStatus(setup.getItemFromType('panties'), 'cumsoaked','>','25')>>
<<set $scene.gloryholejob.up_pantiessoaked = true>>
<</if>>
<<changeItemStatus $scene.gloryholejob.cloth1 'cumsoaked' '["set",100]'>>
<</if>>
<<if $scene.gloryholejob.cloth2 != 'none'>>
<<changeItemStatus $scene.gloryholejob.cloth2 'cumsoaked' '["set",100]'>>
<</if>>
<<set $scene.gloryholejob.money = 15>>
<<set $scene.gloryholejob.level = Math.round($scene.gloryholejob.penis_size/3)>>
<<if $scene.gloryholejob.deepthroat>>
<<set $scene.gloryholejob.money += 7>>
<<set $scene.gloryholejob.level += Math.round($scene.gloryholejob.penis_size/6)>>
<<if $scene.gloryholejob.struggle_deepthroat == false>>
<<set $scene.gloryholejob.money += 7>>
<<set $scene.gloryholejob.level += Math.round($scene.gloryholejob.penis_size/6)>>
<</if>>
<</if>>
<<switch $scene.gloryholejob.reason>>
<<case 'money'>>
<<set $scene.gloryholejob.money = Math.round($scene.gloryholejob.money*1.5)>>
<<if setup.getTotalValue('whoring')>0>>
<<applyExperience 'whoring' 4 'normal' $INCOGNITO>>
<<else>>
<<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining' true>>
<</if>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<applyExperience 'submission' 8 'almost' $INCOGNITO>>
<<default>>
<<set $scene.gloryholejob.money = Math.round($scene.gloryholejob.money*0.5)>>
<<applyExperience 'humiliation' 12 'very' $INCOGNITO>>
<<applyExperience 'submission' 10 'almost' $INCOGNITO>>
<</switch>>
<<applyExperience 'stamina' 4 'slightly' $INCOGNITO>>
<<applyExperience 'oral' $scene.gloryholejob.level 'very' $INCOGNITO>>
<<if setup.getTotalValue('penis')<7>>
<<setThreshold 'penis' 'gloryhole_penis' 'cocksucker' true>>
<</if>>
<<applyExperience 'penis' 8 'very' $INCOGNITO>>
<<if setup.getTotalValue('cum')<7>>
<<setThreshold 'cum' 'gloryhole_cum' 'cum_slurping' true>>
<<else>>
<<switch $scene.gloryholejob.cum_quality>>
<<case 0>>
<<applyExperience 'piss' 9 'almost' $INCOGNITO>>
<<applyExperience 'cum' 6 'little' $INCOGNITO>>
<<case 1>>
<<applyExperience 'piss' 9 'slightly' $INCOGNITO>>
<<applyExperience 'cum' 6 'almost' $INCOGNITO>>
<<case 2>>
<<applyExperience 'cum' 6 'normal' $INCOGNITO>>
<<case 3>>
<<applyExperience 'cum' 6 'very' $INCOGNITO>>
<<case 4>>
<<applyExperience 'cum' 6 'terrible' $INCOGNITO>>
<</switch>>
<</if>>
<<set $scene.gloryholejob.money = setup.calcHandjobMoney($player,$scene.gloryholejob.money)>>
<<set $player.money.total+=$scene.gloryholejob.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholejob.money>>
<<set $scene.gloryhole_service.totalmoney+=$scene.gloryholejob.money>>
<<if setup.getTotalValue('whoring')>=5 && setup.getTotalValue('anal')>=8 && random(1,10) == 5>>
<<initRoom>>
<<moveTo "room_usual_place_gloryhole_anal_1">>
<<else>>
<<set $npc_barkeeper.blowjobs+=1>>
<<initRoom>>
<<moveTo "room_usual_place_blowjob">>
<</if>>/*#
#desc: work blowjob in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Mm mth ms knndfull rghmt nmw...">>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_blowjob_01.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.gloryholejob.firstBlowJob>>
Okay, here you are. You're kneeling in front of a big, throbbing, <<=($scene.gloryholejob.penis_size*2.5)>> cm sized <<getWordPenis $player>>,
<<if setup.checkVisibleClothingTag('cute')>50>>
like the little<<if setup.checkVisibleClothingTag('pink')>> ,pink<</if>> sissy whore
<<elseif setup.checkVisibleClothingTag('bold')>>
like the slut
<<else>>
like the needy girly-boy
<</if>>
you are! Your heart is about to explode from excitement at getting closer to this big <<getWordPenis $player>>. Your nostrils inhale the smell of manliness emanating from it, the scent raising your lustfulness tenfold. You want to take it in your mouth until you can feel the pubes tickling your nose, but you wait. You have to savor the moment. This is and will always be the first <<getWordPenis $player>> to cross your longing lips. The first <<getWordPenis $player>> to enter your mouth, the first <<getWordPenis $player>> to stuff your face and so you take a moment to relish its aroma and flavour.
<<else>>
Okay, here we are again. You're kneeling in front of a big, throbbing, <<=($scene.gloryholejob.penis_size*2.5)>> cm sized <<getWordPenis $player>>,
<<if setup.checkVisibleClothingTag('cute')>50>>
like the little<<if setup.checkVisibleClothingTag('pink')>> ,pink<</if>> sissy whore
<<elseif setup.checkVisibleClothingTag('bold')>>
like the slut
<<else>>
like the needy girly-boy
<</if>>
you are!
<<if $scene.gloryholejob.reason == 'money'>>
Even though your primary motive is of monetary nature, you cannot deny the excitement exuding from this endeavour, as your nostrils inhale the smell of manliness emanating from the enormous <<getWordPenis $player>> in front of you.
<<else>>
Your heart is about to explode from excitement, getting closer to this big <<getWordPenis $player>>. Your nostrils inhale the smell of manliness emanating from it, the scent raises your lustfulness tenfold.
<</if>>
<</if>>
As is right and proper you start greeting this big <<getWordPenis $player>> by kissing the tip, which is glistening with precum.
<<if $scene.gloryholejob.firstBlowJob>>
For a moment, as if you'd only just awaken from a long dream, you shy away. W... What the hell are you doing? Didn't you used to be.... aren't you straight? Why in the name of all that is good and holy are you kneeling in front of this giant <<getWordPenis $player>> in a bathroom stall,
<<if setup.getIndecentValue($player)==100>>
wearing nothing at all,
<<elseif setup.checkVisibleClothingTag('sissy')>40>>
dressed like a sissy,
<<elseif setup.checkVisibleClothingTag('cute')>40>>
dressed like a cute girl,
<<elseif setup.checkVisibleClothingTag('bold')>40>>
dressed like a pavement princess,
<<elseif setup.checkVisibleClothingTag('female')>40>>
all dressed up in female clothing,
<<else>>
as if it meant nothing at all,
<</if>>
even going so far as kissing this ... tasty ... big ... yummie Cock! No! No, you have to focus. You don't like cock ... <<glitchText "cock... co">>
<</if>>
<br>
<br>
<<if $scene.gloryholejob.firstBlowJob>>
You feel like a happy little Sissy Bride, allowed to kiss your master for the first time.<br>
<br>
<<printThought $player "Have you ever seen such a beautiful cock?" 40>><br>
<br>
<<printThought $player "No! I have to fight it!" >><br>
<br>
<<printThought $player "I want to worship a beautiful, hard, throbbing cock!" 40>><br>
<br>
<<printThought $player "No!" -5>><br>
<br>
<<printThought $player "It's such a beautiful cock!" 40>><br>
<br>
<<printThought $player "I can resist the cock!" -10>><br>
<br>
<<printThought $player "Just imagine kissing it..." 40>><br>
<br>
<<printThought $player "Don't. I can fight!" -15>><br>
<br>
<<printThought $player "I just want to worship this cock!" 40>><br>
<br>
<<printThought $player "I don't want to worship penis!" -20>><br>
<br>
<<printThought $player "Let my mind focus on its beautiful hardness...!" 40>><br>
<br>
<<printThought $player "Oh god. It's so hard... to resist..." -25>><br>
<br>
<<printThought $player "I want to feel how hard, how big, how wonderful it is!" 40>><br>
<br>
<<printThought $player "No, I cannot reach out and touch it... if I touch it, I might like it..." -30>><br>
<br>
<<printThought $player "It's so perfect." 40>><br>
<br>
<<printThought $player "No, its not perfect. Cock... cock isn't perfect." -35>><br>
<br>
<<printThought $player "I'd love to feel this cock!" 40>><br>
<br>
And just like a cock crazy sissy bride after her new husband flipped up her pink bridal veil, you move your lips closer to this <<getWordPenis $player>> and plant your first, wet, passionate kiss on it. You didn't even kiss your girlfriend with this much passion back in the days. But this kiss. This kiss is love. Love for cock. You feel the precum moistening your lips, sealing your fate as a cockhungry slut, once and for all.<br><br>
<<else>>
You plant a long, sloppy kiss on this <<getWordPenis $player>>, bathing your lips in precum.<br><br>
<</if>>
<<printThought $player "Kissing it once is hardly enough to show my gratitude!">><br>
<br>
You plant a few more kisses on this <<getWordPenis $player>>, on its head, the pulsating shaft, you kiss the balls as best you can, before you go back to the head, kissing it one last time, before starting to caress it with your tongue. You start at the urethra, and lick all the way over the head along the shaft until you reach the point, where the balls and the shaft connect. You start to give the <<getWordPenis $player>> a good massage using your spit and its precum while starting to suck at the balls, like they're the best thing in the world. You faintly remember a time where you would be repulsed by the mere thought of sucking on a godly gift like this.<br>
<br>
<<printThought $player "Why would I ever refuse something mouth-watering like this?">><br>
<br>
As you start to take the <<getWordPenis $player>> into your ready and anticipating mouth, your <<getWordMyPenis $player>> twitches in excitement,
<<if setup.checkItemTypeWorn('panties')>>
making a bulge swell inside your <<if $scene.gloryholejob.up_pantiessoaked>><<getWordCum $player>>filled <</if>><<=setup.getItemTypeName('panties')>>, while you gently stroke over the fabric.
<<else>>
while you gently stroke it.
<</if>>
You can feel the <<getWordPenis $player>> pulsing in your mouth, feeling as it gets harder and thicker. You want to go down on it, all the way,
<<if !$scene.gloryholejob.deepthroat>>
but you're simply not experienced enough to do it. Every time you try to push it deeper into your eager face fuckhole you start to gag like an inexperienced beginner and have to pull back. After a while you decide, it's in your both interest to finish the job with what you've got and start to suck on the <<getWordPenis $player>> eagerly.<br>
<br>
<<printThought $player "There is still a lot of room for improvement!">><br>
<br>
<<else>>
and manage to push it into the back of your mouth, giving your throat a good pounding as you bob your head back and forth. You can feel the whole shaft twitching and pulsing, more blood pumping to swell it thicker and spread your lips further. <<if $scene.gloryholejob.struggle_deepthroat>>
Sadly, you're still too inexperienced, to keep a member as divine and large as this lodged into your face parking space for <<getWordPenis $player>>, so you have to back away from time to time. You don't take a break, however, giving it attention in a more traditional way with lips and tongue while kneading the balls.<br>
<br>
<<printThought $player "I still have to get better!">><br>
<br>
<<else>>
Your deepthroat skills are indeed excellent, as you manage to keep this divine member lodged into your face fuckhole for an extended time period. It's like you were born to take other manliness into your eager mouth and give it the popper treatment such a glorious cock deserves! While keeping it in your mouth you can feel every heartbeat of the gentleman on the opposite side of the gloryhole through the pulsing of the <<getWordPenis $player>>. You feel like you are where you belong: On your knees, sucking a big, throbbing <<getWordPenis $player>> like the professional cocksucker you are!<br>
<br>
<<printThought $player "This is my destiny!">><br>
<br>
<</if>>
<</if>>
Finally you can feel the pulses and twitching speed up. And as the <<getWordPenis $player>> somehow gets harder and harder in your yearning mouth, you start to get hornier as well.
<<if $scene.gloryholejob.cage!="">>
But your <<getWordMyPenis $player>> is being constrained by your <<=$scene.gloryholejob.cage>>, making you unable to cum in a normal fashion. But you want to cum, you need to cum, together with the manly <<getWordPenis $player>> in your mouth.
<<if $scene.gloryholejob.plug!="">>
You pull your <<=$scene.gloryholejob.plug>> out of your wet sissy pussy and start fingering your anus vigorously until you're on the brink of sweet analgasm!
<<else>>
Lubricating your other hand with the precum leaking through your <<=$scene.gloryholejob.cage>> you start fingering your sissy pussy vigorously until you're on the brink of sweet analgasm!
<</if>>
<</if>>
The audible moans from the other side tell you that they are close to unloading their payload into your mouth. You take the <<getWordPenis $player>> out of your mouth, so none of the tasty <<getWordCum $player>> will bypass your anticipating tongue.<br>
<br>
<<switch $scene.gloryholejob.up_moan>>
<<case 0>>
"@@.npc_gloryhole;Yeah, suck my shaft you whore!@@"<br>
<br>
<<case 1>>
"@@.npc_gloryhole;Ugh!@@"<br>
<br>
<<case 2>>
"@@.npc_gloryhole;Yes. Yes! This... This is delicious!@@"<br>
<br>
You feel some psychic energy emitting from the other stall.
<<case 3>>
"@@.npc_gloryhole;Ja, saug an meinem Schwanz du Sissy Hure! Saug!@@"<br>
<br>
<<case 4>>
"@@.npc_gloryhole;Ah! More!@@"<br>
<br>
<</switch>>
With a final uproar a torrent of <<getWordCum $player>> is unloaded directly in your mouth, filling it up a lot quicker than you expected. You're unable to swallow the whole load
<<switch $scene.gloryholejob.cloth2part >>
<<case 'head'>>
which makes a lot of it splatter onto your face,
<<if $scene.gloryholejob.cloth2 == 'none'>>
inking your rosy cheeks in hot manly white <<getWordCum $player>>, making you look like you just finished being in the place of honor at a bukkake session,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholejob.cloth2)>> in <<getWordCum $player>>, making you look like you just finished being in the place of honor at a bukkake session,
<</if>>
<<case 'mouth'>>
which makes a lot of it splatter onto your lips, you licking your lips reflexively,
<<case 'upperbody' 'tits'>>
making it seep down your face onto your chest,
<<if $scene.gloryholejob.cloth2 == 'none'>>
making the <<getWordCum $player>> flow down your nipples,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholejob.cloth2)>> in <<getWordCum $player>>.
<</if>>
<</switch>>
while
<<if $scene.gloryholejob.up_cum>>
<<if $scene.gloryholejob.cage!="">>
<<if $scene.gloryholejob.cloth1 == 'none'>>
<<getWordCum $player>> flows out of your <<getWordMyPenis $player>> on the floor,
<<else>>
<<getWordCum $player>> flows out of your <<getWordMyPenis $player>> on the floor, soaking into your <<=setup.getItemName($scene.gloryholejob.cloth1)>>,
<</if>>
like the good little sissy whore you are.
<<if $scene.gloryholejob.plug!="">>
Groaning with need you shove the <<=$scene.gloryholejob.plug>> back up your wet sissy pussy.
<</if>>
<<else>>
<<if $scene.gloryholejob.cloth1 == 'none'>>
you spray <<getWordCum $player>> on the floor,
<<else>>
you spray <<getWordCum $player>> into your <<=setup.getItemName($scene.gloryholejob.cloth1)>>,
<</if>>
like the good little whore you are.<br>
<</if>>
<<else>>
<<if $scene.gloryholejob.cage!="">>
your <<getWordMyPenis $player>> tries to get harder only to get blocked by your <<=$scene.gloryholejob.cage>>, preventing you from climaxing. You feel like a sex toy, used without any release in sight. Just like a perfect little sissy.
<<if $scene.gloryholejob.plug!="">>
Groaning with need you shove the <<=$scene.gloryholejob.plug>> back up your wet sissy pussy.
<</if>>
<<else>>
your <<getWordMyPenis $player>> gets harder and harder, making you think about the big, hard <<getWordPenis $player>> you just pleasured.
<</if>>
<</if>>
<<switch $scene.gloryholejob.cum_quality>>
<<case 0>>
There's plenty of cum in your mouth, but it's thin and tastes weak.<br><br>
<<printThought $player "Oh <<getWordGod $player>>. This tastes more like piss than <<getWordCum $player>>!">><br>
<br>
<<if setup.getTotalValue('piss')>=10>>
It leaves the delicious aftertaste of <<getWordPiss $player>> on your tongue, and you have lick your lips in with relish.
<<else>>
It leaves a bitter aftertaste on your tongue and you have to cough.
<</if>>
<<if setup.getTotalValue('piss')<1>>
The thought of having <<getWordPiss $player>> in your mouth is repulsive to you. You spit it out.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. That tasted like... well... <<getWordPiss $player>>!">>
<<elseif setup.getTotalValue('piss')<5>>
You still swallow it, but you don't like it, not even a little. The act is humiliating and you're repulsed by your own action. But you know that the guys love it when you swallow their loads, so you do it anyway.<br>
<br>
<<printThought $player "Oh no... no more <<getWordPiss $player>> please!">>
<<elseif setup.getTotalValue('piss')<10>>
But for some reason, maybe all the <<getWordPiss $player>> you've been guzzling lately, you don't find this as repulsive as you used to be, a fact that frankly scares you a little bit. You show your patron, that you have his whole load in your mouth, like the good little toilet slave you are before voraciously swallowing the unholy mixture of <<getWordCum $player>> and <<getWordPiss $player>>.<br>
<br>
<<printThought $player "I really am just a human toilet slave!!">>
<<else>>
But being the toiletwhore you are, you're very okay with the thought as serving as a human toilet for your patron, guzzling down all their bottled up <<getWordPiss $player>> right from the source. Having tasted some refreshing <<getWordPiss $player>> on your tongue, you want more of course, cementing your place as a lowly toilet even more, and asking the patron if they would like to use your mouth as a urinal.<br>
<br>
"@@.npc_gloryhole;Of course, open up slut! I don't have all day!@@"<br>
<br>
You happily pull your mouth over his <<getWordPenis $player>>, forming a watertight seal with your lips. You can feel as the veins in his <<getWordPenis $player>> strain, and his urethra releases at least three quarter of a litre of hot, steamy and tasty <<getWordPiss $player>> into your mouth, which you happily swallow.<br>
<br>
<<printThought $player "Please, use me like the living toilet I am!">>
<</if>>
<<case 1>>
It tastes bitter and smells a little bit like <<getWordPiss $player>>. Maybe the stranger pissed right before you worked on his shaft of manliness. <<if setup.getTotalValue('piss')>10>>Yum!<<else>>Yuck.<</if>> Still you cant stop licking your hand until its all inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought $player "Yay! I'm a cumslut!">>
<<else>>
<<printThought $player "Why am I doing this?">>
<</if>>
<<case 2>>
It is thin and watered down, like someone has masturbated too often earlier in the day. There isn't much as well, but still you can't stop licking your hand until every drip of <<getWordCum $player>> is inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought $player "I need more <<getWordCum $player>>!">>
<<else>>
<<printThought $player "I have got to stop doing things like this!">>
<</if>>
<<case 3>>
It is thick and gooey and there's quite a lot of it. You quite enjoy licking it all up until the last drop is in your mouth, coating your tongue and throat. You love how it feels moving around in your mouth and enjoy the rich taste it leaves there. After you got the most out of it, you swallow it like a good little cumslut.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought $player "Creamy! That really hits the spot!">>
<<else>>
<<printThought $player "Huh, that didn't taste too bad... what am I thinking?">>
<</if>>
<<case 4>>
This giant, viscous load of <<getWordCum $player>> has the perfect consistency and texture. It is bright, white and smells, and tastes, oh <<getWordGod $player>> the taste! of manliness. You can't stop licking your fingers, since this might well be the apex of <<getWordCum $player>>, at least as far as you have tasted. It almost seems a waste to swallow it, but after a while you do, with a guilty, pleased smile on your lips.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought $player "So good! I want a lot more from where that came from!">>
<<else>>
<<printThought $player "Yum! I want more! Wait, what? Oh no...">>
<</if>>
<</switch>>
<br><br>
<<if $scene.gloryholejob.pissjob>>
"@@.npc_gloryhole;That was awesome. Your mouth is really something to behold. Here, take this. You've earned it. But if you want a few credits more you just have to keep your pretty little mouth right where it is. @@"<br>
He holds you <<=$scene.gloryholejob.money>> credits through the gloryhole.<br>
<br>
[<<moveTo "room_usual_place_toilet" "Thank him for his patronage but decline the offer" 60>>]<br>
[<<moveTo "room_usual_place_blowjob_piss" "Take the money and accept the offer" 60>>]<br>
<<else>>
<<if $scene.gloryholejob.reason == 'money'>>
"@@.npc_gloryhole;That was awesome. Your mouth is really something to behold. Here, take this. You've earned it.@@"<br>
<br>
He holds your <<=$scene.gloryholejob.money>> credits through the gloryhole, which you embrace while saying thank you.<br>
<br>
<<else>>
"@@.npc_gloryhole;That was awesome. Your mouth is really something to behold. I know you didn't ask for any money but take this. You've earned it.@@"<br>
<br>
He sticks <<=$scene.gloryholejob.money>> credits through the gloryhole, which you embrace while saying thank you.<br>
<br>
<</if>>
[<<moveTo "room_usual_place_toilet" "Clean yourself up" 60>>]
<</if>>
</div>/*#
#desc: offered anal in gloryhole
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Mm mth ms knndfull rghmt nmw...">>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
You start to reach for the juicy <<getWordPenis $player>> sticking out through the wall when you hear the voice from the other side of the thin partition.<br>
<br>
"Hey, so I don't suppose you've got another hole available; lips are lovely but I'm feeling like something a bit... tighter this evening..." <br>
<br>
<<if $player.analvirginity != "">>
<<printThought $player "He's talking about my ass isn't he...">>
<<else>>
<<printThought $player "Wait... he wants to fuck my ass? Is this how I lose my anal virginity? Bent over in a bathroom stall with a guy whose face I never even see?">>
<</if>>
<br><br>
[<<moveTo "room_usual_place_gloryhole_anal_2" "Bend over and back up." 60>>]<br>
[<<moveTo "room_usual_place_blowjob" "Just suck him off." 60 "<<set $npc_barkeeper.blowjobs+=1>>">>]
</div>/*#
#desc: anal in gloryhole
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while I have this telephone pole in my ass...">>
<<if $roomchange==true>>
<<set $scene.firstAnal = $player.analvirginity == "">>
<<if $scene.firstAnal>>
<<applyExperience 'penis' 13 'very' $INCOGNITO>>
<<set $player.analvirginity = "gloryhole">>
<<set $scene.top = setup.getItemFromType('top')>>
<<if $scene.top != "">>
<<changeItemStatus $scene.top 'cumsoaked' '["set",100]'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_1'
0
'event_psychiatrist_session_anal_virginity_1'
true
"theme_technician_other_header"
>>
<<setThreshold 'anal' 'other_anal' "first_time" true>>
<<else>>
<<applyExperience 'penis' 8 'normal' $INCOGNITO>>
<</if>>
<<applyExperience 'whoring' 10 'terrible' $INCOGNITO>>
<<applyExperience 'bimbofication' 10 'terrible' $INCOGNITO>>
<<applyExperience 'anal' 8 'terrible' $INCOGNITO>>
<<set $scene.gloryholejob.money = 20>>
<<set $player.money.total+=$scene.gloryholejob.money>>
<<set $scene.gloryhole_service.totalmoney+=$scene.gloryholejob.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholejob.money>>
<<set $npc_barkeeper.analjobs+=1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
<<if $scene.firstAnal>>
Though a voice in the back of your head is screaming at you not to do this you ignore it, rising to your feet and turning around to expose your ass to the hard cock sticking out through the gloryhole. <<if setup.getItemFromType("plug") != "">>The moan that escapes your lips as you slide the plug out of your rear hole seems to confirm that you want this; that<<else>>Your heart races in anticipation as if all<</if>> your prior training as a hungry butt-slut has all been leading up to this moment.<br>
<br>
His <<getWordPenis $player>> is about average and you shiver as it slides between your cheeks, anticipation building before you take the plunge. Reaching back with one hand you aim him at your hole and then press backwards, moaning as, for the first time in your life, you feel a hot, human cock filling your ass.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
Your ass may be accustomed to things far thicker and longer but there is something powerful and different about feeling a real flesh and blood cock inside of you and you bite your lip and moan softly as you move back and forth.
<<else>>
You may have played with toys of similar size but there is something different about the real thing, how warm it inside of you, the slight give it of flesh and the way it moves as you slide forward and back.
<</if>>
<br><br>
"Fuck, your cunt is so tight!" The man grunts, your anonymity having left him with no idea what hole he's actually fucking.<br>
<br>
Egged on you brace yourself against the opposite wall and increase your pace, pressing your soft butt around the taped-up gloryhole and then leaning forward until he almost pops out, his gasps and grunts mingling with your own moans as you wonder which of the two of you is enjoying things more.<br>
<br>
Knees weak you lose focus as he starts thrusting as well, the timing difficult to manage and eventually you zig when you should have zagged, his cock popping free and then bursting, a rain of cum showering over your back.<<if $scene.top != "">> Your upper body bare you feel every drop as it trickles down your back, biting your lip as a shudder of debased lust rumbles through your body.<</if>><br>
<br>
"Goddamn, girl, that was really something." The guy finally states as his softening cock pulls back. "Here, you deserve this little extra." He adds, a few more credits shoved through the hole.<br>
<br>
Gathering up your "profits" you slowly come down, still in a bit of a daze that you really just did that, though there is no lying to yourself, you absolutely did <<if setup.getItemFromType("plug") != "">>and as you shove the plug back into its home you wonder how long it will be before you do it again...<<else>>what's particularly scary is that your first thought is how long will it be until you do it again?<</if>>
<<else>>
Rising to your feet you expose your rear and line up your hole. <<if setup.getItemFromType("plug") != "">>Carefully setting your plug aside you reach back with one hand to<<else>>Reaching back with one hand you<</if>>aim the hard cock where it belongs. As you push back and the cock slides deeper into your hole you moan. Sure, you may not be a stranger to taking it up the ass but there is something special and depraved about doing it like this; an anonymous fuckhole bent over and practically begging for it.<br>
<br>
You moan as you back up and his cock slides into you,
<<if setup.getTotalValue("anal") > 10>>
he may not be as large as you have become accustomed but there is just something about a hot cock sliding into your ass that can't help but turn you on.<br>
<br>
Extending an arm to the other side of the narrow stall you brace yourself and begin shifting foreward and back, squeezing down rhythmically as you bounce against the the gloryhole opening, sounds of pleasure echoing in the bathroom confirming that your customer is more than appreciative of your efforts.
<<else>>
You moan as you back up and his cock slides into you, filling you with hot man-meat. You push back until your butt is pressed firmly against the wall, as much of his <<getWordPenis $player>> as you can reach stuffed inside of you. Catching your breath you moan softly as he begins to slowly thrust.<br>
<br>
Bracing against the far wall of the narrow toilet stall you leave the fucking to your anonymous client, merely focusing on the wonderful sensation of his cock sliding in and out of your hole, your prostate bursting with delight at every stroke.
<</if>>
<br><br>
To your disappointment he soon cums, a small blast of <<getWordCum $player>> deposited deep in your hole before he withdraws. Legs weak you stagger slightly, leaning against the edge of the toilet as you <<if setup.getItemFromType("plug") != "">>stuff the plug back in your ass to seal everything in and<</if>> collect yourself.<br>
<br>
"Goddamn, girl, that was really something." The guy finally states as his softening cock pulls back. "Here, you deserve this little extra." He adds, a few more credits shoved through the hole.<br>
<br>
A few additional credits are slipped through the hole - not quite as good as the penis that was there but a few moments earlier but still a nice bonus. Catching your breath you pocket the cash.
<</if>>
<br><br>
[<<moveTo "room_usual_place_toilet" "Clean yourself up." 60>>]
</div>/*#
#desc: drink piss after work gloryhole blowjob
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange==true>>
<<if setup.getTotalValue("piss") <= 5>>
<<set $scene.pissChest = setup.checkTopBodySlot('tits','top')>>
<<changeItemStatus $scene.pissChest 'piss' '["set",50]'>>
<</if>>
<<applyExperience 'piss' 11 'normal' $INCOGNITO>>
<<applyExperience 'whoring' 10 'terrible' $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/gloryhole_piss_1.mp4">>
<div id="invframe" class="scrolltext">
You know exactly where this is going,
<<if setup.getTotalValue("piss") > 10>>
and you could hardly be happier
<<if setup.getTotalValue("piss") > 15>>
as you eagerly wrap your lips around his cock, swishing his <<getWordPiss $player>> around to savor and swallow every wonderful drop.
<<else>>
as you eagerly open your mouth and swallow his stream of <<getWordPiss $player>>.
<</if>>
<<else>>
and yet you open your mouth
<<if setup.getTotalValue("piss") > 5>>
the bitter... yet somehow oddly alluring, taste of <<getWordPiss $player>> splattering across your tongue as you quickly swallow to "avoid making a mess" you tell yourself... but you aren't so sure anymore.
<<else>>
the bitter, nasty taste of piss causing you to cough, some of his <<getWordPiss $player>> spilling down your chin.
<</if>>
<</if>>
<br><br>
He has quite a backlog of beer to unload but eventually the golden stream trickles off. Without thinking you lick him clean and you hear a gentle chuckle from the other side of the partition. "Good girl, you are just a born toilet slave, aren't you?" <br>
<br>
You shudder, even though you remain anonymous his words cut deep to remind you of what a depraved act you just performed. Catching your breath as the taste of urine fades from your mouth you listen to his footfalls fade into the distance and the door to the bathroom swing closed.<br>
<br>
<<printThought $player "Hey, he didn't wash his hands!">> You almost laugh at your thought, while true it seems a bit pedestrian compared to what you've just done...<br>
<br>
[<<moveTo "room_usual_place_toilet" "Clean yourself up." 60>>]
</div>/*#
#desc: city location alleyway leading to bodyshop
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Student Quarter Alleyway">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/city_student_quarter_alleyway.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.bodyshop.unlock_source == "technician">>
Remembering <<=ps(setup.getNpcName('npc_technician', 'first'))>> somewhat cryptic description you cautiously head down the dark alleyway. At first you think maybe she was just pulling your leg and that you've just found a boring dead end but as you reach the end of the alleyway you notice a glowing neon sign above a sealed up storefront.
<<else>>
A narrow alleyway catches your eye and you trepidatiously head down it. At first you think you've just found a boring dead end but as you reach the end of the alleyway you notice a glowing neon sign above a sealed up storefront.
<</if>>
<br><br>
[<<moveTo "room_bodyshop_exterior" "Look at the sign" 600>>]
</div>/*#
#desc: city location bodyshop exterior
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<set $player.flags.bodyshop.discovered = true>>
<</if>>
<<set $player.location to "Outside the NEW U Bodyshop">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/city_bodyshop_renovation.png">>
<div id="invframe" class="scrolltext">
A flickering neon "NEW U" sign casts a blue tint across the alleyway. The expansive storefront is securely sealed up and you wonder if the shop is, perhaps closed until you spy a lone booth next to the front door, like an old-fashioned phone booth but with tinted glass obscuring the interior.<br>
<br>
[<<moveTo "room_bodyshop_breast_machine_0" "Step into the booth" 300>>]<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter" 600>>]
</div>/*#
#desc: city location bodyshop breast alteration machine
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Outside the NEW U Bodyshop">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/city_bodyshop_breast_machine.png">>
<div id="invframe" class="scrolltext">
Inside the private booth you find an odd machine. The front of the machine is slightly concave in the rough impression mold of a feminine body shape. Examining it closer there is a small slot to insert credits and a selection screen with options running top to bottom None, A, C, DD, F, G.<br>
<br>
<<printThought $player "Wait, are those bra sizes?">><br>
<br>
Pressing a button at random an error message flashes "remove top and bra and step into position to calculate payment." <br>
<br>
[<<moveTo "room_bodyshop_breast_machine_1" "Step into the machine" 60>>]<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter" 600>>]
</div>/*#
#desc: city location bodyshop breast alteration machine choose size
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<setScene>>
<<if setup.getItemFromType("shirt") != "" || setup.getItemFromType("dress") != "" || setup.getItemFromType("strapless_dress") != "">>
<<useClothSetPush 'tmp'>>
<<set $scene.top = setup.getItemFromType("shirt")>>
<<if $scene.top == "">>
<<set $scene.top = setup.getItemFromType("dress")>>
<<if $scene.top == "">>
<<set $scene.top = setup.getItemFromType("strapless_dress")>>
<</if>>
<</if>>
<<removeItem $player $now $scene.top true>>
<<set $scene.bra = setup.getItemFromType("bra")>>
<<if $scene.bra != "">>
<<removeItem $player $now $scene.bra true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Outside the NEW U Bodyshop">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/city_bodyshop_breast_machine.png">>
<div id="invframe" class="scrolltext">
You secure the latch so that nobody will disturb you in the privacy of the booth before exposing your chest and stepping up to the machine. Positioning yourself in the concave spot feels quite comfortable, almost molding to your body and you feel a soft suction pulling against your chest as you sink forward into the machine.<br>
<br>
Looking at the menu you find that the size listing now has prices next to each entry.<br>
<br>
<<if !$player.flags.first_permanent_breasts>>
<<printThought $player "Do I really want to trust some random automated machine to give me breasts? Is that even possible? Is this even what I want?">><br>
<br>
Nervously you stare at your options.<br>
<br>
<</if>>
<<printBreastAlterationMenu $player.body.breastsize[0]>>
[<<moveTo "room_student_quarter" "Step away and return to the Student Quarter" 600 "<<useClothSetPop 'tmp' $player $now>>">>]
</div>/*#
#desc: city location bodyshop breast alteration machine size change
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<if $player.money.total >= $scene.price>>
<<set $scene.sizechange = $scene.breast_size - $player.body.breastsize[0]>>
<<set $player.body.breastsize[1] = $scene.breast_size>>
<<set $player.money.total -= $scene.price>>
<<set $scene.success = true>>
<<set $player.timebased.horny += 50>>
<<if $player.timebased.horny >= 100>>
<<set $scene.horny = $player.timebased.horny-100>>
<<set $player.timebased.horny = 50>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<if $scene.panties != "">>
<<changeItemStatus $scene.panties 'cumsoaked' '["set",100]'>>
<</if>>
<<else>>
<<set $scene.horny = 0>>
<</if>>
<<set $scene.new_breasts = ($scene.sizechange == $player.body.breastsize[1])>>
<<updateAllEffect $player 0>>
<<if $scene.new_breasts>>
<<if !$player.flags.first_permanent_breasts>>
<<set $player.flags.first_permanent_breasts = true>>
/* getting breasts from nothing */
<<applyExperience 'feminization' 15 'very' $ALONE>>
<<else>>
<<set $scene.new_breasts = false>>
<</if>>
<<elseif $scene.sizechange > 0>>
<<applyExperience 'feminization' 12 'very' $ALONE>>
<</if>>
<<else>>
<<applyExperience 'bimbofication' 7 'normal' $ALONE>>
<</if>>
<</if>>
<<set $player.location to "Outside the NEW U Bodyshop">>
<<include enterroom>>
<<initRoom>>
<<if $scene.success >= $scene.price>>
<<createBGR "./images/locations/city_bodyshop_breast_hypno.png">>
<<else>>
<<createBGR "./images/locations/city_bodyshop_breast_machine.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$scene.success>>
You press a button only to be met with a sour rejection note when you fail to deposit the required amount of credits. Apparently this machine only accepts cash and you don't currently have the funds to pay for this degree of alteration.<br>
<br>
<<printThought $player "Well that was dumb.">><br>
<br>
[<<moveTo "room_bodyshop_breast_machine_1" "Try a different setting" 60>>]<br>
<<else>>
You press the button and drop the required quantity of credits in a small drawer that shoots out. Once you've paid up the till retracts and a message pops up stating "payment received, remain still." <br>
<br>
For a moment you think you might have just been scammed only to gasp as a set of straps suddenly wrap around your body, tightening in an instant to hold you tight against the machine. Mouth wide in surprise you barely have time to react before something else is shooting towards you, a dark blob that covers your face, shoving something firm into your mouth even as it renders you blind, deaf and dumb and pulls you even tighter into the machine.<br>
<br>
Your objections muffled by the gag now occupying your mouth, you reflexively struggle in vain as your bonds get even tighter and you begin to feel strange suction pulling against your bare chest, twin rings <<if $player.body.breastsize[0]>0>>cinching around the base of your now enveloped breasts<<else>>sealing tight against your flat chest<</if>>.<br>
<br>
You gasp at the subtly pleasurable sensation only to find yourself inhaling something that smells, and tastes, subtly fruity. You feel a bit fuzzy, a sensation further enhanced as lights come on inside your mask displaying a strange hypnotic pattern.<br>
<br>
The panicked tension becomes impossible to hold onto as your body relaxes, the straps tightening even further so that you do not slip or even move even as you go completely limp.<br>
<br>
The previous mild pleasure coming from your breasts ramps up higher as what feels like tiny brushes swirl around your now-hard nipples as gentle nubs begin kneading at the sensitive surrounding flesh.<br>
<br>
<<if $scene.horny > 0>>
You were already aroused before stepping into the machine and now, totally restrained, drugged, gagged and subject to visual hypnosis while your breasts are delightfully played with... you cum, hard, <<if setup.getItemFromType("cage") != "">>leaking through your cage and <</if>>soaking your panties as you try to hump the machine.<br>
<br>
Your thoughts drenched in sex all you can wish is that as heavenly as the sensation of the machine playing with your breasts is, it would do even more. Helpless at the mercy of the mechanical contraption you have no way to relay your wish, merely moaning through your gag as your eyes roll back in pleasure, brought back to attention as the machine sounds a loud *DING*.
<<else>>
As good as the combination of sweet drugs, tight restraint, breast stimulation, hypnosis and <<if setup.getTotalValue("penis") < 5>>strangely the act of <</if>>sucking on your gag is you do not quite reach orgasm by the time the machine sounds a loud *DING*.
<</if>>
<br><br>
Your mask whisks away and the restraints release as swiftly as they were applied. You stagger out of the booth and look down at your new <<getWordBreasts $player>>.
<<if $scene.sizechange > 0>>
Giggling thanks to the swiftly fading after-effects of the drugs you give a bit of a bounce, admiring your new, larger breasts.
<<else>>
Though your breasts are now <<if $player.body.breastsize[0] == 0>>nonexistent<<else>>smaller<</if>> your body still tingles with pleasure, but also a slight lingering disappointment at your new, more modest figure.
<</if>>
Glancing back at the booth the door flashes with a parting message, vandals having painted over part of the text leaving it spelling out a perhaps more accurate farewell of "CUM_ AGAIN."
<<if $scene.horny > 0>>
<br><br>
Despite your orgasm you are still very aroused, amazed at the bizarre, yet effective breast alteration that got you off even as it perfectly reshaped your body to order.
<</if>>
<<if !$scene.new_breasts>>
<br><br>
<<printThought $player "Huh, I wonder what this place is going to be like when it opens for real...">>
<</if>>
<</if>>
<<if $scene.new_breasts>>
You're still trying to catch your breath and process what just happened. In a matter of moments you have gone from flat-chested with a generally masculine frame and then... You shake your head; as if your hips weren't enough the addition of the twin, perfect mounds on your chest turns your "feminine" dial hard enough to almost break it...<br>
<br>
Still in a daze you give a final glance down at your perky "additions" as you walk up the alleyway, your mind spinning as it tries to reconcile your previous self-perception with your "new" body.<br>
<br>
[<<moveTo "room_student_quarter" "Continue." 600 "<<useClothSetPop 'tmp' $player $now>><<setScene>>">>]
<<else>>
<br><br>
[<<moveTo "room_student_quarter" "Fix your clothes and return to the Student Quarter." 600 "<<useClothSetPop 'tmp' $player $now>><<setScene>>">>]
<</if>>
</div>/*#
#desc: go jogging
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyFatigue $player 50>>
<<applyExperience 'stamina' 9 'normal' $INCOGNITO>>
<<if setup.getTotalValue("stamina") < 6 && !setup.hasThreshold('stamina', 'jogging', 'first_jog')>>
<<setThreshold 'stamina' 'jogging' 'first_jog' true>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<elseif setup.getTotalValue("stamina") >= 8 && setup.getItemFromType("plug") != "" && !setup.hasThreshold('stamina', 'jogging', 'run_plugged')>>
<<setThreshold 'stamina' 'gym_stamina' 'run_plugged' true>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<</if>>
<</if>>
<<set $player.location to "The Streets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You go for a jog around the block.<br>
<br>
<<if setup.getTotalValue("stamina") >= 10>>
Jogging around the block <<if setup.getItemFromType("plug") != "">>even with a <<=setup.getItemName(setup.getItemFromType("plug"))>> in your ass, <</if>>has become too easy so you decide to do a proper run, instead.<br>
<br>
/* TODOfuture: other events? */
<<if $fetish.bestiality_hard && random(4) == 2>>
<<if $player.flags.fuckedbydogpackjogging > 0>>
Once again the pack of neighborhood dogs starts to chase you with enthusiasm. You know from experience that they'll catch you eventually...<br>
<br>
[<<moveTo "event_jogging_dog_pack_repeat" "Give it your all and try to escape." 1200 "<<set $scene.style = 'flee'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_repeat" "Give them a merry chase before the fun begins." 300 "<<set $scene.style = 'run'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_repeat" "Resign yourself to the inevitable and let them take you now." 60 "<<set $scene.style = 'resigned'>>">>]<br>
<<if setup.getTotalValue("bestiality") >=3>>
[<<moveTo "event_jogging_dog_pack_repeat" "Why wait? Get down on all fours for the REAL workout." 30 "<<set $scene.style = 'glee'>>">>]
<<else>>
[@@.link_locked;I should at least pretend to run away, I'm not the kind of girl to just bend over like a bitch immediately... am I?@@]
<</if>>
<<elseif $player.flags.fuckedbydogjogging == 0>>
Partway through your jog you gain a partner, a large dog falling in next to you and matching your pace. At first you're a bit worried at its presence but the dog smiles up at you, seemingly just interested in having someone to run with.<br>
<br>
You find the company enjoyable as well, finishing off the rest of you jog with your new companion at your side before arriving back in front of your building.<br>
<br>
You give the dog a congratulatory scratch behind the ear when you notice two things - one, your new friend is male and two he is apparently VERY happy at the moment...<br>
<br>
<<printThought $player "Do I... do I dare?">><br>
<br>
[<<moveTo "event_jogging_dog_1" "Just scratch his ears and ignore the throbbing beast dangling below his belly." 60 "<<set $scene.sex = false>>">>]<br>
[<<moveTo "event_jogging_dog_1" 'Find a private alley for some more "fun" with your new friend.' 120 "<<set $scene.sex = true>>">>]
<<else>>
Running along you seem to attract the attention of a small pack of neighborhood dogs. They seem a bit more energetic than your previous friend giving swift chase after you. Looking back you don't think there's any way you can outrun them, and who knows what they'll do if they succeed in chasing you down...<br>
<br>
[<<moveTo "event_jogging_dog_pack_1" "Hide from them." 60 "<<set $scene.action = 'hide'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_1" "Maybe they just want to have some fun? Running might antagonize them to chase..." 120 "<<set $scene.action = 'play'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_1" "Keep trying to run." 120 "<<set $scene.action = 'run'>>">>]
<</if>>
<<else>>
You have a bit of trouble with a pack of dogs that starts to chase you, but you manage to get away before they can catch up.<br>
<br>
<<if setup.getTotalValue("stamina") > 15>>
By the end of your run you're still feeling almost completely fresh. Looks like you either need to find something else to do for cardio or start running marathons because <<if setup.getItemFromType("plug") != "">>even with the <<=setup.getItemName(setup.getItemFromType("plug"))>> shifting and grinding and stimulating you with each step <</if>>this isn't doing much.
<<else>>
You manage to get your heart-rate up a bit, but just running<<if setup.getItemFromType("plug") != "">>, even with the <<=setup.getItemName(setup.getItemFromType("plug"))>> shifting and grinding and stimulating you with each step, <</if>> isn't really doing much to improve your cardio at this point.
<</if>>
<br><br>
[<<moveTo room_foyer "Home" 1800>>]
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
<<if setup.getItemFromType("plug") != "">>
The act of jogging with a <<=setup.getItemName(setup.getItemFromType("plug"))>> occupying your bum proves quite different from a "normal" run. Every jolting step has the plug shifting inside of you, pressing against your prostate and sending your heart racing.<br>
<br>
<<if setup.getTotalValue("stamina") < 8>>
In the end the added distraction proves too much as you are forced to slow to a walk, the continued, if more subtle, distraction of the plug ensuring that you don't quite manage to calm down.
<<else>>
You've built up your stamina enough to have the energy to "enjoy" your rear friend whilst also maintaining a good jogging pace for the whole two trips around the block.
<</if>>
<<else>>
Though you're soon breathing heavy you manage to push through, maintaining a jogging pace twice around the block, though you can't but feel like something is missing to really get the most out of your workout.
<</if>>
<br><br>
<<include workoutBreasts>>
/* TODO: other events? */
Your jog is relatively uneventful. You pass a pack of dogs sleeping in an alleyway, one of them looks up but apparently decides you aren't interesting enough to chase and goes back to sleep.<br>
<br>
[<<moveTo "room_foyer" "Home" 1800>>]
<<else>>
You haven't gone much more than a dozen feet before you start breathing heavy, by the time you're to the end of the block you've slowed, finishing your circuit at a walking pace.<br>
<br>
<<printThought $player "Wow am I out of shape.">><br>
<br>
Trudging back up to your flat you feel physically exhausted, but mentally energised, having taken the first step towards building up your cardio.<br>
<br>
<<include workoutBreasts>>
[<<moveTo "room_foyer" "Home" 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: interact with dog at the end of your run.
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.sex>>
<<applyExperience 'penis' 7 'very' $SEEN_STRANGER>>
<<if setup.hasThreshold('bestiality', 'dog', 'basic')>>
<<applyExperience 'bestiality' 2 'little' $SEEN_STRANGER>>
<<else>>
<<setThreshold 'bestiality' 'dog' 'basic' true>>
<</if>>
<<set $player.timebased.dirty += 25>>
<<else>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-5)>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location to "A Deserted Alleyway">>
<<else>>
<<set $player.location to "The Streets">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.sex>>
<<createBGR "./images/locations/alley.png">>
<<else>>
<<createBGR "./images/locations/street.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Leading the dog into a nearby alleyway it rolls onto its back to expose its belly and its throbbing, unsheathed member. A little nervous you reach down and take it in hand, the dog showing obvious delight as you feel the very hot shaft in your hand.<br>
<br>
Stroking up and down you marvel at its heat and unique texture, watching as its knot swells you fondle with both hands until the beast starts to get up, rising to its feet and swiftly circling around to nose your rear...<br>
<br>
<<printThought $player "What it wants... do I dare?">><br>
<br>
<<if $player.analvirginity == "">>
[@@.link_locked;No way, taking it in the rear for the first time and it not even being a human? Nope, no way am I that depraved.@@]<br>
<<else>>
[<<moveTo "event_jogging_dog_2" "Expose your rear and let him finish." 600 "<<set $scene.anal = true>>">>]<br>
<</if>>
[<<moveTo "event_jogging_dog_2" "Gently push him off and be on your way." 120 "<<set $scene.anal = false>>">>]
<<else>>
The dog pants happily as you scratch behind his ears and rub his belly, rubbing up against your leg for a bit before finally wandering off. You feel a bit happier with yourself having enjoyed the brief unconditional approval of the animal and you have a bit of a skip in your step as you head up to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 120>>]
<</if>>
</div>/*#
#desc: option for full sex with dog after run.
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.anal>>
<<set $player.flags.fuckedbydogjogging += 1>>
<<set $player.timebased.dirty += 25>>
<<applyExperience 'bestiality' 2 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<set $player.timebased.horny = 0>>
<<else>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-5)>>
<</if>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/alley.png">>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
Pulling down your pants <<if setup.getItemFromType("plug") != "">>and removing the plug from your rear <</if>>you get down on your hands and knees as your new friend drools in anticipation.<br>
<br>
He shows remarkable patience, waiting for you to get into position before running his tongue between your legs, giving you a lingering tongue-washing rimjob until you too are panting in anticipation.<br>
<br>
You bite your lips he moves forward, one forepaw landing on either side of your head as his hot dog-cock presses against your hole.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
Though well within your limits his cock is exotic and interesting, so much hotter than any human member and then when he hits depth and you feel his knot swell for the first time... You are in heaven, moaning in delight as you are, for the first time, filled with canine cock.
<<else>>
He is big, just like you love, his almost searing-hot member plunging into you with a single powerful thrust. You gasp once and then moan as his knot swells inside of you, locked ass to cock with your new "friend" as he sets forth humping away.
<</if>>
<br><br>
Even mostly immobile thanks to his knot he manages to churn up your insides but good and, as your eyes roll back in pleasure and your limbs collapse beneath you, he fills you with cum, your own delight leaking out onto the pavement.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
He is quite large by your standards, but also very smooth and, with the help of his copious dog cum, he manages to slide into you, working his way deeper and deeper until it feels like a giant heated pylon is filling your entire insides.
<<else>>
It is tight, so, so tight but the tip of him manages to slide into you, his heat flowing through your body and making you moan with each shallow thrust, working his way as deep as he can, his heat radiating through your body.
<</if>>
<br><br>
Lightly pinned to the ground under his weight you moan like a bitch in heat, as he thrusts back and forth, your body far from able to take his full girth - to say nothing of the large knot that occasionally presses against his hole. Still, it proves to be enough and you feel a swelling deep inside as a hot jet of dog cum is deposited inside of you as the intensity of things sparks a climax of your own.
<</if>>
<br><br>
Finally separating he leans down to playfully lick your face before scampering off. It takes you several minutes but you eventually manage to return to your feet, some of his seed leaking down your leg<<if setup.getItemFromType("plug") != "">> until you slide your plug back into place<<else>>as you<</if>> leave the alleyway and head back up to your flat.
<<else>>
Gently pushing the animal out of the way you hurry back to your flat before you can be tempted to do anything crazy. He whines a little but leaves you to depart, capering away as you close the door behind you and head for the elevator.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home" 120>>]
</div>/*#
#desc: Chased by dogs whilst running
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<switch $scene.action>>
<<case 'hide'>>
<<applyFatigue $player 30>>
<<case 'run'>>
<<applyFatigue $player 40>>
<<case 'play'>>
<<applyFatigue $player 10>>
<</switch>>
<</if>>
<<set $player.location to "The Streets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'hide'>>
Putting on a burst of speed you manage to duck into a shopfront, the shop owner shooing the dogs away and giving you some water.<br>
<br>
Thanking the shopkeeper for the assistance you jog home, always on the lookout for the return of the dogs.<br>
<br>
<<printThought $player "That was a bit scary... though I guess them chasing me is a bit of a bonus encouragement to get better cardio!">><br>
<br>
[<<moveTo "room_foyer" "Home" 1200>>]
<<case 'run'>>
<<if $fetish.get_raped>>
You put on a burst of speed in hopes of outrunning the dogs but they continue to close. You cut through an alley in hopes of reaching your home, glancing back to note that they are about to overtake you, knocking you to the ground and then circling around your fallen form.<br>
<br>
[<<moveTo "event_jogging_dog_pack_2" "Continue" 300 "<<set $scene.style = 'rape'>>">>]
<<else>>
You put on a burst of speed in hopes of outrunning the dogs but they continue to close. You come to an alley and are faced with a decision.<br>
<br>
[<<moveTo "event_jogging_dog_pack_2" "Maybe it's better to just give in? After all, you had fun with your friend what's a few more partners?" 300 "<<set $scene.style='give_in'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_2" "Dig deep, you recall there's a liquor store at the far end of the alley if you can make it a little further you'll be safe..." 300 "<<set $scene.style='saved'>>">>]<br>
<</if>>
<<case 'play'>>
Finding a private patch of grass you turn to find you were right - the dogs just looking for a bit of fun and soon you are rolling around together as they lick you enthusiastically and you pet whatever comes into reach.<br>
<br>
From your position on your back you can't help but notice that most of the dogs are quite... aroused, <<if setup.getTotalValue("penis") > 10>>deliciously tantalizing<<else>>hypnotically intimidating<</if>> dog-cocks dangling just within reach...<br>
<br>
<<printThought $player "One dog was one thing... do I dare take on a whole pack?">><br>
<br>
[<<moveTo "event_jogging_dog_pack_2_abort" "That seems a bit much, and you're all having plenty of time just playing." 300>>]<br>
[<<moveTo "event_jogging_dog_pack_2" "You're too excited by the possibilities, time to explore more fun with your canine friends..." 300 "<<set $scene.style='willing'>>">>]<br>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: decline to fuck pack of dogs
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-5)>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/alley.png">>
<div id="invframe" class="scrolltext">
You enjoy playing with the pack of dogs, making sure each of them gets some good belly rubs and scratches behind the ear as they return the favor showering you in slobbery "kisses." <br>
<br>
Though it wasn't the workout you had been planning on you enjoy a bit of de-stressing and when the dogs finally start trickling away they leave you feeling a bit more relaxed.<br>
<br>
With a smile on your face you watch the last of the dogs walk out of the alleyway and head back to your apartment.<br>
<br>
[<<moveTo room_foyer "Home" 600>>]
</div>/*#
#desc: Chased by dogs whilst running
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<switch $scene.style>>
<<case 'rape' 'give_in' 'willing'>>
<<applyExperience 'bestiality' 7 'very' $SEEN_STRANGER>>
<<applyExperience 'stamina' 14 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<setThreshold 'stamina' 'jogging' 'hounded' true>>
<<set $player.flags.fuckedbydogpackjogging = 1>>
<<set $player.timebased.dirty += 25>>
<<set $scene.pants = setup.getItemFromType("legwear")>>
<<changeItemStatus $scene.pants 'cumsoaked' '["set",100]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<case ''>>
<<applyExperience 'stamina' 12 'very' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/alley.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'rape'>>
Lungs burning, legs on fire you stumble forward a few more steps and collapse into an alleyway. Arriving moments later the dogs circle you, the leader of the pack approaching, his canine cock hard as he paces around your fallen form and then moves slowly around behind.<br>
<br>
<<printThought $player "This is really happening...">><br>
<br>
<<if setup.getItemFromType("plug") == "">>
You have only a moment to think before he is upon you, his hard dog cock working its way under your clothes to thrust into your unprotected hole.
<<else>>
You have only a moment to think before he is upon you, his hard dog cock working its way under your clothes to somehow displace the plug in your ass and thrust into your newly unoccupied hole.
<</if>>
<br><br>
There on the cold street he fucks you hard, knotting deep in your ass and rutting you thoroughly as his drool trickles down over your face. The rest of the pack looks on in silence until he finishes, thick dog splooge leaking out of your ass and soaking into your pants as you try to rise to your feet.<br>
<br>
You are knocked down again, a second dog mounting you in mimic of the alpha, the combination of dog cum and your gaping hole an invitation, the feat repeated by at least half a dozen more beasts before they finally wander off, leaving you in a pool of cum.<br>
<br>
Exhausted you finally stagger to your feet<<if setup.getItemFromType("plug") != "">>, mindlessly shoving the plug back into your used hole in some vain effort to step the tide of cum leaking down your leg.<<else>> attempting to clench down to stop the flow of canine cum trickling down your leg.<</if>><br>
<br>
Humiliated, exhausted and bred like a bitch you stagger home. The whole time a strange, dark thought floats through your mind.<br>
<br>
<<printThought $player "Despite all that... that really was a good workout...">><br>
<br>
[<<moveTo room_foyer "Home" 600>>]
<<case 'saved'>>
You try to escape only to stumble, glancing over your shoulder you brace for the pack to arrive only for the "friend" you made on previous jogs to appear, the large animal leaping into position between you and your pursuers.<br>
<br>
Arching his back he growls, the other dogs circling for a moment before deciding that they do not want anything to do with him and running away.<br>
<br>
Giving them a parting bark as if to say "and stay out!" your saviour walks over to you and licks your face comfortingly.<br>
<br>
Hugging him gratefully you give him the scratchies you know he likes as you contemplate whether you want to give him an even greater reward...<br>
<br>
[<<moveTo "event_jogging_dog_pack_3" "Just head home." 300 "<<set $scene.sex = true>>">>]<br>
[<<moveTo "event_jogging_dog_pack_3" "Give him a more intimate reward." 300 "<<set $scene.sex = false>>">>]
<<case 'give_in' 'willing'>>
<<if $scene.style == 'willing'>>
Somehow knowing exactly what you're thinking your new canine friends are soon rubbing their cocks against you and it isn't long before your
<<if setup.analyzeWornTags(['skirt','pants']) == 'skirt'>>skirt is<<else>>pants are<</if>> off
<<if setup.getItemFromType("plug") == "">>and your plug is out <</if>>and you feel the first of their cocks slide into your ass.
<<else>>
Stumbling to a stop you may have initially gave in due to exhaustion but as the first of their hard, hot cocks approaches you find yourself licking your lips, exposing your rear<<if setup.getItemFromType("plug") == "">> and removing your plug to clear the way<</if>>.
<</if>>
<br><br>
They take you there in the alleyway, not brutally, but still hard, the leader the first to plunge his cock into your hole <<if setup.getTotalValue("anal") > 10>>knotting with ease<<else>>his knot pounding against your entrance, unable to quite force its way inside<</if>>.<br>
<br>
Howling in pleasure he ruts you fast and hard, the rest of the pack licking your as if in comfort as they wait their turns.<br>
<br>
Between fatigue and the weight of the rotating series of beasts that make use of your hole you have not the slightest opportunity to rise... not that you would really want to as the feeling of one hot canine cock after another plunging into you is enough to get you off not once, but twice, your seed mixing with the canine cum leaking out of your ass to pull below your hips.<br>
<br>
Eventually the pack tires, wandering off to leave you alone to finally stagger to your feet and trudge home, your thighs soaked with cum.<br>
<br>
<<printThought $player "Well that was certainly a unique sort of intense workout...">><br>
<br>
[<<moveTo "room_foyer" "Home" 1200>>]
<<default>>
ERROR: unexpected scene.style: <<=$scene.style>>
<</switch>>
</div>/*#
#desc: reward your canine friend after he chases off pack
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.sex>>
<<applyExperience 'penis' 9 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 2 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<set $player.timebased.horny = 0>>
<<set $player.flags.fuckedbydogjogging += 1>>
<<else>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-5)>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location to "A Deserted Alleyway">>
<<else>>
<<set $player.location to "The Streets">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.sex>>
<<createBGR "./images/locations/alley.png">>
<<else>>
<<createBGR "./images/locations/street.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Your friend doesn't have to be asked twice, as soon as you bend over and expose yourself he sets to work licking your hole <<if setup.getItemFromType("plug") != "">>your plug slipping free as he<<else>>to<</if>> prepare the way for what is coming next.<br>
<br>
You do not have long to wait before he mounts you, surprisingly gently despite his size and strength as he plunges his hot cock into your hungry hole.<br>
<br>
He is just as big as you remembered
<<if setup.getTotalValue("anal") > 10>>
and you moan as his knot swells inside of you.
<<else>>
and you moan as slides deep, his knot yet proving too much for you to take.
<</if>>
Humping away it is not long before you feel him swell a hair wider, the only warning you get before he pumps his hot seed into your belly. Your body shudders as you cum as well gasping in ecstasy as he barks his approval.<br>
<br>
So overwhelmed by pleasure you almost pass out but your friend is there once again, licking your face until you nuzzle him back. Rising to your feet you fix your clothes<<if setup.getItemFromType("plug") != "">>and replace the plug in your ass<</if>>, your faithful friend trotting next to you as he escorts you home.
<<else>>
After giving him a good thorough petting you return to your feet and slowly head home, your friend guarding you the whole way.<br>
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home" 120>>]
</div>/*#
#desc: Chased/fucked by dogs whilst running (repeat)
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'stamina' 14 'unbelievable' $EXPOSED>>
<<applyFatigue $player 40>>
<<if $scene.style != 'flee' || setup.getTotalValue("stamina") <15>>
<<applyExperience 'anal' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 7 'very' $SEEN_STRANGER>>
<<set $player.timebased.dirty += 25>>
<<alterStatAllWorn 'cum' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<if $scene.style == 'glee' && !setup.hasThreshold('bestiality', 'dog', 'advanced')>>
<<setThreshold 'bestiality' 'dog' 'advanced' true>>
<</if>>
<<set $player.flags.fuckedbydogpackjogging += 1>>
<</if>>
<</if>>
<<if $scene.style != 'flee'>>
<<set $player.location to "A Deserted Alleyway">>
<<else>>
<<set $player.location to "The Streets">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.style != 'flee'>>
<<createBGR "./images/locations/alley.png">>
<<else>>
<<createBGR "./images/locations/street.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'flee'>>
You put on the jets, running as hard as you can
<<if setup.getTotalValue("stamina") > 15 || !$fetish.get_raped>>
as you glance back to see the pack slowly receding behind you. Heart racing, blood pumping you run for all you've got, maintaining the same breakneck pace until you reach your apartment making your way up the stairs as a cool-down.<br>
<br>
<<printThought $player "Whew, that was close! I guess it's good motivation but maybe I should find somewhere safer to work on my cardio?">>
<<else>>
but you can't maintain such a frantic pace for long and, as you start to slow, you glance back you find that the pack is steadily gaining.<br>
<br>
Your steps slow and it is not long before the pack is upon you, knocking you to the ground and pulling at your clothes<<if setup.getItemFromType("plug") != "">>, the plug sliding out of your ass<</if>> as the alpha mounts you from behind.
<</if>>
<<case 'run'>>
You lead your canine friends on a merry chase but, as always, they eventually catch up to you and playfully knock you to the ground.<br>
<br>
Eagerly anticipating what is to come you pull down your pants<<if setup.getItemFromType("plug") != "">> and slide the plug out of your ass<</if>> to clear the way for the forthcoming dog cock.
<<case 'resigned'>>
Glancing back at the approaching dogs you give up. Better to bend over and submit to their lustful needs now. After all, the alternative is no different, you'll just be exhausted before they start to fuck you.<br>
<br>
Down on hands and knees you have just enough time to pull down your pants <<if setup.getItemFromType("plug") != "">> and slide the plug out of your ass<</if>> before they reach you, canine cocks hard and ready.
<<case 'glee'>>
Just the sight of your canine friends has you ready to bend over in the middle of the street but you manage to have just enough self-control to duck into a private alleyway before indulging your depraved perversion.<br>
<br>
Down on hands and knees you have just enough time to pull down your pants <<if setup.getItemFromType("plug") != "">> and slide the plug out of your ass<</if>> before they reach you. Your ass quivers and your mouth waters in anticipation of their hard and ready canine cocks.
<<default>>
ERROR unknown style: <<=$scene.style>>
<</switch>>
<br><br>
<<if !($scene.style == "flee" && setup.getTotalValue("stamina") > 15)>>
There in the alleyway the pack of dogs give it to you hard and deep. With their "assistance" you have a workout like no other as they fuck you like the
<<switch $scene.style>>
<<case 'flee'>>
exhausted
<<case 'run'>>
enthusiastic
<<case 'resigned'>>
broken
<<case 'glee'>>
gleeful
<</switch>> bitch that you are.<br>
<br>
<<switch $scene.style>>
<<case 'flee'>>
Breaths coming ragged as your sore ass is repeatedly raped you lay there and take it, too tired to do anything else until the lowliest member of the pack has had his way with you, leaving you lying in a pool of cum, drool and tears.<br>
<br>
Eventually finding the energy to stagger to your feet you <<if setup.getItemFromType("plug") != "">>fumble the plug back into your ass<</if>> and trudge home.<br>
<br>
<<printThought $player "Maybe I should find somewhere safer to work on my cardio.">>
<<case 'run'>>
<<if setup.getTotalValue("stamina") > 15>>
Despite taking them all at least once, and the alpha twice, you're still raring for more when they slink away, spent and exhausted.<br>
<br>
With a sigh you straighten your clothes<<if setup.getItemFromType("plug") != "">>, shove the plug back in your ass where it belongs<</if>> and run home, dog-cum sloshing inside of you the whole way.
<<else>>
As good as your cardio has become getting fucked by that many dogs in succession is a workout like no other. Exhausted, but satisfied after taking it hard and deep from the whole pack you walk home<<if setup.getItemFromType("plug") != "">>, the re-installed plug preventing any of their thick emission from leaking out your used ass<<else>> cum slowly leaking down your leg with each step.<</if>>
<</if>>
<br><br>
<<printThought $player "Mmmm, now THAT's what I call a workout...">>
<<case 'resigned'>>
Not having "run them out" a bit first the pack seems even more lustful, each dog fucking you at least once until you are lying broken in a slowly spreading pool of cum leaking out of your ass.
<<if setup.getTotalValue("stamina") > 15>>
Tired, but not exhausted you push yourself back to your feet<<if setup.getItemFromType("plug") != "">>, stuff the plug into your cum-slick, gaping hole<</if>> and walk home.
<<else>>
Somehow getting back up<<if setup.getItemFromType("plug") != "">> and fumbling the plug back into your gaping, used hole<</if>> you stagger home.
<</if>>
<br><br>
<<printThought $player "Maybe I should find somewhere... safer to work on my cardio.">>
<<case 'glee'>>
Like a bitch in heat, literally, you are soon taken to heaven, your entire world becoming one of canine cock as they take turns knotting deep in your ass or "warming up" in your mouth or hands.<br>
<br>
Through it all you joyfully indulge like a wanton slut, making sure that every member of the pack is drained, still eager for more when the last hound finally deflates and slides out of your rear, leaving you to <<if setup.getItemFromType("plug") != "">>re-install your the plug to prevent their thick emission from leaking out your used ass<<else>>stagger home, cum slowly leaking down your leg<</if>> with each step.<br>
<br>
<<printThought $player "Mmmm, now THAT's what I call a workout...">>
<</switch>>
<br><br>
<</if>>
[<<moveTo "room_foyer" "Home" 120>>]
</div>/*#
#desc: gym bimbofication class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.skip_bimbo = false>>
/* this is to prevent speeding through one class' content in the same visit */
<<if $scene.hasOwnProperty('bimbo') && $scene.bimbo>>
<<set $scene.skip_bimbo = true>>
<</if>>
<<switch $scene.swolebro>>
<<case 1>>
<<if setup.getTotalValue("cardio") < 5>>
<<set $scene.skip_bimbo = true>>
<</if>>
<<case 2>>
<<if setup.getTotalValue("cardio") < 10>>
<<set $scene.skip_bimbo = true>>
<</if>>
<<case 3>>
<<if setup.getTotalValue("cardio") < 15>>
<<set $scene.skip_bimbo = true>>
<</if>>
<<case 4>>
<<set $scene.skip_bimbo = $scene.bimbo || random(1,10) <=6>>
<<set $now to setup.advanceDate($player, $now, "minutes", 30)>>
<</switch>>
<<if !$scene.skip_bimbo && $npc_fit_bimbo.stage >= 4>>
<<applyExperience 'bimbofication' 7 'very' $EXPOSED>>
<<applyFatigue $player 20>>
<<set $scene.shoes = setup.getItemFromType('shoes')>>
<<addItem 'workout_heels'>>
<<swapItem $player $now 'workout_heels'>>
<<set $scene.class = random(1,3)>>
<<switch $scene.class>>
<<case 1>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<set $scene.nimble_bimbo = setup.getTotalValue("dexterity") >= 6 && !setup.hasThreshold('dexterity', 'other', 'nimble_bimbo')>>
<<if $scene.nimble_bimbo>>
<<setThreshold 'dexterity' 'other' 'nimble_bimbo' true>>
<</if>>
<<applyExperience 'stamina' 8 'very' $EXPOSED>>
<<applyExperience 'dexterity' 11 'almost' $EXPOSED>>
<<applyExperience 'heels' 8 'very' $EXPOSED>>
<<case 2>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyExperience 'stamina' 13 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 12 'normal' $EXPOSED>>
<<applyExperience 'oral' 12 'unbelievable' $EXPOSED>>
<<case 3>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<applyExperience 'stamina' 12 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 12 'very' $EXPOSED>>
<</switch>>
<</if>>
<<set $scene.bimbo = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_bimbo.png">>
<div id="invframe" class="scrolltext">
<<if $scene.skip_bimbo>>
You try to attend another bimbo fitness workout but the room is empty, it looks like they aren't running any more classes today.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<else>>
<<switch $npc_fit_bimbo.stage>>
<<case 1>>
You walk into one of the private classrooms in the back of the gym to find it occupied by over half a dozen drop-dead gorgeous women. Their attire can, at best, be referred to as "skimpy" (and mostly pink) all done up with perfect, slutty makeup, and not a one of them had breasts smaller than a double D.<br>
<br>
Spotting you from across the room a familiar blonde rushes over with a grin, scooping you up with a hug that has both of you about to pop out of your tops. "@@.npc_fit_bimbo;Like, you made it in, yay! So, yea, I promise you this is going to be, like, the BEST, most FUNctional workout class you've ever been to. Why don't you change into a pair of heels, we're about to get started!@@"<br>
<br>
You pause, suddenly realizing that every woman you can see is wearing a pair of steep pink heels, a rack of which is against one wall. Noticing your confusion your friend quickly clarifies.<br>
<br>
"@@.npc_fit_bimbo;Yea, like, they don't want us to wear them in the gym proper, it being bad for the floor and all, but it's, like, train how you work or whatever so of course we need to wear them for class!@@"<br>
<br>
She skips away leaving you to get "changed." <br>
<br>
[<<moveTo "event_gym_bimbo_1" "Change into a pair of pink high heels" 1800>>]<br>
[<<moveTo "room_gym_main" "This is weird and... maybe unsafe? Leave the class." 60>>]
<<case 2>>
Entering the private classroom where the "bimbo fitness" class meets you find the room filled with stationary bikes, with a twist, instead of a "normal" bike seat each one sports either one or a matching pair of dildos.<br>
<br>
Most of the class is already in position atop their bikes, slowly warming up with looks of obvious pleasure as they smile and wave at you in greeting.<br>
<br>
[<<moveTo "event_gym_bimbo_2" "Change into a pair of pink workout heels and mount a cycle." 60>>]<br>
[<<moveTo "room_gym_main" "Nope, I've got to draw a line somewhere, time to leave the class." 60>>]
<<case 3>>
You show up for another private "bimbo fitness" class. Looking around it seems like the other girls have changed into their heels and grabbed a thick suction cup dildo before spreading across the room.<br>
<br>
<<printThought $player "Huh, I wonder what we're going to do with that?">><br>
<br>
[<<moveTo "event_gym_bimbo_3" "Get a pair of heels and a fake cock, woo!" 900>>]<br>
[<<moveTo "room_gym_main" "I don't think this is really fitness anymore, time to leave." 60>>]
<<case 4>>
<<switch $scene.class>>
<<case 1>>
<<if $scene.nimble_bimbo>>
You attend another bimbo fitness class and something seems to just click. Your thoughts turn pure pink as you perfectly execute every move even better than the instructor, perfectly in control of your body as you pose, strut, writhe and generally show off.<br>
<br>
Though your mind is fuzzy at the end of the workout it is a good fuzzy, more sensitive to your own body and more connected to and aware of your every move.
<<else>>
You attend another bimbo fitness class, aerobically practicing all the important poses a sexy slut might need to assume in her primary goal of "making cocks hard." <br>
<br>
Your mind a bit fuzzy, as it always is after this sort of workout, you plan your next move.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<case 2>>
You attend another bimbo fitness class, "enjoying" a "hole body" workout as you train your whole body - throat and rear... and the rest of you culminating in sharing a large double dildo ass to ass with a "partner." <br>
<br>
As you are changing shoes after class your partner comes up to you with a request.<br>
<br>
[<<moveTo "event_gym_bimbo_blowjob_1" "Continue." 60 "<<swapItem $player $now $scene.shoes>>">>]
<<case 3>>
You attend a bimbo spin class, riding an exercise bike with a dildo thrusting in and out of your ass as you pedal and pump for all you're work.<br>
<br>
Your mind a bit fuzzy, as it always is after this sort of workout, you plan your next move.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<default>>
ERROR: random bimbo fitness value out of bounds.
<</switch>>
<<default>>
ERROR; unexpected npc_fit_bimbo.stage <<=$npc_fit_bimbo.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: first gym bimbofication class - high heel posing
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<set $npc_fit_bimbo.stage = 2>>
<<set $scene.heeldelta = setup.getTotalValue("heels") - setup.getItemObj("workout_heels").heels.difficulty>>
<<set $scene.shoes = setup.getItemFromType('shoes')>>
<<addItem 'workout_heels'>>
<<swapItem $player $now 'workout_heels'>>
<<applyExperience 'stamina' 8 'very' $EXPOSED>>
<<applyExperience 'heels' 8 'very' $EXPOSED>>
<<applyExperience 'dexterity' 11 'almost' $EXPOSED>>
<<applyExperience 'bimbofication' 7 'very' $EXPOSED>>
<<if $scene.heeldelta > 0>>
<<setThreshold 'stamina' 'gym_stamina' 'bimbo_cardio_1' true>>
<</if>>
<<set $player.timebased.horny += 20>>
<<applyFatigue $player 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_bimbo.png">>
<div id="invframe" class="scrolltext">
<<if $scene.heeldelta < -2>>
The heels are just too steep for you to manage. You wobble a bit and feel like you're going to snap an ankle, forced to put them back and duck out of the strange class before it has begun.<br>
<br>
<<printThought $player "Guess I need more practice in heels">><br>
<br>
[<<moveTo "room_gym_main" "Change to your previous shoes and do something else." 60 "<<swapItem $player $now $scene.shoes>>">>]
<<else>>
<<if $scene.heeldelta > 2>>
You are accustomed to far steeper heels, slipping into the snug "workout heels" and quickly getting into position with the rest of the class.
<<elseif $scene.heeldelta >= 0>>
The heels are right around your limit, walking would be fine and you hope your skills can keep up with whatever the class will involve.
<<else>>
You feel a bit unsteady in the steep heels, but they're quite securely attached to your feet and you think you can probably handle them for the length of a class. You carefully walk over to take your spot with the rest of the class.
<</if>>
<br><br>
A particularly perky blonde, who looks practically like a barbie doll come to life skips to the front of the class and begins instruction.<br>
<br>
"Alright, girls, let's work through our positions!" Some high-tempo techno/bubblegum pop starts playing as she leads you through an aerobic routine... of sorts.<br>
<br>
While you are soon working up a sweat the positions themselves are... well, they range from provocative to straight lewd. You start by practicing bending over - a basic stretch, in theory but you are encouraged to make a show of it, bending at the hips, sticking out your rear, then slowly rising before glancing over your shoulder and giving your ass a loud "smack." The smack seems particularly important as the instructor calls out encouragement for anyone who isn't making a properly loud slap.<br>
<br>
Next you're bending over again, legs spread this time as you "twerk it, work it, get the boys to jerk it!" <br>
<br>
From there it's a series of quasi-dance moves, the room full of sexy, writhing feminine flesh as you go through a sequence alternating leaning forward, pressing your breasts together and provocatively caressing your own rear.<br>
<br>
Finally it's down on the floor, where you are on shoulders and heels, legs spread, humping the air.<br>
<br>
<<if setup.getTotalValue("stamina") < 5>>
You're already breathing pretty heavy but the class launches straight into another repetition.
<<else>>
You're in good enough shape to have kept up without too much trouble as the class transitions into another repetition of the lewd sequence.
<</if>>
The instructor calls out encouragement to "really work it, girls!" As the musical accompaniment takes its own turn, a bimbo-riffic techno track built around the hook of "I exist to make cocks hard." <br>
<br>
Two more runs through the provocative routine has you feeling like a mindless slut, joining the other girls to shed your heels. There are hugs, kisses and a bit of mild groping as the other girls welcome you to the class before you eventually scatter and continue on your way.<br>
<br>
<<printThought $player "Well that was certainly an interesting take on fitness...">><br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60 "<<swapItem $player $now $scene.shoes>>">>]
<</if>>
</div>/*#
#desc: gym bimbofication class - dildo bike intro
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.shoes = setup.getItemFromType('shoes')>>
<<swapItem $player $now 'workout_heels'>>
<<if setup.getItemFromType("plug") != "">>
<<applyExperience 'anal' 12 'unbelievable' $EXPOSED>>
<<set $player.timebased.horny += 10>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_bimbo.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("plug") != "">>
You slide the <<=setup.getItemName(setup.getItemFromType("plug"))>> out of your rear and place it on a convenient hook on the side of the exercise bike, noticing that most of the other girls have done similar, a dizzying array of plugs seeming to match each personality - that is to say, big, bold and mostly pink.
<</if>>
<br><br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
You suppress a moan as you slide onto the seat of the bike, the entire length of the cock disappearing into your ass. It may not be quite as big as you prefer but you love it all the same.
<<else>>
The dildo coming pre-lubed it's not a problem for you to slide down until it is nicely seated up your ass.
<</if>>
<br><br>
[<<moveTo "event_gym_bimbo_2_1" "Start class." 1740>>]
<<else>>
<<if setup.getTotalValue("anal") > 5>>
You select one of the smaller dildo bikes but it's still a bit of a struggle, it is only when the instructor walks by and "helpfully" pulls you down that it finally slips fully into place and you find yourself sitting on the seat, feeling VERY deeply full.<br>
<br>
[<<moveTo "event_gym_bimbo_2_1" "Start class." 1740>>]
<<else>>
You select one of the smaller dildo bikes but even that isn't enough, you can't get more than a couple inches into your tight, untrained hole and are forced to give up and leave the class.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60 "<<swapItem $player $now $scene.shoes>>">>]
<</if>>
<</if>>
</div>/*#
#desc: gym bimbofication class - dildo bike class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<set $npc_fit_bimbo.stage = 3>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<applyExperience 'stamina' 13 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 12 'unbelievable' $EXPOSED>>
<<set $player.timebased.horny += 25>>
<<applyFatigue $player 30>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_bimbo.png">>
<div id="invframe" class="scrolltext">
The class starts with the ever-chipper instructor mounting the bike in the front, gasping as the twin dildos slide into her before starting the music and pedaling away.<br>
<br>
Listening to a playlist themed around an even more energetic remix of the classic "Work Bitch" you pedal and pump, the dildo shifting in and out of your ass as you "ride" along with the rest of the class, gasps and moans and what you swear is at least a couple of orgasms bouncing around the small room as you pedal away for a dozen kilometers.<br>
<br>
The music slowing down you finish off with a slow cooldown kilometer as it feels like the dildo is writhing against your sensitised prostate. A bit weak in the knees you finally dismount, smiling at your fellow bimbos, sexual energy pinging about as you change out of your workout heels<<if setup.getItemFromType("plug") != "">> and re-seat the <<=setup.getItemName(setup.getItemFromType("plug"))>> in your well-used rear hole<</if>>.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60 "<<swapItem $player $now $scene.shoes>>">>]
</div>/*#
#desc: gym bimbofication class - hole body fitness
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<set $scene.shoes = setup.getItemFromType('shoes')>>
<<addItem 'workout_heels'>>
<<swapItem $player $now 'workout_heels'>>
<<setThreshold 'stamina' 'gym_stamina' 'bimbo_cardio_2' true>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<if setup.getTotalValue("oral") >= 10>>
<<applyExperience 'anal' 12 'terrible' $EXPOSED>>
<<setThreshold 'anal' 'gym' 'gym_bimbo_anal' true>>
<</if>>
<<applyExperience 'oral' 12 'terrible' $EXPOSED>>
<<setThreshold 'oral' 'gym' 'gym_bimbo_oral' true>>
<<applyExperience 'stamina' 12 'unbelievable' $EXPOSED>>
<<set $player.timebased.horny += 20>>
<<applyFatigue $player 20>>
<<if setup.getTotalValue("oral") >= 10 && setup.getTotalValue("anal") >= 10>>
<<set $npc_fit_bimbo.stage = 4>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_bimbo.png">>
<div id="invframe" class="scrolltext">
Getting on your knees you follow along with the rest of the class as the bubbly instructor has you position your dildos on the floor in front of you. Shuffling back she demonstrates the exercise at hand, doing a push-up that has the dildo disappearing into her mouth until her chin touches the balls and her nose touches the ground.<br>
<br>
"Alright girls, your turn!" <br>
<br>
<<if setup.getTotalValue("oral") >= 10>>
<<if setup.getTotalValue("oral") > 15>>
Although largish by human standards such a dildo as this is nothing for your expert throat as you work to see how fast you can dive down and then slowly push back up, relishing the hard throat-fuck.
<<else>>
The dildo is good sized, but within your skill set and it only takes you a couple tries to relax your throat and take it down for a full, proper, rep.
<</if>>
<br><br>
"All the way down, all the way up, that's the way to be a slut!" The instructor calls out in encouragement as you give your floor-mounted friend an enthusiastic, sloppy blowjob.<br>
<br>
Just as your arms start to feel rubbery and you're afraid of accidentally impaling yourself it's time to move on. With the dildo still on the floor the instructor stands up and gives a little spin, lowering down onto the cock until it is sliding into her ass and she is doing deep, partial squats bouncing up and down.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
This size of dildo is practically trivial for an ass as trained as yours but you are never one to turn aside the opportunity for more "practice" as you squat deep, moving slow and smooth.
<<else>>
You let out a slow breath as you lower yourself onto the saliva-slick dildo, your experienced hole spreading obediently for its fun new occupant.
<</if>>
<br><br>
"All the way down, all the way up, that's the way to be a slut!" The instructor calls out in encouragement as you squat-fuck your dildo. This time you and the rest of the class join in in repeating her words, the act making you energised and aroused.<br>
<br>
Glancing around you can't help but feel jealous of the women with holes allowing them to take a pair of dildos, though you are heartened to see a couple other cute sissies, panties bulging as they bounce up and down wearing the same brainlessly fucked expression that you know you have.<br>
<br>
Back on your feet once again the instructor orders you to break into pairs.<br>
<br>
[<<moveTo "event_gym_bimbo_3_1" "Find a partner." 900>>]<br>
[<<moveTo "room_gym_main" "Cut out early to do something else." 60 "<<swapItem $player $now $scene.shoes>>">>]
<<else>>
<<if setup.getTotalValue("anal") > 5>>
The dildo is just too big for your sissy hole. You can barely spread enough to take the tip, but goinging "all the way down" is just out of the question.<br>
<br>
Your ass raw and gaping you don't think you can go any further, changing out of your heels and staggering out of the room as the class moves on to the next exercise.
<<else>>
The dildo is too big, slipping to one side or the other rather than pushing into your hole, finally springing off into the distance when you really try to use your weight.<br>
<br>
Embarrassed by your failure you decide that's it for today.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Cut out early to do something else." 60 "<<swapItem $player $now $scene.shoes>>">>]
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You do your best but the dildo is just beyond your skill as you are unable to make it much more than halfway down without coughing and gagging.
<<else>>
You've never managed to deepthroat something, much less something this large as you end up doing mere quarter reps kissing the cock rather than taking it deep like the other participants.
<</if>>
<br><br>
Even the instructor coming past to "help" by pushing your head down with a sexy pink stiletto heel isn't enough for you to manage a "proper" rep and, gasping and drooling you are forced to cut out of class early.<br>
<br>
[<<moveTo "room_gym_main" "Cut out early to do something else." 60 "<<swapItem $player $now $scene.shoes>>">>]
<</if>>
</div>/*#
#desc: gym bimbo class, double dildo finale
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<applyExperience 'anal' 12 'terrible' $EXPOSED>>
<<applyFatigue $player 10>>
<<set _x = $shopStatus['gym'].unlocked_inventory.pushUnique('bimbo')>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/_NYI.png">>
<div id="invframe" class="scrolltext">
You meet the gaze of the girl who first invited you to join the class and she smiles and skips over to you, the two of you quickly exchanging greetings and hugs as the instructor glides past, passing out a long double-ended dildo to each pair.<br>
<br>
Grabbing the "odd woman out" for a demo the instructor shows how to share the dildo with your partner, each girl taking half of its length into her ass. Once positioned the instructor shows the technique at hand - how one girl is to clench tight so her partner can lean forward, then back, fucking herself on the dildo before returning the favour.<br>
<br>
The instructor's partner is obviously experienced as they soon speed up their rhythm, the dildo remaining almost motionless as the two girls slide back and forth, ass-cheeks slapping and moans aplenty as the instructor calls out to "continue at your own pace." <br>
<br>
Smiling at your partner the two of you quickly get down onto your hands and knees, reaching back with fingers intertwined as you position one end of the dildo at a time and then start "working." <br>
<br>
Partway through the "workout" your partner pulls back, seemingly annoyed that their top is chafing or something they casually strip it off to reveal a pink sports bra with the word SLUT across the front.<br>
<br>
Noticing your eyes tracing across the word on her chest she gives a bounce and a smile.<br>
<br>
"You like? They sell them at the gym store you just sometimes have to hunt around, I guess they don't want the normies accidentally stumbling into something this hawt. Also, it's like the most supportive bra I've found, which,well, is a consideration!" You nod in time to her mammoth mammaries bouncing slightly.<br>
<br>
"Alright, back to work!" She says with a grin before getting back on all fours. You make a mental note before she crams her end of the dildo into her ass and slams back into you.<br>
<br>
Things are definitely trickier than they look and it takes a bit of practice before you even manage a single clean rep between the two of you, but eventually you're motoring along gasping and panting and sliding back and forth on your shared dildo until the instructor finally calls time.<br>
<br>
"Well!" The instructor states, half a dildo still hanging from her ass like a tail. "Looks like we're out of time! Good job everyone and remember to get out there and use these skills! You can do as much work as you want in training but in the end it's all about that real-world experience." <br>
<br>
[<<moveTo "room_gym_main" "Head back to the gym." 60 "<<swapItem $player $now $scene.shoes>>">>]
</div>/*#
#desc: after gym bimbofication a student wants to practice with your cock
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<set $scene.keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.haskey = setup.checkItemInInventory($scene.keyId)>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/_NYI.png">>
<div id="invframe" class="scrolltext">
As you're packing up your partner pulls you aside.<br>
<br>
<<if setup.getItemFromType("cage") == "">>
"@@.npc_fit_bimbo;So, like, I couldn't help but notice your sexy bulge, especially when your testicles swung back and slapped into me... mmm!@@" She gets all misty-eyed as her mind seems to wander.<br>
<br>
"@@.npc_fit_bimbo;Aaaanyway, I was wondering if you could help me out with a bit of "real-world" training?@@"
<<else>>
"@@.npc_fit_bimbo;So, I couldn't help but notice that sexy creature you've got caged up under there... I don't suppose you have the key? I'd, like, love to get in some real world practice with it...@@"
<</if>>
<br><br>
"@@.npc_fit_bimbo;I've, like, been practicing at home to be a proper mouth fuck-hole but I'm still struggling a bit and, well, it'd be so embarrassing to find a sexy cock at the bar and then like, find out my throat was sub-par! Having a fellow bimbo to practice with would really take the pressure off.@@"<br>
<br>
<<if setup.getItemFromType("cage") == "">>
[<<moveTo "event_gym_bimbo_blowjob_2" "Say sure, you're free to help." 300>>]
<<elseif setup.getItemFromType("cage") != "" && $scene.haskey>>
<<printThought $player "Hmm, I'm caged like a good sissy, but I do have the key with me...">><br>
<br>
[<<moveTo "event_gym_bimbo_blowjob_2" "Say sure, you can free things up to help." 300>>]
<<else>>
[@@.link_locked;Locked and caged as you are you are unable to assist her.@@]<br>
<</if>>
[<<moveTo "room_gym_main" "Decline her offer and do something else." 60>>]
</div>/*#
#desc: after gym bimbofication fellow student sucks your cock
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.timebased.horny = 0>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/_NYI.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("cage") == "">>
You don't exactly need much encouragement to rise to full mast as she frees your <<getWordMyPenis $player>> from the "prison" of your clothes licking her lips in anticipation before running her tongue experimentally up the length of your shaft to bring it to full hardness.
<<else>>
You pull out your key only for her eyes to light up as she asks if she can do it?<br>
<br>
You hand it over and she grins, sliding to her knees with a shimmy, showering your <<getWordMyPenis $player>> with kisses before sliding the key sensuously into place.<br>
<br>
She lets out a soft gasp as the cage falls away, giving your swelling shaft an experimental lick to bring it to full hardness.
<</if>>
<br><br>
<<if $player.penissize > 2>>
<<if $player.penissize >= 6>>
"@@.npc_fit_bimbo;Oh my! I saw you were big but this... I don't even know if I can take something this big... but I can't wait to try!@@"
<<elseif $player.penissize == 5>>
"@@.npc_fit_bimbo;Oh boy! I thought you were big and this... this is exactly what I've been training for!@@"
<<elseif $player.penissize == 4>>
"@@.npc_fit_bimbo;Mmm, a nice jumbo cock, perfect for practicing!@@"
<<elseif $player.penissize == 3>>
"@@.npc_fit_bimbo;Tasty, above average, but not so big that I'll be struggling not to gag!@@"<br>
<br>
<<printThought $player "Wait, above average? But I thought?">><br>
<br>
Your confusion and questioning of prior decisions is soon whisked away by the distraction of her setting to work.
<<else>>
ERROR: unexpected penis size: <<=$player.penissize>>
<</if>>
<br><br>
With both hands <<if $player.penissize >= 5>>barely <</if>>wrapped around the base of your shaft she enthusiastically dives onto your cock. Closing her eyes in concentration she struggles to throat you, gagging and drooling and coughing as she bobs up and down, gasping occasionally as she does what she can to lick and suck and stroke every part of you.
<<elseif $player.penissize == 2>>
"@@.npc_fit_bimbo;Mmmm, so beautiful, and just about average - this is perfect for me to practice on to be ready for most guys, and appropriately-equipped gals! Mmm, I just can't choose! Big, manly cock or sexy sumptuous lady lances! They're all so wonderful!@@"<br>
<br>
Humming in pleasure she wraps her hand around the base of your shaft and starts bobbing up and down. Her technique is serviceable, if not perfect and you try to give her some tips on how to react to her partner instead of just thrusting down her throat like she would with her training dildo.
<<else>>
"@@.npc_fit_bimbo;Aww, it's so cute! I knew you were small but this is just adorable! Still, it's good practice, dicksucking isn't just about deepthroating big, juicy cocks, the little cute ones need love too!@@"<br>
<br>
<<if $player.penissize == 1>>
Wrapping her lips around your small penis she makes a tube from her tongue, sliding it up and down your shaft as she tenderly sucks.
<<elseif $player.penissize == 0>>
Your tiny peen is more a clit than a cock at this point but she licks and sucks and flicks it with enthusiasm until you're a mess of sissy moans.
<<else>>
ERROR: unexpected penis size: <<=$player.penissize>>
<</if>>
<</if>>
<br><br>
She eases off when you're about to cum, insisting that she needs "more training time" and slowing her pace to glacial levels before finally entering a frenzy to finish you off.<br>
<br>
Licking her lips of your spilt seed she grins and then rises to her feet to share a cummy kiss with you.<br>
<br>
"@@.npc_fit_bimbo;Mmm, thanks for the help! It seems like I still have a lot to learn, good thing practice is so much fun!@@"<br>
<br>
She skips away as you take a deep breath to recover from the one-two combination of class and blowjob before going on your way.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym karate class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
/% admin does karate M/W after work unless age of confusion %/
<<set $scene.admin_there = !$npc_admin.flags.ageofconfusion && ($now.getUTCDay()==0 || $now.getUTCDay()==2)>>
<<set _classStart = setup.setNextDate($now, 0, 19, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_classStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<set $scene.bjj_first = setup.getTotalValue("martial_arts") < 5 && setup.hasThreshold('martial_arts', 'bjj', 'bjj_first')>>
<<set $scene.bjj_second = setup.getTotalValue("martial_arts") >= 5 && setup.getTotalValue("martial_arts") < 10 && setup.hasThreshold('martial_arts', 'karate', 'karate_first')>>
<<if !$scene.bjj_first && !$scene.bjj_second>>
<<useClothSetPush 'martialartsclass'>>
<<removeEverythingButUnderwear $player $now>>
<<addItem 'pink_gi'>>
<<wearItem $player $now 'pink_gi' true>>
<<include martialArtsBelt>>
<<if $scene.admin_there>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<else>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<</if>>
<<if $scene.admin_there && $npc_admin.flags.martial_arts_level < 2>>
<<set $npc_admin.flags.martial_arts_level = 2>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_karate.png">>
<div id="invframe" class="scrolltext">
<<if $scene.bjj_first>>
You try to drop in for a karate class but <<=setup.getNpcName('npc_martial_arts', 'formal')>> pulls you aside.<br>
<br>
"@@.npc_martial_arts;Hey, first off: LOVE the enthusiasm, but with you just starting out picking up a second discipline is probably just going to lead to confusion. Spend a bit more time working on your groundwork and then you can circle back and join the stand-up class.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif $scene.bjj_second>>
You try to drop in for a karate class but <<=setup.getNpcName('npc_martial_arts', 'formal')>> pulls you aside.<br>
<br>
"@@.npc_martial_arts;Hey, sorry, but I think you should focus on nailing the basics of BJJ before you resume cross-training. Master those fundamentals and then you can work on integrating stand-up with your ground game.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif setup.getTotalValue("martial_arts") == 10>>
You show up for class only to face a surprise - called to the front by the instructor she announces that you're up for promotion, motioning you to a portioned-off corner of the mat where the upper belts are already queuing up.<br>
<br>
"@@.npc_martial_arts;So keep an eye out on <<=$player.first_name>> - I want as many of you to have a round as possible in the shark tank.@@"<br>
<br>
You gulp as you walk over to the designated area and turn towards your first opponent. Your friend <<=setup.getNpcName('npc_admin', 'first')>> grins and extends a large, meaty hand.<br>
<br>
[<<moveTo "event_martial_arts_promotion_1" "Slap, bump, bow and get to it." 300>>]
<<else>>
Showing up for the karate class you take off your shoes and change into a gi.<br>
<br>
<<if $gym.classes.karate.level == 0>>
<<printThought $player "Why is it the only one they have that's my size is pink?">>
<<else>>
<<if setup.getTotalValue("feminization") > 13>>
<<printThought $player "Pink again?, Yay!">>
<<else>>
<<printThought $player "Pink, again?">>
<</if>>
<</if>>
<br><br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_admin', 'first')>> greets you with a smile, welcoming you to the class<<if $gym.classes.bjj.level == 0>> and thanking you for deciding to join him. "@@.npc_admin;You're gonna love it, there's just something about landing a solid kick that's just, mmm, ain't nothing else like it.@@"<<else>>.<</if>><br>
<br>
<<switch $gym.classes.karate.level>>
<<case 0>>
Formally calling the class to order <<=setup.getNpcName('npc_martial_arts', 'formal')>>, the dangerous-looking female instructor, smiles at you in greeting and pairs you up with <<=setup.getNpcName('npc_admin', 'first')>> to show you the ropes.<br>
<br>
[<<moveTo "event_gym_class_karate_1" "Continue." 2700>>]
<<case 1>>
"@@.npc_admin;Welcome back, bro! Made it past the first class so you're already doing better than that time you tried back in college!@@" <<=setup.getNpcName('npc_admin', 'first')>> states with a grin! "@@.npc_admin;I'll tell you I felt so guilty about what happened that first time, I hope things keep going better this time.@@"<br>
<br>
You nod and say you do too, then it's time for the two of you to get lined up for the start of class proper.<br>
<br>
[<<moveTo "event_gym_class_karate_2" "Continue." 2700>>]
<<case 2>>
You fall in for another class, taking your place down at the noob end as you note <<=setup.getNpcName('npc_admin', 'first')>> is standing far to the right with the other black belts.<br>
<br>
[<<moveTo "event_gym_class_karate_3" "Start class." 2700>>]
<<case 3>>
No longer down with the white belts you stand in the middle of the room at the start of the colored belts. <<=setup.getNpcName('npc_admin', 'first')>> remains far to your right up with the other black belts.<br>
<br>
[<<moveTo "event_gym_class_karate_3" "Start class." 2700>>]
<<default>>
ERROR unknown gym.classes.karate.level <<=$gym.classes.karate.level>> with admin
<</switch>>
<<else>>
<<switch $gym.classes.karate.level>>
<<case 0>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> the dangerous-looking female instructor smiles at you in greeting, starting the class on drilling before taking you aside for a private introduction.<br>
<br>
[<<moveTo "event_gym_class_karate_1" "Continue." 2700>>]
<<case 1>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> the dangerous-looking female instructor smiles at you in greeting.<br>
<br>
She congratulates you on coming back for a second class, instructing you to line up with the main class for technique demonstration before hand-picking you a female partner close to your size for drilling.<br>
<br>
[<<moveTo "event_gym_class_karate_2" "Continue." 2700>>]
<<case 2>>
You fall in for another class, taking your place down with the other noobs.<br>
<br>
[<<moveTo "event_gym_class_karate_3" "Start class." 2700>>]
<<case 3>>
No longer down with the white belts you stand in the middle of the room at the start of the colored belts and wait for class to begin.<br>
<br>
[<<moveTo "event_gym_class_karate_3" "Start class." 2700>>]
<<default>>
ERROR unknown gym.classes.karate.level <<=$gym.classes.karate.level>>
<</switch>>
<</if>>
<</if>>
</div>/*#
#desc: gym karate first class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $gym.classes.karate.level = 1>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyExperience 'martial_arts' 5 'normal' $EXPOSED>>
<<if !setup.hasThreshold('martial_arts', 'bjj', 'bjj_first')>>
<<setThreshold 'martial_arts' 'karate' 'karate_first' true>>
<<else>>
<<setThreshold 'martial_arts' 'karate' 'karate_second' true>>
<</if>>
<<applyExperience 'martial_arts' 5 'normal' $EXPOSED>>
<<applyExperience 'stamina' 7 'very' $EXPOSED>>
<<applyExperience 'dexterity' 7 'very' $EXPOSED>>
<<applyFatigue $player 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_karate.png">>
<div id="invframe" class="scrolltext">
<<if $scene.admin_there>>
You can't help flashing back to the last time you tagged along with <<=setup.getNpcName('npc_admin', 'first')>> to one of his karate classes. This time goes much smoother - he's still as tall, strong and disturbingly quick as you remember but he better manages to match your intensity and as a result there is not a single instance of you flying through a wall.<br>
<br>
Only partially following along with the main class he teaches you the fundamentals of stance, movement and some basic strikes.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> runs you through the fundamentals of stance, movement and a basic overview of high percentage kicks and punches. You find her a very precise and skilled instructor as she seems to instantly know when you missed a detail as well as which particular version of a movement would feel most natural for you to perform.
<</if>>
<br><br>
Your mind is a bit overflowing with knowledge when the end of the technique portion of class comes along. You sit back with <<if $scene.admin_there>><<=setup.getNpcName('npc_admin', 'first')>><<else>><<=setup.getNpcName('npc_martial_arts', 'formal')>><</if>> to watch the other students break into pairs for contact sparring, getting almost a play-by-play of some of the better match-ups.<br>
<br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass' $player $now>><<removeItem $player $now 'pink_gi'>><<removeItem $player $now $scene.belt>><<deleteItem $player $now 'pink_gi'>><<deleteItem $player $now $scene.belt>>">>]
</div>/*#
#desc: gym karate second class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $gym.classes.karate.level = 2>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyExperience 'martial_arts' 5 'very' $EXPOSED>>
<<applyExperience 'stamina' 7 'very' $EXPOSED>>
<<applyExperience 'dexterity' 7 'very' $EXPOSED>>
<<applyFatigue $player 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_karate.png">>
<div id="invframe" class="scrolltext">
In the main class now you try to follow along as you get into rows to practice the technique of the day, then pair off to practice what you've learned with a partner.<br>
<br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>>, the instructor, directs you away from your friend, instead pairing you up with a woman who is closer to your size.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> pairs you up with a woman close to your size.
<</if>>
<br><br>
Your partner is definitely a lot better than you are, but she's friendly and helpful, pointing out some smaller details that you missed in the main demo even as she more or less no-sells everything you throw at her.<br>
<br>
Flipping roles you would swear you're being kicked by an ox, the wind getting blown out of you by her kicks even as you'd swear she's pulling them.<br>
<br>
<<if setup.getTotalValue("stamina") < 10 || setup.getTotalValue("strength") < 10>>
You lack the combination of strength and stamina to effectively last through the class, by the end you're barely vertical, your entire body sore.<br>
<br>
"@@.npc_martial_arts;I admire your gumption, but you might want to work on your basic fitness foundations if you want to see real progress.@@"
<<else>>
You tough out class but opt to sit out sparring, standing on the side and watching as the other students set to work beating the crap out of each other.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass' $player $now>><<removeItem $player $now 'pink_gi'>><<removeItem $player $now $scene.belt>><<deleteItem $player $now 'pink_gi'>><<deleteItem $player $now $scene.belt>>">>]
</div>/*#
#desc: gym karate nth class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyExperience 'martial_arts' 10 'terrible' $EXPOSED>>
<<applyExperience 'stamina' 7 'terrible' $EXPOSED>>
<<applyExperience 'dexterity' 7 'terrible' $EXPOSED>>
<<applyFatigue $player 20>>
<<if setup.getItemFromType("panties") != "athletic_protection">>
<<set _x = $shopStatus['gym'].unlocked_inventory.pushUnique('martial_arts')>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_karate.png">>
<div id="invframe" class="scrolltext">
The class starts out with a quick warm-up and then on to technique drilling and then live, full-contact sparring.<br>
<br>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
You have a nigh endless gas-tank, able to focus all of your attention on repeatedly drilling the move of the day without ever tiring in the slightest.
<<else>>
While you can't be reckless with your energy you have plenty of stamina to make it through class without difficulty.
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
The warm-up alone would be a workout and you barely learn anything in the class proper, focused just on surviving to the end.
<<else>>
You're puffing and wheezing before warm-up is even finished, barely able to focus enough on the remainder of the class as you struggle just to breath.
<</if>>
<</if>>
<br><br>
<<if setup.getItemFromType("panties") != "athletic_protection">>
You try to participate in sparring but you barely get started before an errant leg kick slides up your thigh and into something more... tender.<br>
<br>
<<if setup.getItemFromType("cage") != "">>
As secure as it is your <<=setup.getItemName(setup.getItemFromType("cage"))>> does nothing to protect you from a hit to the old family jewels and you double over in pain as your partner hurriedly apologises.
<<else>>
You explode in pain, folding in half and droping to the ground, fetal as your partner hurriedly apologises.
<</if>>
<br><br>
You manage to catch your breath but decide against trying any further sparring today.<br>
<br>
<<printThought $player "Hmm, I need to find some sort of protective undergarments for this sort of activity.">>
<<else>>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
Despite your size you are easily one of the strongest participants in sparring, neutralizing your opponent's raw power so that it becomes more a chess match of technique.
<<else>>
You're strong enough not to get easily tossed around, able to focus on applying technique rather than having people muscle through you.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
When it comes to sparring you find your efforts stymied by the fact that you're just too weak compared to your opponents. Occasionally you can hit the perfect angle to maximise your leverage but, in general, you're just rag-dolled by whoever you square off with.
<<else>>
When it comes time for full-contact sparring you find yourself getting bulldozed and lit up regardless of technique, your body just too weak to keep your opponent from imposing their will as they kick through your blocks and seem barely affected by even your best counter-strikes.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
You slip and rip, an impossible to hit ghost able to tag your opponent at will.
<<else>>
Your cross-training is really paying off, though you can't actually apply the ground techniques directly it gives you a better understanding of body mechanics and balance that really seems to bolster your technique.
<</if>>
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
Making the switch from grappling to stand-up is still a bit jarring as you find yourself rushing for clinches a bit too often. Still, you're overall improving rather than getting run over every match.
<<else>>
Sparring consists of your get your ass kicked. Literally. Nobody is particularly malicious about it but the fact is, you're a noob and so you're lucky if you can just survive the round without getting blasted, actually getting your own offense in is pretty much out of the question.
<</if>>
<</if>>
<br><br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_admin', 'first')>> congratulates you on your progress, watching your final spar and giving you a bit of coaching help that lets you manage to come out on top of things.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> catches you after class and congratulates you on your continued improvement. "@@.npc_martial_arts;You get better by doing, keep on showing up and you'll be a skilled fighter in no time!@@"
<</if>>
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass' $player $now>><<removeItem $player $now 'pink_gi'>><<removeItem $player $now $scene.belt>><<deleteItem $player $now 'pink_gi'>><<deleteItem $player $now $scene.belt>>">>]
</div>/*#
#desc: gym bjj class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
/* admin does bjj Tu/Th after work unless age of confusion */
<<set $scene.admin_there = !$npc_admin.flags.ageofconfusion && ($now.getUTCDay()==1 || $now.getUTCDay()==3)>>
<<set _classStart = setup.setNextDate($now, 0, 20, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_classStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<set $scene.karate_first = setup.getTotalValue("martial_arts") < 5 && setup.hasThreshold('martial_arts', 'karate', 'karate_first')>>
<<set $scene.karate_second = setup.getTotalValue("martial_arts") >= 5 && setup.getTotalValue("martial_arts") < 10 && setup.hasThreshold('martial_arts', 'bjj', 'bjj_first')>>
<<if !$scene.karate_first && !$scene.karate_second>>
<<useClothSetPush 'martialartsclass'>>
<<removeEverythingButUnderwear $player $now>>
<<addItem 'pink_gi'>>
<<wearItem $player $now 'pink_gi' true>>
<<include martialArtsBelt>>
<<if $scene.admin_there>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<else>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<</if>>
<<if $scene.admin_there && $npc_admin.flags.martial_arts_level < 2>>
<<set $npc_admin.flags.martial_arts_level = 2>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_bjj.png">>
<div id="invframe" class="scrolltext">
<<if $scene.karate_first>>
You try to drop in for a BJJ class but <<=setup.getNpcName('npc_martial_arts', 'formal')>> pulls you aside.<br>
<br>
"@@.npc_martial_arts;Hey, first off: LOVE the enthusiasm, but with you just starting out picking up a second discipline is probably just going to lead to confusion. Spend a bit more time concentrating on your stand-up and then think about circling back for the grappling class.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif $scene.karate_second>>
You try to drop in for a BJJ class but <<=setup.getNpcName('npc_martial_arts', 'formal')>> pulls you aside.<br>
<br>
"@@.npc_martial_arts;Hey, sorry, but I think you should focus on nailing the basics of Karate before you resume cross-training. Master those fundamentals and then you can work on integrating stand-up and ground work.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif setup.getTotalValue("martial_arts") == 10 && Math.round($player.timebased.fatigue) <= 50>>
You show up for class only to face a surprise - called to the front by the instructor she announces that you're up for promotion, motioning you to a portioned-off corner of the mat where a queue of upper belts have already lined up.<br>
<br>
"@@.npc_martial_arts;So keep an eye out on <<=$player.first_name>> - I want as many of you to have a round as possible in the shark tank.@@"<br>
<br>
You gulp as you walk over to the designated area and turn towards your first opponent, your friend <<=setup.getNpcName('npc_admin', 'first')>> grinning and extending a hand.<br>
<br>
[<<moveTo "event_martial_arts_promotion_1" "Slap, bump, bow and get to it." 300>>]
<<else>>
Showing up for the BJJ class you take off your shoes and change into a gi.<br>
<br>
<<if $gym.classes.bjj.level == 0>>
<<printThought $player "Why is it the only one they have that's my size is pink?">>
<<else>>
<<if setup.getTotalValue("feminization") > 13>>
<<printThought $player "Pink again? Yay!">>
<<else>>
<<printThought $player "Pink, again?">>
<</if>>
<</if>>
<br><br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_admin', 'first')>> greets you with a smile, welcoming you to the class<<if $gym.classes.bjj.level == 0>> and thanking you for deciding to join him. "@@.npc_admin;You're gonna love it. Karate will always be my first love but grappling is pretty damn fun too!@@"<<else>>.<</if>><br>
<br>
<<switch $gym.classes.bjj.level>>
<<case 0>>
Formally calling the class to order <<=setup.getNpcName('npc_martial_arts', 'formal')>>, the dangerous-looking female instructor, smiles at you in greeting and pairs you up with <<=setup.getNpcName('npc_admin', 'first')>> to show you the ropes.<br>
<br>
[<<moveTo "event_gym_class_bjj_1" "Continue." 2700>>]
<<case 1>>
"@@.npc_admin;Hey, welcome back, bro. Glad you've decided to stick with it!@@" <<=setup.getNpcName('npc_admin', 'first')>> states with a welcoming smile.<br>
<br>
You nod and say you do to, then it's time for the two of you to line up for the start of class proper.<br>
<br>
[<<moveTo "event_gym_class_bjj_2" "Continue." 2700>>]
<<case 2>>
You fall in for another class, taking your place down at the noob end as you note <<=setup.getNpcName('npc_admin', 'first')>> standing in the middle with the other coloured belts.<br>
<br>
[<<moveTo "event_gym_class_bjj_3" "Start class." 2700>>]
<<case 3>>
No longer down with the white belts you stand in the middle of the room at the start of the colored belts, <<=setup.getNpcName('npc_admin', 'first')>> is a bit further to your right, but not quite as far away as when you started.<br>
<br>
[<<moveTo "event_gym_class_bjj_3" "Start class." 2700>>]
<<default>>
ERROR unknown gym.classes.bjj.level <<=$gym.classes.bjj.level>> with admin
<</switch>>
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> the dangerous-looking female instructor smiles at you in greeting.<br>
<br>
<<switch $gym.classes.bjj.level>>
<<case 0>>
Welcoming you to the class she starts things running and then takes you aside for a personal introduction.<br>
<br>
[<<moveTo "event_gym_class_bjj_1" "Continue." 2700>>]
<<case 1>>
She congratulates you on coming back for a second class, instructing you to line up with the main class for technique demonstration.<br>
<br>
[<<moveTo "event_gym_class_bjj_2" "Continue." 2700>>]
<<case 2>>
You fall in for another class, taking your place on the wall with the other white belts.<br>
<br>
[<<moveTo "event_gym_class_bjj_3" "Start class." 2700>>]
<<case 3>>
You fall in for another class, taking your place on the wall just past the white belts with the other blues.<br>
<br>
[<<moveTo "event_gym_class_bjj_3" "Start class." 2700>>]
<<default>>
ERROR unknown gym.classes.bjj.level <<=$gym.classes.bjj.level>>
<</switch>>
<</if>>
<</if>>
</div>/*#
#desc: first gym bjj class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $gym.classes.bjj.level = 1>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<if !setup.hasThreshold('martial_arts', 'karate', 'karate_first')>>
<<setThreshold 'martial_arts' 'bjj' 'bjj_first' true>>
<<else>>
<<setThreshold 'martial_arts' 'bjj' 'bjj_second' true>>
<</if>>
<<applyExperience 'martial_arts' 5 'normal' $EXPOSED>>
<<applyExperience 'stamina' 10 'very' $EXPOSED>>
<<applyExperience 'strength' 10 'very' $EXPOSED>>
<<applyFatigue $player 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_bjj.png">>
<div id="invframe" class="scrolltext">
<<if $scene.admin_there>>
The size difference between yourself and <<=setup.getNpcName('npc_admin', 'first')>> seems a bit extreme but he is surprisingly delicate as he helps walk you through fundamental positions and how to maintain posture or apply pressure.<br>
<br>
As much as you learn about technique what's even more apparent is how good... and how strong <<=setup.getNpcName('npc_admin', 'first')>> is. Unless you do the move perfectly and he sells it on top he seems completely immovable, hard and strong and... you try to focus back on the class.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> runs you through the basic principles and positions of BJJ. She is a very adept instructor, adapting techniques to your specific bodytype but at the same time "rolling" with her is a bit scary, her limbs like rebar, able to move you around seemingly at whim while always being perfectly balanced and either light as a feather or as immobile as a tonne of broccoli.
<</if>>
<br><br>
You're suprised at how fast the class zips past when you look around to find the regular students breaking into pairs for live-roll sparring. You watch along as <<if $scene.admin_there>> <<=setup.getNpcName('npc_admin', 'first')>><<else>><<=setup.getNpcName('npc_martial_arts', 'formal')>><</if>> helps explain what's happening in each of the rolls.<br>
<br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass' $player $now>><<removeItem $player $now 'pink_gi'>><<removeItem $player $now $scene.belt>><<deleteItem $player $now 'pink_gi'>><<deleteItem $player $now $scene.belt>>">>]
</div>/*#
#desc: gym bjj second class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $gym.classes.bjj.level = 2>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<applyExperience 'martial_arts' 5 'very' $EXPOSED>>
<<applyExperience 'stamina' 10 'very' $EXPOSED>>
<<applyExperience 'strength' 9 'very' $EXPOSED>>
<<applyFatigue $player 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_bjj.png">>
<div id="invframe" class="scrolltext">
You join the main class, following along with the warm-up and then breaking into pairs to learn the day's technique.<br>
<br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>>, the instructor, directs you away from your friend, instead pairing you up with a woman who's closer to your size.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> pairs you up with a woman who's close to your size.
<</if>>
<br><br>
Your partner is definitely a lot better than you are, moving with ease while you feel a bit like a turtle flailing on its back. Fortunately she's friendly and helpful, pointing out some smaller details that you missed in the main demo even as you can tell that your application of the move only works because she's letting you.<br>
<br>
Flipping rolls you go from feeling safe to being on the bottom getting strangled without quite knowing what happened in the brief intervening time. Her technique is so much faster and cleaner than yours it's practically magic.<br>
<br>
<<if setup.getTotalValue("stamina") < 10 || setup.getTotalValue("strength") < 10>>
You lack the combination of strength and stamina to effectively last through the class, by the end you're barely vertical, your entire body sore.<br>
<br>
"@@.npc_martial_arts;I admire your gumption, but you might want to work on your basic fitness foundations if you want to see real progress.@@"
<<else>>
You tough out class but opt to sit out sparring, standing on the side and watching as the other students set to work beating the crap out of each other.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass' $player $now>><<removeItem $player $now 'pink_gi'>><<removeItem $player $now $scene.belt>><<deleteItem $player $now 'pink_gi'>><<deleteItem $player $now $scene.belt>>">>]
</div>/*#
#desc: gym bjj nth class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<applyExperience 'martial_arts' 10 'very' $EXPOSED>>
<<applyExperience 'stamina' 10 'very' $EXPOSED>>
<<applyExperience 'strength' 10 'very' $EXPOSED>>
<<applyFatigue $player 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_bjj.png">>
<div id="invframe" class="scrolltext">
The class starts out with a quick warm-up and then on to technique drilling and then live, full-contact sparring.<br>
<br>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
You have a nigh endless gas tank, able to focus all of your attention on repeatedly drilling the move of the day without ever tiring in the slightest.
<<else>>
While you can't be reckless with your energy you have plenty of stamina to make it through class without difficulty.
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
The warm-up alone would be a workout and you barely learn anything in the class proper, focused just on surviving to the end.
<<else>>
You're puffing and wheezing before warm-up is even finished, barely able to focus enough on the remainder of the class as you struggle just to breath.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
You're easily one of the strongest participants in sparring, neutralizing your opponent's raw power so that it becomes more of chess match of technique.
<<else>>
You're strong enough not to get easily tossed around, able to focus on applying technique rather than having people muscle through you.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
When it comes to sparring you find your efforts stymied by the fact that you're just too weak compared to your opponents. Occasionally you can hit the perfect angle to maximise your leverage but, in general, you're just rag-dolled by whoever you square off with.
<<else>>
When it comes time for full-contact sparring you find yourself getting crushed and submitted regardless of technique, your body just too weak to keep your opponent from imposing their will.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
You're a tough out for all but the larger, most experienced grapplers, slipping out of holds and coming up on top in scrambles while snatching subs with perfect, inescapable precision.
<<else>>
Cross-training in karate is really paying off as you find yourself far more balanced on the feet as you use quick footwork to pass and then deploy your rapidly improving ground game to close things out.
<</if>>
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
You were just starting to get the hang of hand to hand combat but some of the habits you've picked up in karate have you pausing or hesitate as you remember not to shoot for a grip quite THAT hard or spastically get back to your feet after getting dumped.
<<else>>
You could be going to a bongo class for all the time your hands spend tapping. Any illusions you had that grappling was simple are long banished and you try to just survive and pick up a trick here or there as you work against the other, more experienced students.
<</if>>
<</if>>
<br><br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_admin', 'first')>> congratulates you on your progress, watching your final roll and giving you a bit of coaching help that lets you manage to come out on top of things.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> catches you after class and congratulates you on your continued improvement. "@@.npc_martial_arts;You get better by doing, keep on showing up and you'll be tapping people out before you know it!@@"
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass' $player $now>><<removeItem $player $now 'pink_gi'>><<removeItem $player $now $scene.belt>><<deleteItem $player $now 'pink_gi'>><<deleteItem $player $now $scene.belt>>">>]
</div>/*#
#desc: gym martial arts promotion - spar with admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<applyExperience 'martial_arts' 10 'unbelievable' $EXPOSED>>
<<applyFatigue $player 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_promotion.png" "./images/character/npc_admin_gi.png">>
<div id="invframe" class="scrolltext">
Given his massive experience, height and weight advantage starting on the feet with <<=setup.getNpcName('npc_admin', 'first')>> is a bit of a recipe for disaster but you actually manage to keep your wits about you, dodging in and out as you search for an opening.<br>
<br>
You aren't perfect, and even with him pulling his strikes you take a body-kick that might have bruised a rib even THROUGH your block but finally you spot an opportunity, "baiting" him forward before rushing in, stifling his kick and hitting something resembling a trip on his remaining leg to take it to the ground.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> may not be as adept at groundwork as he is on the feet but he's still better than you... as well as able to bench you off with one hand. Just as on the feet he goes hard, but giving you just enough openings to let you work as you seek to keep his weight off of you and eventually manage to scramble on top, sliding into a high mount just as <<=setup.getNpcName('npc_martial_arts', 'formal')>> calls time.<br>
<br>
"@@.npc_admin;Good spar!@@" He states with a smile, casually standing up without even pushing you off as you turn towards your next opponent - a student who is thankfully in your weight class rather than something like double such.<br>
<br>
[<<moveTo "event_martial_arts_promotion_2" "Round 2..." 60>>]
</div>/*#
#desc: gym martial arts promotion - spar with students
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'martial_arts' 7 'terrible' $EXPOSED>>
<<applyFatigue $player 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_promotion.png">>
<div id="invframe" class="scrolltext">
Riding an adrenaline high from your match-up with <<=setup.getNpcName('npc_admin', 'first')>> you actually manage to win the next match, double jabbing your way into a clinch and taking it straight to the ground where you lock in a tight choke.<br>
<br>
Your next round goes significantly worse as you are systematically outpointed on the feet without ever touching the mat.<br>
<br>
Things start to blur as fresh opponents keep cycling in, after a while you're on pure defence, trying to circle and parry and throw just enough strikes to keep your opponent honest on the feet while searching for safe positions to rest whenever it hits the ground.<br>
<br>
Of course such a tact has risks of its own and you eat quite a few hard shots, as well as do your share of tapping as the "class" rolls forward until you find yourself facing off with <<=setup.getNpcName('npc_martial_arts', 'formal')>>, the rest of the class circling around to watch.<br>
<br>
[<<moveTo "event_martial_arts_promotion_3" "Final round!" 60>>]
</div>/*#
#desc: gym martial arts promotion - spar with instructor
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<setThreshold 'martial_arts' 'martial_arts' 'mma' true>>
<<applyFatigue $player 50>>
<<set $gym.classes.karate.level = 3>>
<<set $gym.classes.bjj.level = 3>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_promotion.png" "./images/character/npc_martial_arts.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") > 18>>
You may have a lot left to learn in terms of martial arts but one thing you have is cardio, taking a deep breath and actually smiling as you drop into stance to face off for your match with the instructor.
<<elseif setup.getTotalValue("stamina") < 10>>
You're barely able to stand at this point, your arms hanging heavy as you try to assume a combat stance as you face off with the head instructor.
<<else>>
Despite running rounds for almost the last hour straight you manage to find your... some large number wind as you drop into stance and get ready for a match with the instructor.
<</if>>
<br><br>
With a smile on her face she nods and gives a little "come on" hand motion to signal the start of the match.<br>
<br>
You previously thought that <<=setup.getNpcName('npc_admin', 'first')>> was your hardest out but, despite lacking his enormous size advantage, <<=setup.getNpcName('npc_martial_arts', 'formal')>> makes you feel even more helpless.<br>
<br>
Applying nigh perfect technique almost faster than you can react she is always somewhere else by the time you strike back, slipping or parrying everything with ease and then retaliating with a perfect punch or kick that is simultaneously expertly pulled to land like a feather.<br>
<br>
Despite the one-sided "beating" you realise that, from an onlookers perspective, things would actually look impressive, as she lets you come within a hair's breadth of landing while her brushing retaliation makes you look like a juggernaut coming forward through a flurry of blows.<br>
<br>
As if flicking a switch she moves things to the ground before you can quite realise what's happening as you find yourself practically flying through the air before she slides on top, giving you just enough of an opening to escape as she effortlessly transitions and then sweeps you again.<br>
<br>
Always moving things go back and forth as she effectively choreographs an exciting, even match out of the ether, letting you get deep on a couple of submissions only to escape waiting until the waning seconds to go for the finish herself, timing it out perfectly so that you are just about to tap to an inescapable arm-bar when the bell sounds to mark the end.<br>
<br>
Pulling you back to your feet she half holds you up as the class applauds, <<=ps(setup.getNpcName('npc_admin', 'first'))>> proud grin in particular drawing your attention as you try to catch your breath and calm your racing heart.<br>
<br>
Finishing off she congratulates you on your dedication, tying a fresh blue belt around your waist and welcoming you to continue training in either class as you make the rounds to shake hands and get congratulations from the other students.<br>
<br>
The class finally over you stagger back out, occasionally glancing back down at the colour around your waist as if to confirm it's still there.<br>
<br>
As you walk out you notice a poster that you hadn't seen before - it's advertising some sort of Gym-wide tournament.<br>
<br>
<<printThought $player "Huh, that sounds interesting, too bad there doesn't seem to be a date... guess I'll have to check back in the future once they've got things more figured out.">><br> /%TODOfuture%/
<br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass' $player $now>><<removeItem $player $now 'pink_gi'>><<removeItem $player $now $scene.belt>><<deleteItem $player $now 'pink_gi'>><<deleteItem $player $now $scene.belt>>">>]
</div><<if setup.hasThreshold('martial_arts', 'martial_arts', 'mma')>>
<<set $scene.belt = "martial_arts_blue_belt">>
<<else>>
<<set $scene.belt = "martial_arts_white_belt">>
<</if>>
<<addItem $scene.belt>>
<<wearItem $player $now $scene.belt true>>/*#
#desc: gym yoga class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.skip_yoga = false>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $scene.class = $gym.classes.yoga.level_fem>>
<<else>>
<<set $scene.class = $gym.classes.yoga.level_male>>
<</if>>
<<switch $scene.class>>
<<case 1>>
<<if setup.getTotalValue("dexterity") < 5>>
<<set $scene.skip_yoga = true>>
<</if>>
<<case 2>>
<<if setup.getTotalValue("dexterity") < 8>>
<<set $scene.skip_yoga = true>>
<</if>>
<<case 3>>
<<if setup.getTotalValue("dexterity") < 10>>
<<set $scene.skip_yoga = true>>
<</if>>
<<case 4>>
<<if setup.getTotalValue("dexterity") < 12>>
<<set $scene.skip_yoga = true>>
<</if>>
<<case 5>>
<<set $scene.skip_yoga = $scene.yoga || random(1,10) <=6>>
<<if !$scene.skip_yoga>>
<<set $now to setup.advanceDate($player, $now, "minutes", 30)>>
<</if>>
<</switch>>
/* this is to prevent speeding through one class' content in the same visit */
<<if $scene.hasOwnProperty('yoga') && $scene.yoga>>
<<set $scene.skip_yoga = true>>
<</if>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<if $gym.classes.yoga.level_fem == 0>>
<<set $gym.classes.yoga.level_fem = 1>>
<</if>>
<<else>>
<<if $gym.classes.yoga.level_male == 0>>
<<set $gym.classes.yoga.level_male = 1>>
<</if>>
<</if>>
<<if $scene.skip_yoga>>
<<set $now to setup.advanceDate($player, $now, "minutes", 30)>>
<<set $scene.exercise += 1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<set _x = setup.removeStress($player,1)>>
<<applyExperience 'dexterity' 7 'normal' $EXPOSED>>
<</if>>
<<set $scene.yoga = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_class.png">>
<div id="invframe" class="scrolltext">
<<if $scene.skip_yoga>>
You attend another yoga class, this time it's taught by an instructor you do not recognise rather than <<=setup.getNpcName('npc_yogateacher', 'first')>>.<br>
<br>
You flow through the poses without much difficulty, by the end you're feeling quite a bit more relaxed, your body having definitely gotten more limber since you started coming to these.<br>
<br>
<<if setup.getTotalValue("dexterity") >= 6 && !setup.hasThreshold('dexterity', 'other', 'yoga')>>
[<<moveTo "event_gym_class_yoga_dex" "Enjoy the class." 1800>>]
<<else>>
[<<moveTo "room_gym_main" "Class is over, do something else." 60>>]<br>
<</if>>
<<else>>
As you're waiting for class to start you watch other students trickle in.<br>
<br>
The student body looks almost entirely feminine; attractive women of all shapes and sizes in tight yoga pants and chic tops.<br>
<br>
<<switch $scene.class>>
<<case 0>>
A few minutes later the instructor arrives and you have to keep from letting your jaw drop as you recognise <<=setup.getNpcName('npc_yogateacher', 'first')>>! The yoga teacher who you caught sleeping with your now ex-girlfriend!<br>
<br>
<<printThought $player "Shit, I didn't realise he taught yoga at THIS gym...">><br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female" && !$npc_yogateacher.flags.reactnamechange>>
You look away but he doesn't seem to recognise you at all, walking directly past to the front of the room, greeting everyone before starting in on the first pose.<br>
<br>
<<printThought $player "Well, I guess I do look pretty different now...">>
<<else>>
He has to have recognised you, stopping and staring for a moment before proceeding to the front of the class to greet everyone and start in on the first pose.<br>
<br>
<<printThought $player "This is really weird...">>
<</if>>
<br><br>
[<<moveTo "room_gym_main" "This is too strange, cut out of the class." 60>>]<br>
[<<moveTo "event_gym_class_yoga_1" "Try to assume the first position." 60>>]
<<case 1>>
You find yourself back in the gym yoga class. The students who have arrived ahead of you are busy chatting or limbering up but it isn't long before <<=setup.getNpcName('npc_yogateacher', 'first')>> appears and walks to the front of the room to get started.<br>
<br>
<<printThought $player "Hmm, looks like he's the primary yoga instructor here.">><br>
<br>
He hasn't seemed to acknowledge your presence, but still... it's kind of weird to go to a yoga class taught by the dude that fucked your girlfriend and led to you breaking up... right?<br>
<br>
[<<moveTo "room_gym_main" "Yea, this is too strange, leave." 60>>]<br>
[<<moveTo "event_gym_class_yoga_1" "Ignore the oddness of the situation and assume the first position." 60>>]
<<case 2>>
You're back in the yoga class, finding a free spot just in time as you've barely rolled out a mat when <<=setup.getNpcName('npc_yogateacher', 'first')>> walks in, heading for the front of the room.<br>
<br>
<<printThought $player "This is still kind of weird, what with him fucking my girlfriend and all but... the last class went fine, and he IS a good teacher...">><br>
<br>
[<<moveTo "room_gym_main" "On second thought, maybe this is a bad idea." 60>>]<br>
[<<moveTo "event_gym_class_yoga_2" "He's here to teach, you're here to learn, no reason you can't both be professionals." 60>>]
<<case 3>>
You walk in a few minutes late for <<=ps(setup.getNpcName('npc_yogateacher', 'formal'))>> yoga class but he just waves in friendly greeting and continues on as you hurry into the first position.<br>
<br>
As you move into a stretch that has you looking forward you have a sudden realization - <<=setup.getNpcName('npc_exgirlfriend', 'first')>> is in the front row!<br>
<br>
[<<moveTo "room_gym_main" "Get out of here before she notices you." 60>>]<br>
[<<moveTo "event_gym_class_yoga_3" "Just try to relax and focus on the class." 60>>]
<<default>>
You take your place for another of <<=ps(setup.getNpcName('npc_yogateacher', 'formal'))>> yoga classes.<br>
<br>
As usual you get a flutter of nerves seeing him walk in. At least it doesn't look like <<=setup.getNpcName('npc_exgirlfriend', 'first')>> is around this time to make for a further distraction.<br>
<br>
[<<moveTo "room_gym_main" "This is still weird, I should go." 60>>]<br>
[<<moveTo "event_gym_class_yoga_4" "Enjoy the class." 60>>]
<</switch>>
<</if>>
</div>/*#
#desc: stay for first yoga class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise += 1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $gym.classes.yoga.level_fem = 2>>
<<else>>
<<set $gym.classes.yoga.level_male = 2>>
<</if>>
<<set _x = setup.removeStress($player,1)>>
<<applyExperience 'dexterity' 7 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_yoga.png" "./images/characters/npc_yogateacher.png">>
<div id="invframe" class="scrolltext">
It's a little weird to be in a class taught by the guy who you last saw fucking your girlfriend<<if setup.analyzeWornTags(['female','male','unisex']) == "female">> without him recognizing you<</if>> but... you soon realize that he's actually a REALLY good instructor.<br>
<br>
Very calm and patient he has a bit of weird, laid back attitude but he seems almost preternaturally skilled at noticing when someone is struggling, knowing just what to say to tweak the position to work better for their bodytype and experience level.<br>
<br>
To your slight surprise you seem to have a bit of a knack for yoga, managing the simpler forms of each position with only a few words of correction.
<<if setup.analyzeWornTags(['female','male','unisex']) == "female" && !$npc_yogateacher.flags.reactnamechange>>
Your heart races whenever he walks past, even moreso when he congratulates you on your performance. Fortunately that's as close as he gets, though you notice that he is quite... touchy with some of the other students, using his hands to gently correct their posture, neither he nor the students seeming concerned if in doing so he is palming their butt or cuping their breast.
<<else>>
Despite the fact he must recognise you he doesn't seem to really acknowledge you. Not in a rude way, he just moves past you as he helps other students. He only once points out something you were doing wrong but he does so in the context of addressing the entire class rather than you directly so it's always possible someone else was making the same error.
<</if>>
<br><br>
Though the class was definitely weird, and a little stressful, you find you feel... kind of relaxed? Stiffness and tension you didn't even know you had no longer bothering you as you finish off the final "cooldown" sequence. Thanking everyone for coming he's soon chatting it up with several other students, giving you a good opportunity to slip out.<br>
<br>
[<<moveTo "room_gym_main" "Finish class." 60>>]
</div>/*#
#desc: stay for second yoga class (touchy/chatty teacher)
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $gym.classes.yoga.level_fem = 3>>
<<else>>
<<set $gym.classes.yoga.level_male = 3>>
<</if>>
<<set _x = setup.removeStress($player,2)>>
<<applyExperience 'dexterity' 7 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_yoga.png" "./images/characters/npc_yogateacher.png">>
<div id="invframe" class="scrolltext">
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<if !$npc_yogateacher.flags.reactnamechange>>
He still doesn't seem to recognise you as the dude whose girlfriend he stole, teaching the class with his usual laid back, but prescient skill.
<</if>>
<br><br>
You run through some basic stretching and balance positions, once again discovering that you're actually quite a bit more flexible than you realised.<br>
<br>
It's when you're in downward facing dog that he walks past, casually reaching under your hips to raise you higher, his hand mere centimetres from your <<getWordMyPenis $player>>!<br>
<br>
"@@.npc_yogateacher;Mo' bend, mon, legs straight, hips toward the sky, no, higher, neutral spine, look at your feet... That's it, beautiful.@@"<br>
<br>
You're almost frozen in fear as he adjusts your body, yet his tweaks help, you suddenly feel more comfortable, some of the stress of your recent life dissipating as he... wait, did he just grab your butt?<br>
<br>
You don't have time to react before he's on to the next student. You follow along with the rest of the class on confused autopilot.
<<else>>
You're certain he recognises you but he starts the class without comment, launching into some basic stretches before guiding you all through different poses, being careful to point out simpler variations for the novices, though you are surprised to discover you have a bit of a knack, already able to do a few of the intermediate versions.<br>
<br>
You're in cobra pose when he finally comes close to you, casually kneeling down as if he's helping tweak your position.<br>
<br>
"@@.npc_yogateacher;So I never really got a chance to say anything before, but since you returned for a second class I figure maybe you're moving on? That's good, holding on to grudges is bad energy, mon, and truthfully, I never meant you harm.@@"<br>
<br>
You don't have the first clue of how to respond, settling on just staring straight ahead as you arch further into the position.<br>
<br>
"@@.npc_yogateacher;<<=setup.getNpcName('npc_exgirlfriend', 'first')>> has actually told me more about you and, well, you seem like a good guy, just a little pent up, but hey, yoga is great for that, mon! Speaking of you're really doing good, your body definitely seems like it was meant to be... flexible.@@"<br>
<br>
<<printThought $player "Wait... did he just hit on me?">><br>
<br>
He walks away before you can respond, the class ending soon after and he is soon swarmed by other students asking questions.
<</if>>
<br><br>
Feeling relaxed confused and a little... aroused? All at the same time you hurry out of the classroom.<br>
<br>
[<<moveTo "room_gym_main" "Finish class." 60>>]
</div>
/* TODOfuture: this needs an additional variant if you've already "come out" as female to your ex/met her at the fetish club *//*#
#desc: stay for third yoga class (ex gf in class)
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $gym.classes.yoga.level_fem = 4>>
<<else>>
<<set $gym.classes.yoga.level_male = 4>>
<</if>>
<<set $player.timebased.horny += 30>>
<<applyExperience 'dexterity' 8 'very' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_yoga.png" "./images/characters/npc_yogateacher.png">>
<div id="invframe" class="scrolltext">
The class is chugging along as normal, your body welcoming the relaxing stretch of the various movements until he has the class move into a plow pose.<br>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
Shoulders on the mat, butt in the air you don't realise how vulnerable and exposed you are until he suddenly appears above you, gently straightening your spine and pushing your legs further down.<br>
<br>
Bent severely you're not that far off from performing auto-fellatio<<if setup.getItemFromType("cage") != "">>well, discounting the fact that your cage makes that extra-impossible<</if>>.<br>
<br>
"@@.npc_yogateacher;Yea, that's right, just relax into it, feel the stretch, you're looking beautiful...@@"<br>
<br>
Your heart is racing, realizing how close you are to being piledriven... and yet if it wasn't for the absorptive power of fabric you might have just dripped pre-cum on your face.<br>
<br>
Fortunately he moves on before you can get any more humiliated... or is it excited?, and you eagerly move on to the next, less... sexualized position.
<<else>>
Shoulders on the mat, butt in the air you're deep in focus as you try to relax into the position, apparently missing his instruction to pair off to help one another until suddenly <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> face pops into view above your butt.<br>
<br>
You look up wide-eyed as she smiles and helps fold you up just a little bit more.<br>
<br>
"@@.npc_exgirlfriend;Hey, so, I'll be honest. When <<=setup.getNpcName('npc_yogateacher', 'first')>> said you had showed up for his class I didn't believe it... and then you came back?@@" She smiles, pushing you even further into the stretch. If you weren't wearing clothes you'd be damn near in position to perform auto-fellatio on yourself...<br>
<br>
"@@.npc_exgirlfriend;Anyway, I'm really happy you're coming out of your shell a bit more, and <<=setup.getNpcName('npc_yogateacher', 'first')>> is seriously like... THE BEST yoga instructor I've ever had.@@"<br>
<br>
"@@.npc_yogateacher;Good, go ahead and switch roles now, remember you aren't trying to force your partner, just support and guide them to better relax into the pose.@@"<br>
<br>
"@@.npc_exgirlfriend;Alright now, my turn!@@" She quips, hopping off of you and getting into position.<br>
<br>
On autopilot you somehow manage to get up to your knees, feeling self-conscious of every touch as you try to help.<br>
<br>
She's already folded up pretty good, her yoga pants stretched so tight you can tell she's wearing a very narrow g-string. "@@.npc_exgirlfriend;Come on, I think I'm really close to mastering this position...@@"<br>
<br>
You push slightly forcefully as she hums in pleasure only to sense someone next to you and look up to see <<=setup.getNpcName('npc_yogateacher', 'first')>> standing over you. Your heart skips a beat but if he is bothered by the compromising position you're in with what his now HIS girlfriend he certainly doesn't show it.<br>
<br>
"@@.npc_yogateacher;No, no, you want to fold your hips, not your spine, here, hold her there.@@" He adjusts your hands while assisting as well, the both of you working together to fold <<=setup.getNpcName('npc_exgirlfriend', 'first')>> up even tighter.<br>
<br>
"@@.npc_exgirlfriend;Oh yea, that feels so much better, you think I'll be ready for yogic sleep pose soon?@@"<br>
<br>
He grins down at her, "@@.npc_yogateacher;I guess we'll see tonight...@@"<br>
<br>
You can't help but blush, thankful when he calls for the class to reset back to your original mats as you turn away from the intimate exchange you can't even believe you just witnessed.<br>
<br>
<<printThought $player "How could he-? Are they-? But I-?">><br>
<br>
You try to focus back on the class at hand... but you can't help but find your thoughts drifting back... particularly to what position "yogic sleep pose" is...
<</if>>
<br><br>
The class wraps up further incident or contact and you pack up your things. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> bounces up to greet him with a hug and a passionate kiss but, strangely, it doesn't bother you like it should. Certainly you feel a twinge of regret for your past, and yet... You shake your head, not wanting to think about it anymore.<br>
<br>
[<<moveTo "room_gym_main" "Finish class." 60>>]
</div>/*#
#desc: dex unlock via yoga
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<applyExperience 'dexterity' 9 'terrible' $EXPOSED>>
<<setThreshold 'dexterity' 'other' 'yoga' true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_yoga.png" "./images/characters/npc_yogateacher.png">>
<div id="invframe" class="scrolltext">
Settling in for another yoga class you find yourself strangely centred, flowing between positions with a fresh ease.<br>
<br>
The instructor seems to notice as well, calling you to the front to demonstrate a move which you do with surprising confidence, grace and ease.<br>
<br>
After class the instructor drops by to congratulate you. "You did great today, I could really see something clicking as you seemed to find your inner balance point." <br>
<br>
You thank her for the class and she walks away.<br>
<br>
[<<moveTo "room_gym_main" "Finish class." 60>>]
</div>/*#
#desc: stay for fourth yoga class (try to pick up yoga teacher) Reclining goddess pose
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $gym.classes.yoga.level_fem = 5>>
<<else>>
<<set $gym.classes.yoga.level_male = 5>>
<</if>>
<<applyExperience 'dexterity' 8 'very' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_yoga.png" "./images/characters/npc_yogateacher.png">>
<div id="invframe" class="scrolltext">
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<=setup.getNpcName('npc_yogateacher', 'first')>> greets you with a smile as you walk into the classroom, the class commencing a few minutes later with some warm-up stretches and breathing exercises.<br>
<br>
Maybe it's just the slightly lower turnout today but it seems like <<=setup.getNpcName('npc_yogateacher', 'first')>> is spending an excess of time "helping" you out, his hands roaming tenderly over your body as he assists you in perfecting each position.<br>
<br>
Your heart is pounding in your chest at the confusing feelings he's giving you. Sure, he's the guy who "stole" your ex but... he's also really hot and from how he's acting you would swear he's... into you?<br>
<br>
Finally granted a reprieve when he moves back to the front of the class your heart is racing once more as, with the class assuming a reclining goddess pose, you happen to look at the lovely woman seated in front of you and notice that she has a quite substantial bulge straining within her yoga pants.<br>
<br>
Trying to focus on your breathing you can't help but watch as <<=setup.getNpcName('npc_yogateacher', 'first')>> re-appears to help the woman, gently opening her knees wider and tucking her feet closer in.<br>
<br>
<<printThought $player "Wait, there's no way he couldn't have seen that, he's, like, right there!">><br>
<br>
The class wraps up without any further distractions... until you spot <<=setup.getNpcName('npc_yogateacher', 'first')>> walking in your direction with an enticing grin on his face.<br>
<br>
For some reason you're put in mind of the look of absolute joy on <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> face when you stumbled in on her having sex with <<=setup.getNpcName('npc_yogateacher', 'first')>> in the instant before they noticed your presence... come to think of it, despite your ex's look of shock <<=setup.getNpcName('npc_yogateacher', 'first')>> was surprisingly calm, almost like he was more confused at your and <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> high-octane reaction than in any way upset.<br>
<br>
[<<moveTo "event_gym_class_yoga_4_1" "Stick around and see what he has to say." 60 "<<set $scene.stay=true>>">>]<br>
[<<moveTo "event_gym_class_yoga_4_1" "Hurry away before anything can happen." 60 "<<set $scene.stay=false>>">>]
<<else>>
Another of <<=ps(setup.getNpcName('npc_yogateacher', 'first'))>> surprisingly relaxing yoga classes is humming along until you move into a reclining goddess pose and you happen to look at the woman in front of you.<br>
<br>
Laying on her back with her knees spread gives a quite clear view of her crotch... and the quite substantial bulge in her yoga pants.<br>
<br>
Trying to focus on your breathing you can't help but watch as <<=setup.getNpcName('npc_yogateacher', 'first')>> re-appears to help the woman, gently opening her knees wider and tucking her feet closer in.<br>
<br>
<<printThought $player "Wait, there's no way he couldn't have seen that, he's, like, right there!">><br>
<br>
You're on your way out when you happen to glance back to see <<=setup.getNpcName('npc_yogateacher', 'first')>> leaning in for a kiss with the girl who was positioned in front of you, his hand sliding down her back and then under her tight yoga pants.<br>
<br>
<<printThought $player "Oh, wow! Well I guess that's none of my business...">><br>
<br>
You quickly hurry out of the room with the rest of the class as <<=setup.getNpcName('npc_yogateacher', 'first')>> and his student continue to make out.<br>
<br>
[<<moveTo "room_gym_main" "Leave." 60>>]
<</if>>
</div>/*#
#desc: option of doing it with yoga teacher, or see him hook up with another futa
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_backroom.png" "./images/characters/npc_yogateacher.png">>
<div id="invframe" class="scrolltext">
<<if $scene.stay>>
Walking straight towards you <<=setup.getNpcName('npc_yogateacher', 'first')>> comes in for a kiss, his hot lips wraping around your own, his tongue as nimble, lithe, and flexible as the rest of his body as it does a little yoga routine inside your mouth.<br>
<br>
<<if $npc_yogateacher.flags.reactnamechange>>
You balk slightly pulling away and mumbling something about <<=setup.getNpcName('npc_exgirlfriend', 'first')>>.<br>
<br>
He continues to kiss you neck as he whispers a response.<br>
<br>
"@@.npc_yogateacher;Shhh, shhh, shhh. Don' worry mon, she know I'm too much for jus' one woman, and you beautiful now, lemme make things up to you...@@"
<</if>>
<br><br>
His hands roaming down your back to squeeze your butt he finally pulls back with a grin, leaving you gasping. He looks past your shoulder for a moment before leaning in to whisper in your ear.<br>
<br>
"@@.npc_yogateacher;Whadaya say... feel like inviting a third?@@"<br>
<br>
You look back to where the girl who was in front of you in yoga class is standing with one foot out the door, looking back with naked lust, the previous bulge in her pants now swelling into the VERY obvious shape of a <<getWordLadyPenis $player>>.<br>
<br>
<<=setup.getNpcName('npc_yogateacher', 'first')>> kisses your neck. "@@.npc_yogateacher;Come on, mon. It'll be fun.@@"<br>
<br>
[<<moveTo "event_gym_class_yoga_4_2" "Say you want him all to yourself." 60 "<<set $scene.threesome=false>>">>]<br>
[<<moveTo "event_gym_class_yoga_4_2" "Say the more the merrier." 60 "<<set $scene.threesome=true>>">>]
<<else>>
As you're walking out the door you glance back to see <<=setup.getNpcName('npc_yogateacher', 'first')>> leaning in for a kiss with the girl who was positioned in front of you, his hand sliding down her back and then under her tight yoga pants.<br>
<br>
<<printThought $player "Oh, wow, well I guess that's none of my business...">><br>
<br>
You quickly hurry out of the room with the rest of the class as <<=setup.getNpcName('npc_yogateacher', 'first')>> and his student continue to make out while drifting towards a private "back" room.<br>
<br>
Just as they're about to disappear <<=setup.getNpcName('npc_yogateacher', 'first')>> catches a glimpse of you and smiles. The two of them are suddenly both looking at you, her licking her lips as he waves you over.<br>
<br>
<<printThought $player "Oh shit, did they just- do I dare?">><br>
<br>
[<<moveTo "event_gym_class_yoga_4_2" "Join them." 60 "<<set $scene.threesome=true>>">>]<br>
[<<moveTo "room_gym_main" "Continue about your business." 60>>]
<</if>>
</div>/*#
#desc: sex with yoga teacher and (possibly) futa student
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $npc_yogateacher.flags.after_class = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_backroom.png" "./images/characters/npc_yogateacher.png">>
<div id="invframe" class="scrolltext">
<<if $scene.threesome>>
The three of you head into a backroom, looking to be some sort of small employee lounge with a tv, a couch and some chairs scattered about.<br>
<br>
Smiling at the two of you <<=setup.getNpcName('npc_yogateacher', 'first')>> rifles through his bag before putting out a couple of pills. Swallowing two himself he offers one each of you and your new friend.<br>
<br>
"@@.npc_yogateacher;Whadaya say, feel like having a bit of extra fun?@@"<br>
<br>
Your cohort grabs a pill and knocks it back as <<=setup.getNpcName('npc_yogateacher', 'first')>> smiles at you and extends his hand.<br>
<br>
[<<moveTo "event_gym_class_yoga_4_3" "YOLO, pop the pill." 60 "<<set $scene.drug=true>>">>]<br>
[<<moveTo "event_gym_class_yoga_4_3" "Decline his offer and do it sober." 60 "<<set $scene.drug=false>>">>]
<<else>>
You pull <<=setup.getNpcName('npc_yogateacher', 'first')>> back in as he smiles.<br>
<br>
"@@.npc_yogateacher;Oh, you don't wanna share? That's fine, I know some students benefit more from... one on one training.@@"<br>
<br>
Scooping you off your feet he carries you into the back room. It seems to be some sort of employee lounge and he gently deposits you in a sofa before reaching into his bag to pull out some pills.<br>
<br>
Popping two himself he offers one to you with a grin.<br>
<br>
"@@.npc_yogateacher;Whadaya say, feel like a bit of extra fun?@@"<br>
<br>
[<<moveTo "event_gym_class_yoga_4_3" "YOLO, pop the pill." 60 "<<set $scene.drug=true>>">>]<br>
[<<moveTo "event_gym_class_yoga_4_3" "Decline his offer and do it sober." 60 "<<set $scene.drug=false>>">>]
<</if>>
</div>/*#
#desc: sex with yoga teacher and (possibly) futa student
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.drug>>
<<set $player.timebased.horny = 100>>
<<applyExperience 'bimbofication' 10 'normal' $EXPOSED>>
/%TODOfuture: drug!%/
<</if>>
<<applyExperience 'anal' $npc_yogateacher.penis_size 'very' $SEEN_STRANGER>>
<<if $scene.threesome>>
<<applyExperience 'penis' 11 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_yogateacher.penis_size 'very' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'penis' 8 'normal' $SEEN_STRANGER>>
<<if $scene.drug>>
<<applyExperience 'oral' $npc_yogateacher.penis_size 'slightly' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_backroom.png" "./images/characters/npc_yogateacher.png">>
<div id="invframe" class="scrolltext">
<<if $scene.drug>>
The drug, whatever it is, hits you fast, your horniness ramping off the chart as you suddenly feel more sensitive, the whole world taking on a soft, lusty haze.<br>
<br>
<<if $scene.threesome>>
From the look in their eyes the other two are just as aroused as you are, <<=setup.getNpcName('npc_yogateacher', 'first')>> whipping out his cock with a look that says "who's first?" <br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
Whether thanks to the drugs or your own aggressively developing slutty nature you jump on his cock with gusto, grabing it with both hands as you give it a good slurp.<br>
<br>
A little slower your fellow girl seems in no interest in missing out, kneeling next to you and nosing her way in for the two of you to "share."
<<else>>
Even drugs aren't enough to overcome your natural shyness so the other girl beats you in to start sucking <<=ps(setup.getNpcName('npc_yogateacher', 'formal'))>> <<getWordPenis $player>>. It isn't long before you're just too turned on to resist, however, and you soon drop to your knees beside her, pushing in to join in sucking him off.
<</if>>
<br><br>
Like a good pair of sluts you lick and slurp, kissing each other around his cock as your hands slide down.
<<if setup.getItemFromType("cage") == "">>
<<if setup.getItemFromType("pants").includes("yoga")>>
Groping one another through tight yoga pants you both moan and suck and stroke in a drug-fuelled haze until he pushes you away and takes charge.
<<else>>
You grope her through her tight yoga pants as she returns the favour, one slender hand slipping under your clothes to fondle and stroke.
<</if>>
<<else>>
You stroke her through the thin, straining fabric of her yoga pants as she cups and fondles your caged <<getWordMyPenis $player>>.
<</if>>
<br><br>
"@@.npc_yogateacher;You two are too hot.@@" He states, bending you over and pulling down your pants. You gasp, too turned on to be anything other than aroused.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
"@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time for the real thing.@@"<br>
<br>
You start to moan as he slides the plug out of your rear with a pop. Your voice drops half an octave when he replaces it with his sizable <<getWordPenis $player>>, still slick with saliva.
<<else>>
He fingers you for a few moments, opening up your ass before pressing his saliva-slick <<getWordPenis $player>> against your hole and pushing inside.
<</if>>
<br><br>
Adjusting to his presence you look up to find the other girl has repositioned in front of you, laying on her back with legs spread wide as her <<getWordLadyPenis $player>> practically bursts out of her pants. Hungrily you dive forward, <<=setup.getNpcName('npc_yogateacher', 'first')>> keeping pace, fucking your ass as you slurp and suck your futa friend.<br>
<br>
The drug's effects only strengthening you lose track of time, unsure whether it was a few minutes or an hour of taking it in both ends before all three of you cum in unison.<br>
<br>
Gulping <<if setup.getTotalValue("cum") >= 10>>delicious<<else>>salty<</if>> cum as fast as you can you moan, soiling your pants with your excitement.<br>
<br>
The orgasm surfs on a wave of drug-fuelled excitement, so intense that you almost pass out, stars flashing before your eyes as you hold the cock deep in your throat until you have no choice but to pull back and gasp for breath.<br>
<br>
Leaning forward the girl kisses you passionately, trading her cum back and forth as <<=setup.getNpcName('npc_yogateacher', 'first')>> slides out of your rear<<if setup.getItemFromType("plug") != "">> and replaces your plug<<else>>, a bit of <<getWordCum $player>> leaking down your leg<</if>>.<br>
<br>
The drug seems to fade along with the orgasm, the three of you sharing a hug and thanks before going your separate ways.
<<else>>
Dropping to your knees you start passionately sucking his cock as soon as it is free of his pants.<br>
<br>
Horny, and high as a kite, all you can think about is cock, and how much you want it inside of you as you noisily suck and slurp. It just isn't enough, however and you've barely got him lubed up with your saliva before you're spinning around, sticking your ass in the air in full downward dog and wiggling it in invitation.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
Pulling your clothes aside he fingers you plug as he gets a good grasp around the base.<br>
<br>
"@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time for the real thing.@@"<br>
<br>
You start to moan as he slides the plug out of your rear with a pop. Your voice drops half an octave when he replaces it with his sizable <<getWordPenis $player>>, still slick with saliva.
<<else>>
Pulling your clothes out of the way he fingers you for a few moments, opening up your ass before pressing his saliva-slick <<getWordPenis $player>> against your hole and pushing inside.
<</if>>
<br><br>
Riding a high of horniness, adrenaline and who knows what you bounce back and forth as he thrusts into you, each stroke better than the last.<br>
<br>
The drug's effects seem to strengthen with each moment, as if he were pumping more into you and you lose all track of time, unsure whether it was a few minutes or an hour of taking it in both ends before he finally cums.<br>
<br>
His release kicks off an orgasm of your own and you soak your pants as he bestows you with a nice creamy filling.<br>
<br>
"@@.npc_yogateacher;Good girl.@@" He states, giving your ass a friendly squeeze before sliding out<<if setup.getItemFromType("plug") != "">> and replacing the plug in your rear<<else>>, a bit of <<getWordCum $player>> leaking down your leg<</if>>.<br>
<br>
You share a few more kisses as the drugs start to fade, taking a moment to fix your clothes before the both of you go your separate ways.
<</if>>
<<else>>
<<if $scene.threesome>>
<<=setup.getNpcName('npc_yogateacher', 'first')>> shrugs at your declination before popping the pill himself. Whatever was in the pill it seems to hit fast and hard, pushing the already high sexual energy in the room up to eleven as reaches down to reveal an astoundingly hard <<=setup.getNpcName('npc_yogateacher', 'first')>>.<br>
<br>
Like a cat leaping onto its prey the other girl jumps face-first onto his cock, sucking and stroking with hungry enthusiasm.<br>
<br>
As she sucks <<=setup.getNpcName('npc_yogateacher', 'first')>> leans forward to pull you in for a kiss, groping you with one hand as he holds you close. The moments stretch on until the two of you finally break for air and he looks at you with wild-eyed lust. Shooing the other girl away he bends you over, almost tearing at your clothes to expose your ass.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
Reaching for your ass his fingers find your plug and he gets a good grasp around the base.<br>
<br>
"@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time for the real thing.@@"<br>
<br>
You gasp at your sudden emptiness, then moan has he pulls you onto his cock, the saliva-shift shaft sliding into you.
<<else>>
Reaching for your ass he fingers you for a few moments, opening you up before pressing his saliva-slick <<getWordPenis $player>> against your hole and pushing inside.
<</if>>
<br><br>
You tremble at his aggressive, drug-fuelled entry, only to look forward and find yourself face to face with an equally wild-eyed woman.<br>
<br>
Grabing you by the hair she pulls you in for a kiss while <<=setup.getNpcName('npc_yogateacher', 'first')>> continues to fuck you from behind. As delicate as she seemed when you first saw her she is rough and agressive, nibbling on your lip and forcing her tongue into your mouth before pulling you back and shoving your face down towards her crotch.<br>
<br>
With one hand entwined through your hair she pulls down her tight pants with the other, her hard <<getWordLadyPenis $player>> slapping you in the face before she guides it between your lips. You gasp and she moans as she thrusts into your throat while you continue to take it from behind.<br>
<br>
Like a piece of swiss cheese in a sissy sandwich your holes are soon filled with thick mayo as the combination of your tight orifices and the drugs have both of them cumming at once, their release met a moment later by you splooging in your pants.<br>
<br>
You're panting for air as she yanks your face free and pulls you in for another kiss, cum and drool leaking down your face as <<=setup.getNpcName('npc_yogateacher', 'first')>> slides out of your ass.<br>
<br>
You wobble a bit, feeling used and dirty but also... good, <<=setup.getNpcName('npc_yogateacher', 'first')>> having maximised every moment spent in your ass as your prostate still tingles with pleasure<<if setup.getItemFromType("plug") != "">> milking your plug as he shoves it back in place<</if>>.<br>
<br>
Shuddering slightly you watch as your partners come down from their drug-fuelled sexual high, both thanking you before helping clean you up and the three of you going your satisfied separate ways.
<<else>>
<<=setup.getNpcName('npc_yogateacher', 'first')>> shrugs at your declination before popping the pill himself. Leaning in for a kiss your lips and mouths dance a tango as his arms slide down your body and he grinds against you.<br>
<br>
"@@.npc_yogateacher;Mmm, you feel so sexy, I was watching you all class, imagining how good it would feel to fuck your tight ass...@@"<br>
<br>
<<printThought $player "Hmm, he really seems to have a thing for anal.">><br>
<br>
You gasp as his lips explore down your neck, your body arching and turning at his direction just as you did in class. Rotating you around and bending you over he grinds against your hips before pulling down your pants to expose your rear.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
"@@.npc_yogateacher;Wearing a plug for class? What a good girl, but now it's time for the real thing.@@"<br>
<br>
You gasp at your sudden emptiness when he removes the plug from your rear, then moan as he pulls you onto his cock, the sweat-slick shaft sliding into you with remarkable ease.
<<else>>
Reaching for your ass he fingers you for a few moments, loosening you up before pressing his sweat-slick <<getWordPenis $player>> against your hole and pushing inside.
<</if>>
<br><br>
"@@.npc_yogateacher;Oh yea, you feel real good...@@" He whispers in your ear as his hips rock, his cock perfectly angled to stimulate your prostate and make you tremble with pleasure.<br>
<br>
His breath hot on the back of your neck your sweaty bodies press close, you can tell it won't be long for either of you as he quickens his pace.<br>
<br>
He climaxes with a shudder and you cum in your pants a moment later. Holding tight for several long, wonderful moments he finally slides out<<if setup.getItemFromType("plug") != "">> nimbly replacing the plug before a single drop of his seed can leak down your leg<<else>>a delicate trickle of his seed escaping down your leg before he pulls up your pants with a snap<</if>>.<br>
<br>
You lean back and share a kiss, feeling his heart slow as his orgasm fades and with it, the effects of the drugs as he seems to soften and calm.<br>
<br>
"@@.npc_yogateacher;You were great.@@" He states and you respond in kind. Kissing you again he gives you a hug before separating. "@@.npc_yogateacher;As much as I'd love to do you again I gotta get back to work, catch you later, mon...@@"<br>
<br>
You blush and follow him out of the staff room, the two of you going your separate ways.
<</if>>
<</if>>
<br><br>
<<printThought $player "Wow... I guess I kind of understand why <<=setup.getNpcName('npc_exgirlfriend', 'first')>> cheated on me, if he's always that good...">><br>
<br>
Back in the main gym area you try to refocus away from sex, a feat that is a bit of a challenge given the number of fit, sexy people within view.<br>
<br>
[<<moveTo "room_gym_main" "Head out." 60 "<<set $player.timebased.horny = 0>>">>]
</div>/*#
#desc: gym lift weights alone
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.strengthSpecialPossible = !$scene.strengthSpecialPossible && setup.analyzeWornTags(['female','male','unisex']) == 'female' &&
(setup.checkVisibleClothingTag('slutty') + setup.checkVisibleClothingTag('cute') > 60)>>/%TODOfuture: slutty only%/
<<if $gym.lewd_male && random(1,3) == 1>>
<<set $scene.strengthSpecial = "male">>
<<elseif $gym.lewd_female && setup.getTotalValue("strength") >=15 && random(1,2) == 1>>
<<set $scene.strengthSpecial = "female">>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'slight' $SEEN_STRANGER>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue $player 20>>
<<else>>
<<set $scene.strengthSpecial = "none">>
<</if>>
<<set $scene.exercise +=1>>
<<if !$scene.strengthSpecial>>
<<set _strength = setup.getTotalValue("strength")+1>>
<<applyExperience 'strength' _strength 'insignificant' $SEEN_STRANGER>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue $player 20>>
<<set $scene.meetSwoleBro = (setup.getTotalValue("strengI feth") >= 10 && $npc_swolebro.stage == 0)>>
<<if $scene.meetSwoleBro>>
<<set $npc_swolebro.stage = 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.strengthSpecial == 'male'>>
You've just finished your warm-ups and are upping the weights for your first set when a guy wanders past and asks if you need "help." <br>
<br>
Turning around you look him over. He's in pretty good shape with a classic "gym bro" look. He cockily grins back at you.<br>
<br>
[<<moveTo "event_gym_weights_special_1" 'Accept his "help."' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_weights_special_1" "Say you're doing fine on your own." 600 "<<set $scene.accept=false>>">>]
<<elseif $scene.strengthSpecial == 'female'>>
Deadlift is on the schedule for today and, after a "warm-up" that would be a heavy lift for all but the strongest other gym patrons you notice you have an admirer.<br>
<br>
Standing well taller than you even in flats you find yourself looking upon an amazon of a woman, her thighs stretching her leggings so tight they look practically painted on, a sports bra serving to keep her substantial cleavage "under control" while leaving her muscular arms and six-pack abs on display.<br>
<br>
Nodding at the bar she grins down at you. "You planning on lifting all that weight, girl?" <br>
<br>
Feeling called out you straighten up and nod, throwing another five kilos on either side of the bar before chalking up good and then stepping into position. Taking a deep breath and <<if setup.getItemFromType("plug") != "">>clenching down on the plug in your rear<<else>>squeezing tight<</if>> you pull, hard, the weight slowly rising off the floor until you hit lockout holding it there for a moment as you make eye contact with the now grinning woman before reversing to put it back down.<br>
<br>
Stepping onto the platform the woman places a foot in the bar to stop it from rolling, in so doing showing off that there is a wet spot forming between her legs.<br>
<br>
"Well, well. Looks like this slut is skilled at deadlift. But... you know what they say about deadlifters; that they eat ass. So, is it true?" <br>
<br>
Your heart pounds - not just from the heavy lift you just finished but from the woman's presence, radiating strength and a heady scent of sweat you can tell from her grin this isn't a joke, it's a proposition... do you dare take her up on it?<br>
<br>
[<<moveTo "event_gym_weights_eat_ass_1" 'Say "of course it is."' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_weights_eat_ass_1" 'Blush and turn her down."' 600 "<<set $scene.accept=false>>">>]
<<else>>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
You head straight for the free weights and start moving massive kilos. People twice your size keep glancing in your direction with a mix of jealousy and surprise at how easily you rep out each heavy set.<br>
<br>
Savoring your nice pump you smile, for whatever else may have happened to you, you. Are. Strong.
<<else>>
You head for the free weights for a nice heavy workout. Squats, dead, bench, you do a circuit of the big three followed by additional accessory work to help sculpt and target problem areas.<br>
<br>
After this much time in the gym you find it almost relaxing, feeling your strength building with every completed rep as you admire your toned form in the mirror.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
You stick to the machines for your lifts, still a bit intimidated to try free weights on your own.<br>
<br>
You aren't moving anything of real substance but you at least feel like you're doing something, steadily chiseling away at sculpting a stronger body.
<<else>>
You spend some time trying to lift some weights but even the pink fru-fru dumb-bells have your arms aching. You've got a long road ahead of you before you can even think about getting "strong."
<</if>>
<</if>>
<br><br>
<<include workoutBreasts>>
<<if $scene.meetSwoleBro>>
You notice a group of large, strong dudes working out together nearby, one of them seeming to look over at you occasionally. As you are packing up he approaches you with a smile.<br>
<br>
"@@.npc_swolebro;Hey, so couldn't help but notice you're movin' some serious weight over here! Next time you're working out you should come over with us, always happy to have another friend under the iron and it's always more fun to share a good lift with your bros and brosephines, plus having a spot ready so you can really go for it!@@"<br>
<br>
You thank him for the offer and say you'll think about it.
<</if>>
[<<moveTo "room_gym_main" "Do something else." 1200>>]
<</if>>
</div>/*#
#desc: gym lift accept help from random dude
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if !$scene.accept>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'little' $SEEN_STRANGER>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue $player 20>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod and motion for him to help load up the other side of the bar as you continue your workout. As you work through the set he offers tips and suggestions.
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
His advice is either wrong or useless and you finish up your warm-up with ease as you consider your next move.
<<else>>
His advice is bro-science nigh-useless but you finish your warm-up with ease and consider your next move.
<</if>>
Looking over you realize he's already starting to strip the bar, seemingly assuming this is your max.<br>
<br>
"So you obviously have a bit of experience but squatting this heavy is just going to make you slow and bulky, here, let me should you a better routine..." <br>
<br>
[<<moveTo "event_gym_weights_special_2" "Show him what you're really capable of." 600 "<<set $scene.dumb=false>>">>]<br>
[<<moveTo "event_gym_weights_special_2" "Go along with things and play dumb and weak." 600 "<<set $scene.dumb=true>>">>]
<<else>>
<<if setup.getTotalValue("strength") > 5>>
Despite his somewhat patronising tone the extra set of eyes is helpful to correct some minor form issues.
<<else>>
Though his suggestions are a bit patronising the truth is you kind of need the help.
<</if>>
Racking the bar he starts to strip the weight, obviously figuring this is your max.<br>
<br>
"So you obviously have a bit of experience but squatting this heavy is just going to make you slow and bulky, here, let me should you a better routine..." <br>
<br>
[<<moveTo "event_gym_weights_special_2" "Go along with his suggestions." 600 "<<set $scene.dumb=true>>">>]<br>
[<<moveTo "event_gym_weights_special_1" "This has gone too far, tell him to buzz off and go back to your routine." 600 "<<set $scene.accept=false>>">>]
<</if>>
<<else>>
You roll your eyes and decline the dude's offer of "help" with a shrug he wanders off and you continue your workout.<br>
<br>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
Now free of distraction you finish loading the bar and start moving massive kilos. People twice your size keep glancing in your direction with a mix of jealousy and surprise at how easily you rep out each heavy set.<br>
<br>
Savoring your nice pump you smile, for whatever else may have happened to you, you. Are. Strong.
<<else>>
Now free of distraction you do a nice heavy circuit of squats, dead, and bench, slightly regretting not having a spot for the last but you end up not having any issues repping out.<br>
<br>
After this much time in the gym you find it almost relaxing, feeling your strength building with every completed rep as you admire your toned form in the mirror.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
You stick to the machines for your lifts, still a bit intimidated to try free weights on your own.<br>
<br>
You aren't moving anything of real substance but you at least feel like you're doing something, steadily chiseling away at sculpting a stronger body.
<<else>>
You spend some time trying to lift some weights but even the pink fru-fru dumb-bells have your arms aching. You've got a long road ahead of you before you can even think about getting "strong."
<</if>>
<</if>>
<br><br>
<<include workoutBreasts>><br>
<br>
[<<moveTo "room_gym_main" "Do something else." 1200>>]
<</if>>
</div>/*#
#desc: gym workout with random dude
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set _strength = setup.getTotalValue("strength")>>
<<if $scene.dumb>>
<<applyExperience 'strength' _strength 'little' $SEEN_STRANGER>>
<<if setup.getTotalValue("strength") > 10>>
<<applyExperience 'bimbofication' 11 'normal' $SEEN_STRANGER>>
<</if>>
<<else>>
<<applyExperience 'strength' _strength 'normal' $SEEN_STRANGER>>
<</if>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue $player 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.dumb>>
<<if setup.getTotalValue("strength") > 10>>
Putting on a bubbly, blank expression you let him "drive" the rest of the workout. He runs you through a fairly basic bodybuilder "toning" sequence, having you work with machines and the small fru-fru weights while he "shows off" by demoing with dumb-bells that you could <<if setup.getTotalValue("strength") > 15>>easily<<else>>probably<</if>> handle yourself if you were actually trying.
<<else>>
You blush and thank him for the help as he runs you through the rest of the workout. You aren't sure if he has a plan, exactly, but if it is it's really complicated as he has you do a whole flurry of exercises with fru-fru dumb-bells and various machines, all the time "demoing" each move with heavy dumb-bells way outside of what you could handle.
<</if>>
<br><br>
Reaching the end of the routine he leads you into one of the gyms private rooms where he "helps" you through a cooldown stretch that starts to get very... intimate, the scent of his sweat a bit intoxicating as you feel a non-muscular bulge pressing into you.<br>
<br>
[<<moveTo "event_gym_weights_special_3_weak" "Thank him and head on your way." 300 "<<set $scene.sex=false>>">>]<br>
[<<moveTo "event_gym_weights_special_3_weak" '"Reward" him for his assistance.' 600 "<<set $scene.sex=true>>">>]
<<else>>
Hiding a grin you start stacking on plates, he looks at you like you're making a joke but you glare at him until he matches it on the other side.<br>
<br>
<<if setup.getTotalValue("strength") > 15>>
"Hey, so I already worked out, I'm just helping out, besides this is a bit heavy even for me..." You cut him off mid-word as you swing under the bar and pop out three reps back to back, racking with authority as you flex to show off your pump.
<<else>>
"Hey, so I wasn't asking about working in, just helping out, but if you want me to show you how it's done at my work weight..." <br>
<br>
Before he can get into position you slide under the bar and pop out three reps back to back, racking with authority as you flex to show off your pump.
<</if>>
<br><br>
He stares at you, clearly teetering between fear and awe as you notice he's picked up an additional "bulge" in between the legs.<br>
<br>
[<<moveTo "event_gym_weights_special_3_strong" "Play at being his submissive muscle slut." 300 "<<set $scene.action='sub'>>">>]<br>
[<<moveTo "event_gym_weights_special_3_strong" "Take charge and toss him around a bit." 300 "<<set $scene.action='dom'>>">>]<br>
[<<moveTo "event_gym_weights_special_3_strong" "Just finish off your workout." 300 "<<set $scene.action='none'>>">>]
<</if>>
</div>/*#
#desc: gym post-workout strong variant with random dude
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<switch $scene.action>>
<<case 'sub'>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 7 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'little' $SEEN_STRANGER>>
<<applyfatigue $player 20>>
<<set $gym.events.strength_strong_sub = true>>
<<case 'dom'>>
<<applyfatigue $player -20>>
<<set $gym.events.strength_strong_dom = true>>
<</switch>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> private room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_private.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'sub'>>
The guy stares at you in awe as you step closer, pulling him towards you and leaning in to whisper in his ear.<br>
<br>
You ask him if he's never seen a strong woman before, and then follow up by asking how he would feel about "taming" one. From the way he moans he damn near jizzed his pants but reaching down and squeezing through his shorts confirms that, even if he has, he remains quite hard.<br>
<br>
Pulling back you wink and make eyes towards one of the gym's "private training" rooms, seconds later the two of your are inside, alone, you on your knees yanking his shorts to the floor and hungrily swallowing his cock.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You show off that your strength extends to suction as well as musculature as you slurp his full length down your throat.
<<else>>
Pulling him into you you suck him all the way to the base.
<</if>>
He tastes hot and sweaty and a little bit salty as you move your head up and down, grabbing his ass with both hands and lifting him into the air as you continue to suck.
<<else>>
You suck as best you can but, from the feel of things, he's so turned on by the way you're almost man-handling him it doesn't much matter.
<</if>>
<br><br>
With a shuddering gasp he cums, <<if setup.getTotalValue("oral") > 10>>and you thirstily slurp down every drop<<else>>and you find yourself swallowing rather than let it make a mess of your clothes<</if>>.<br>
<br>
Staggering back he stares at you in awe as you lick your lips, wink and then skip out of the room.
<<case 'dom'>>
With a confident grin you step away from the weights and towards him, casually scooping him up into your arms and carrying him to one of the gym's private rooms. He looks up at you in awe as he dangles in your arms, dropping to his hands and knees the moment you put him down to kiss and worship your feet.<br>
<br>
"My Goddess... I had no idea," he pauses to stare up at you and you grin down. You have to admit it's a bit of a flip from "normal" to have someone at your feet rather than the other way around. Walking over to a bench you sit down and enjoy the sensation of him worshiping and massaging your feet, smiling as he moves up your legs, tracing your flexed muscles.<br>
<br>
You pull your top up to expose your breasts, moaning as he starts to suck and lick, though it doesn't last long before his attention is diverted to your biceps, kissing his way up and down your arms as he gushes over how beautiful and strong you are.<br>
<br>
Rolling over onto your front you let him spend some time cuddling and worshiping your ass before finally deciding he's had enough. Rising to your feet you casually press him against the wall and then lift him up smiling at the way he shudders in response. Grinning back at him you wink and then let him drop before hurrying out of the room, leaving him breathing hot and heavy in your wake. For your part the brief massage has left you feeling energised.
<<case 'none'>>
You don't make a move and the moment passes. You can tell that the guy is hot and bothered and more than a bit in awe. He mostly just stares at you as you finish off your workout, occasionally expressing his impressed appreciation rather than giving any tips or suggestions as he had been earlier.<br>
<br>
Racking your final set you give him a wink and head on your way, leaving him to sit and "cool down" since standing up would result in the tent he's beeing pitching in his shorts becoming VERY obvious.
<<default>>
ERROR unexpected scene.action: <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym post-workout weak variant with random dude
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.sex>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 7 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'little' $SEEN_STRANGER>>
<<applyfatigue $player 20>>
<<set $gym.events.strength_weak = true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> private room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You ask him if he's got a blender bottle in his pocket... or if he's just happy to see you.<br>
<br>
He grins in response as you reach down to grab his cock through the thin fabric of his gym shorts.<br>
<br>
"Oh yea, looks like you know how to reward a trainer right..." <br>
<br>
You grin in response, soon having him on his back and your lips wrapped around his cock as you stare up at him. His cock is salty and sweaty, smelling of workout and masculine musk... but in a good way.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
His average <<getWordPenis $player>> meets your godlike fellatio skills
<<else>>
His average <<getWordPenis $player>> meets your very much above-average fellatio skills
<</if>>
and he is soon moaning in pleasure, leaving you to do all the work merely groaning and gasping as you give him the blow-job of a lifetime.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
He's about average but that's right in line with your skills as you give him the best blow/handjob you can.
<<else>>
He's about average but that's still a bit "big" for your skills but you do your best, applying tongue and hand together to get him off.
<</if>>
You guess he was already really turned on by the workout and such because, even with your mediocre skill, it isn't long before he's gasping on the edge of climax.
<</if>>
<br><br>
His load is... unimpressive in quantity but you swallow the <<if setup.getTotalValue("cum") > 10>>delicious<<else>>bitter<</if>> baby batter without objection rather than disrupt the mood.<br>
<br>
Catching his breath he quickly returns to his feet, a bit flustered as he reminds you to "keep doing what I showed you today," before ducking out of the room and leaving you on your own.
<<else>>
You thank him for his assistance and, ignoring the obvious bulge in his pants and the way he is staring at you, head off on your way.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: eat ass after deadlifting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.accept>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<set $scene.first = $player.analingusVirgin == "">>
<<if $scene.first>>
<<set $player.analingusVirgin = "gym_woman">>
<</if>>
<<set $gym.events.eat_ass = true>>
<<applyfatigue $player 20>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> private room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
The woman grins and you half expect her to just throw you over her shoulder and carry you off... Not that you would really mind, but you suppose it's probably better for "appearance" sake that she instead helps you clean up your weights and then leads the way to one of the gym's private rooms and closes the door.<br>
<br>
"Alright, hot stuff," she states with a leer as she turns and pulls down her pants to display her THICC but sculpted ass. "The buffet is open!" She announces, clenching and unclenching in invitation.<br>
<br>
<<if $scene.first>>
Rising up from her muscular thighs her ass is a sight to behold. You've never done anything like this before but you can't resist leaning kneeling forward... only for her to reach back with one hand and mash your face between her cheeks.
<<else>>
Dropping to your knees you crawl over, leaning towards her rear only for her to reach back with one strong hand and mash your face in between her cheeks.
<</if>>
You gasp in surprise, your lips brushing her quivering hole as she moans. "Mmm, yea, now get in there nice and deep..." <br>
<br>
Pinned against her rear you feel her powerful glutes squeeze against your face. Despite your position she smells good... sweaty and strong, a little bit musky and you do it, your tongue reaching out tentatively to trace the rim of her hole.<br>
<br>
Her taste - a little bit salty, a little bit musky draws you in and you hear her moan again as you spear your tongue into her hole, exploring that forbidden cavity, lips pressed against her tight rosebud as she hums in approval.<br>
<br>
"Mmmm, you eat ass even better than you lift... and you were lifting pretty good." She congratulates, adjusting her stance and spreading her cheeks for you to get even deeper.<br>
<br>
<<if $scene.first>>
This may be your first time but you're already feeling addicted to this fun new activity, the sense of submissive depravity brought on by what you're doing causing you to reach out and hug her hips, pulling yourself even closer as you hungrily lick and kiss.
<<else>>
You are in heaven, eagerly munching away as you switch off from making circles around her hole and spearing as deep as you can, doing your best to bury your face between her cheeks.
<</if>>
<br><br>
Sucking against her hole you feel her stagger slightly and groan as you realize that she just came, an assessment confirmed when you reach between her legs to find her already three fingers deep in her other hole.<br>
<br>
"Don't stop..." she moans, grinding against you as you do your best to keep up in between gasping for air, your every breath now heady with the mix of sweat and sex.<br>
<br>
Two more orgasms follow before she finally relents, releasing her hold on your head as she staggers forward, your own balance such that you almost fall onto your face, instead looking up from all fours as she turns to smile down on you, her chest heaving as if she'd just ran a mile.<br>
<br>
"Well! That was... that was the perfect end to a workout. You keep up the good work - muscle may be sculpted under the iron, but you need the right diet to keep you fuelled." <br>
<br>
Smiling at her joke she pulls up her pants and blows you a kiss before leaving the room. Catching your breath you rise to your feet and exit as well, finding that she has already disappeared out of sight.
<<else>>
The woman shrugs and walks away. You let out a sigh, trying to clear your head of her intoxicating, slightly intimidating presence as you clean up your weights.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym use elliptical
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<if setup.getTotalValue("stamina") >= 5 && !setup.hasThreshold('stamina', 'gym_stamina', 'elliptical')>>
<<setThreshold 'stamina' 'gym_stamina' 'elliptical' true>>
<<elseif setup.getTotalValue("stamina") >= 8 && setup.getItemFromType("plug") != "" && !setup.hasThreshold('stamina', 'gym_stamina', 'run_plugged')>>
<<setThreshold 'stamina' 'gym_stamina' 'run_plugged' true>>
<<else>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'normal' $EXPOSED>>
<</if>>
<<applyFatigue $player 30>>
<<set $scene.fitBimboTrigger = $npc_fit_bimbo.stage == 0 && setup.getTotalValue("stamina") >= 10 && setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<if $scene.fitBimboTrigger>>
<<set $npc_fit_bimbo.stage = 1>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<include enterroom>>
<<initRoom>>
<<if $scene.fitBimboTrigger>>
<<createBGR "./images/locations/gym_elliptical.png" "./images/characters/npc_fit_bimbo.png">>
<<else>>
<<createBGR "./images/locations/gym_elliptical.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
You head straight for the ellipticals. Even cranking speed and resistance to the max you're barely breathing heavy, your cardio practically limitless. <<if setup.getItemFromType("plug") != "">>The whole time your <<=setup.getItemName(setup.getItemFromType("plug"))>> only serves to spur you forward, every shift of it inside of you reminding you why you spend so much time on your body - so you can get be active to maximally enjoy being fucked long and hard.<</if>>
<<else>>
You head for the ellipticals and punch in a difficult routine. Even with the challenge before you it takes awhile before you even start to breath heavy. <<if setup.getItemFromType("plug") != "">>Even the filling presence of the <<=setup.getItemName(setup.getItemFromType("plug"))>> in your ass is merely enjoyable, the challenge of its presence well within your capabilities as it spurs you on. <</if>>Pushing through you go until the end, getting in the full routine before stepping of the machine.
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") >= 5>>
Feeling like you're starting to build up a bit of stamina you head for the elliptical machine.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
With each movement the <<=setup.getItemName(setup.getItemFromType("plug"))>> in your ass shifts and tugs, constantly pressuring your prostate and sending your heart racing to really "amp up" your workout.<br>
<br>
By the time you step off the machine you're sweaty and horny and feel almost like you've been fucked in the ass... almost.
<<else>>
It's much harder than a mere treadmill but by the end you feel like you've accomplished something, your arms and legs both burning from the exertion in a way that is subtly satisfying.
<</if>>
<<else>>
A bit intimidated by options you just head for a treadmill. Unfortunately you're so unconditioned a mere brisk walk has you breathing heavy, forcing you to turn down the speed as you try to at least go a reasonable distance, even if you aren't doing so particularly swiftly.
<</if>>
<</if>>
<br><br>
<<include workoutBreasts>>
<<if $scene.fitBimboTrigger>>
You've finished your workout and are wiping down your machine when a woman cruises past and starts chatting at you. You aren't sure what's more distracting - her near perfect gym body... or her giant rack, all wrapped up in VERY tight and revealing pink outfit.<br>
<br>
"@@.npc_fit_bimbo;Hey, so I, like, couldn't help but notice that that you were motoring along like it wasn't no thing! If you're looking for a REAL workout to take things to the next level you should check out private workout group. It's a bit different than you're probably used to but if you want to really push it and build a body that will attract ALL the guys... and gals! Well, I hope to see you there!@@"<br>
<br>
She bounces away before you can respond as you notice that she is... wearing high heels in the gym?<br>
<br>
<<printThought $player "Weird, I wonder what sort of class she was talking about...">><br>
<br>
<</if>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div><<set $scene.breasts = setup.calcBreastSize($player)>>
<<if $scene.breasts != "none">>
<<if $scene.breasts == "large" || $scene.breasts == "massive">>
<<if setup.getItemFromType("bra") != "">>
<<if setup.getItemObjFromType("bra").tags.indexOf("gym")>>
Your bra does its job, tightly containing even your ample bosom so that you can remain focused throughout the workout.
<<else>>
Unfortunately your bra just isn't up to the task of controlling your <<=$scene.breasts>> breasts during such exuberant activity, your <<getWordBreasts $player>> a constant distraction throughout your workout.
<</if>>
<<else>>
Without a bra your <<=$scene.breasts>> breasts are constantly bouncing to and fro, threatening to pull you off-balance as well as being quite uncomfortable to feel them swing about.
<</if>>
<<elseif $scene.breasts == "small">>
<<if setup.getItemFromType("bra") != "">>
<<if setup.getItemObjFromType("bra").tags.indexOf("gym")>>
Your secure sports bra may be a bit overkill given your miniscule breasts, but, well, better safe than sorry.
<<else>>
Your breasts are small enough that even your more style over function bra is up to the task of keeping things under control.
<</if>>
<<else>>
Your breasts are small enough that even forgoing a bra does not cause any problems.
<</if>>
<<elseif $scene.breasts == "small">>
<<if setup.getItemFromType("bra") != "">>
<<if setup.getItemObjFromType("bra").tags.indexOf("gym")>>
Your secure sports bra is just the thing to keep the "girls" under control and let you properly focus on your workout.
<<else>>
Though it pushes it to the limit your current bra is barely sufficient to keep your <<getWordBreasts $player>> under control during your workout. If you get any bigger though you'll definitely be wanting something designed for such purposes.
<</if>>
<<else>>
It isn't the most comfortable thing, but you manage to push through the workout sans bra without too much bother.
<</if>>
<</if>>
<br><br>
<</if>>/*#
#desc: gym goto a random class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_class.png">>
<div id="invframe" class="scrolltext">
The gym offers a seemingly endless sequence of classes running a half hour each, unfortunately it's all organised by weird acronyms so unless you have experience a novice is basically rolling the dice and picking at random.<br>
<br>
<<if $gym.classes.yoga.level_fem > 0 || $gym.classes.yoga.level_male > 0>>
[<<moveTo "event_gym_class_yoga" "Take a yoga class." 60>>]<br>
<</if>>
<<if $gym.classes.cardio_kickboxing.level > 0>>
[<<moveTo "event_gym_class_cardio_kickboxing" "Take a cardio kickboxing class." 1800>>]<br>
<</if>>
<<if $gym.classes.other.level > 0>>
[<<moveTo "event_gym_class_other" "Take a general fitness class." 1800>>]<br>
<</if>>
<<if $gym.classes.martial_arts_available>>
<<if $now.getUTCHours() > 17 && $now.getUTCHours() < 19>>
[<<moveTo "event_gym_class_karate" "Work on your face-kicking skills and attend the Karate class." 60>>]<br>
<<else>>
[@@.link_locked;Karate is offered at 7 pm every evening.@@]<br>
<</if>>
<<if $now.getUTCHours() > 18 && $now.getUTCHours() < 20>>
[<<moveTo "event_gym_class_bjj" "Practice aggressive snuggling and take a BJJ class." 60>>]<br>
<<else>>
[@@.link_locked;BJJ is offered at 8 pm every evening.@@]<br>
<</if>>
<</if>>
<<switch random(1,3)>>
<<case 1>>
<<if $scene.hasOwnProperty('yoga') && $scene.yoga>>
[<<moveTo "event_gym_class_other" "Take a class at random." 1800>>]
<<else>>
[<<moveTo "event_gym_class_yoga" "Take a class at random." 1800>>]
<</if>>
<<case 2>>
[<<moveTo "event_gym_class_cardio_kickboxing" "Take a class at random." 1800>>]
<<case 3>>
[<<moveTo "event_gym_class_other" "Take a class at random." 1800>>]
<<default>>
ERROR: unknown class!<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</switch>>
</div>/*#
#desc: gym cardio kickboxing class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1 >>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<if $gym.classes.cardio_kickboxing.level == 0>>
<<set $gym.classes.cardio_kickboxing.level = 1>>
<</if>>
<<if !setup.hasThreshold('martial_arts', 'martial_arts', 'cardio_kickboxing')>>
<<setThreshold 'martial_arts' 'martial_arts' 'cardio_kickboxing' true>>
<</if>>
<<applyExperience 'martial_arts' 2 'slightly' $EXPOSED>>
<<if setup.getTotalValue("dexterity") >= 4 && !setup.hasThreshold('dexterity', 'other', 'cardio_kickboxing')>>
<<setThreshold 'dexterity' 'other' 'cardio_kickboxing' true>>
<<else>>
<<applyExperience 'dexterity' 8 'normal' $EXPOSED>>
<</if>>
<<set _martialArts = setup.getTotalValue("martial_arts")>>
<<applyExperience 'stamina' _martialArts 'almost' $EXPOSED>>
<<applyFatigue $player 30>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_class.png" "./images/characters/npc_martial_arts.png">>
<div id="invframe" class="scrolltext">
You participate in a cardio kickboxing class along with a variety of students in a mix of genders. The instructor, <<=setup.getNpcName('npc_martial_arts', 'formal')>>, is a tall woman; slender and efficiently muscled like a fighter, with a hard confidence that has her looking like she could definitely kick your (and most other people's) asses.<br>
<br>
<<if setup.getTotalValue("stamina") >= 10>>
<<if setup.getTotalValue("stamina") > 15>>
Kicking high, hard and fast with your punch combo's coming smooth and swift you go move for move with the instructor, barely breaking a sweat in the course of the class.
<<else>>
You easily keep up with the class, kicking and punching along with each sequence without ever even breathing heavy.
<</if>>
<br><br>
<<printThought $player "Huh, that was kind of trivial.">>
<<if !$gym.classes.martial_arts_available>>
<br><br>
<<set $gym.classes.martial_arts_available = true>>
At the end of the class the instructor drops by to congratulate you on your performance.<br>
<br>
"@@.npc_martial_arts;Hey, you're doing really good, you ever think of learning to fight for real? I run all of the martial arts classes so if you wanna learn karate or mix it up with some Brazilian Jiu Jitsu groundwork you should check it out!@@"
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
You do your best but by the end of class you're gasping for air, barely able to keep your hands above your waist. The instructor swings by with a smile, looking somewhat annoyingly chipper and not even breathing heavy.<br>
<br>
"@@.npc_martial_arts;Heh, now imagine if someone was punching back!, You're doing good though, just gotta keep building up the old cardio!@@"
<<else>>
You never realised how much effort it takes to throw punches and kicks. To say the class kicked your butt would be a pun and an understatement, by the end you're barely able to stand, your legs like rubber, your arms hanging limp at your side.<br>
<br>
As you try to catch your breath the instructor comes by, looking way too fresh and rested than seems at all fair.<br>
<br>
"@@.npc_martial_arts;Hey, good job trying to push through, I know it's tough but you just gotta keep at it, cardio only comes with time!@@"
<</if>>
<br><br>
You gasp some sort of response as she walks away.<br>
<br>
<<printThought $player "I really need to get into better shape...">>
<</if>>
<br><br>
<<include workoutBreasts>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym generic class
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<applyExperience 'stamina' 6 'little' $EXPOSED>>
<<applyExperience 'strength' 6 'little' $EXPOSED>>
<<applyExperience 'dexterity' 6 'little' $EXPOSED>>
<<applyFatigue $player 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_class.png">>
<div id="invframe" class="scrolltext">
You attend a random fundamental fitness class at the gym. There's a bit of stretching, some calisthenics and a bit of dumb-bell work for a kind of "full-body" workout that covers both cardio and strength.<br>
<br>
<<if setup.getTotalValue("stamina") > 10 && setup.getTotalValue("strength") > 10 && setup.getTotalValue("dexterity") > 10>>
The activities are far too trivial for you to get much out of, you're heart-rate barely even budges over the course of the class.
<<elseif setup.getTotalValue("stamina") > 5 && setup.getTotalValue("strength") > 5 && setup.getTotalValue("dexterity") > 10>>
The class is overall very general and basic, you should probably seek out something more specialized or advanced.
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
You manage to keep up with everything asked of you, though you feel a bit weak on the more strength-focused activities.
<<elseif setup.getTotalValue("strength") > 5>>
You're strong enough for everything in class, but your cardio proves to still be the weak link as you find yourself breathing heavy less than halfway through the class.
<<elseif setup.getTotalValue("dexterity") > 5>>
You may have the agility for the class but you struggle to exert strength, or keep things up without getting winded.
<<else>>
Even for as basic as the class is you find yourself struggling, neither your strength, cardio or agility quite up to even this relatively low bar.
<</if>>
<</if>>
<br><br>
<<include workoutBreasts>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>
/%
TODOfuture
gym capstone:
"Miss Hard Pump"
lifting competition - need ~max strength + squat plug
endurance challenge -
agility course - need max dex + heels skill for the final "post run" (shrinking steps)
one of your competitors paying someone (well, someones) to fuck your brains out in the locker-room between events so that you fail due to exhaustion?
-two "victory" options:
-just jump on that dick with apolmb and emerge refreshed
-non-forced version where your time with the bimbos allows you to "summon" them to run interference for you?
aesthetic portion:
- need slutty gym attire + breasts + permanent makeup (otherwise it'd be ruined after all the earlier working out)
strength prep:
dildo squats othe "hardcore" help
stamina prep:
cropped + plugged while on treadmill "superset" with sex
dex prep:
%//*#
#desc: gym "hardcore" lifting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.skip_swolebro = false>>
/* this is to prevent speeding through one class' content in the same visit */
<<if $scene.hasOwnProperty('swolebro') && $scene.swolebro>>
<<set $scene.skip_swolebro = true>>
<<elseif !$scene.skip_swolebro && $npc_swolebro.stage == 4>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<</if>>
<<switch $npc_swolebro.stage>>
<<case 1>>
<<if setup.getTotalValue("strength") < 5>>
<<set $scene.skip_swolebro = true>>
<</if>>
<<case 2>>
<<if setup.getTotalValue("strength") < 10>>
<<set $scene.skip_swolebro = true>>
<</if>>
<<case 3>>
<<if setup.getTotalValue("strength") < 13>>
<<set $scene.skip_swolebro = true>>
<</if>>
<<case 4>>
<<set $scene.skip_swolebro = $scene.swolebro || random(1,10) <= 6>>
<<if !$scene.skip_swolebro>>
<<applyFatigue $player 15>>
<<set $now to setup.advanceDate($player, $now, "minutes", 15)>>
<<applyExperience 'strength' 14 'unbelievable' $EXPOSED>>
<<applyExperience 'cum' 13 'very' $EXPOSED>>
<<applyExperience 'oral' 7 'very' $EXPOSED>>
<<applyExperience 'penis' 9 'normal' $EXPOSED>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<if $scene.plugID != "">>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<<applyExperience 'anal' $scene.plugObj.effect.anal.level 'very' $EXPOSED>>
<</if>>
<</if>>
<</switch>>
<<set $scene.generic_swolebro = $npc_swolebro.stage < 4 && $scene.skip_swolebro && !$scene.swolebro>>
<<if $scene.generic_swolebro>>
<<applyExperience 'strength' 8 'very' $EXPOSED>>
<<set $now to setup.advanceDate($player, $now, "minutes", 15)>>
<<applyFatigue $player 15>>
<</if>>
<<set $scene.swolebro = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<if $scene.skip_swolebro>>
<<createBGR "./images/locations/gym_weights.png">>
<<else>>
<<createBGR "./images/locations/gym_weights.png" "./images/characters/npc_swolebro.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.skip_swolebro>>
<<if $npc_swolebro.stage >= 4>>
You go looking for the group of hardcore lifters that call themselves the "Swole Bros" but it seems like they've finished for the day and are nowhere to be found amongst the squat cages.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif $scene.generic_swolebro>>
You share another workout session with your friends the "Swole Bros," lifting heavy and cheering each other on.<br>
<br>
Feeling a proper "pump" you consider your next activity.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<else>>
You go looking for the group of hardcore lifters that call themselves the "Swole Bros" unfortunately they seem to be prepping for a major comp and, as weak as you are, you feel like you'd be a distraction and decide to leave.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
<<else>>
<<switch $npc_swolebro.stage>>
<<case 1>>
Spotting a cluster of four large, muscular men near the freeweights you walk up, saying <<=setup.getNpcName('npc_swolebro', 'first')>> said to talk to them about joining them to lift.<br>
<br>
As you talk who do you see but <<=setup.getNpcName('npc_swolebro', 'first')>> sitting up having just finish up a set of bench press. His four friends look you over silently, their eyes moving up and down your body as you subconsciously think about how small and effeminate you are, especially compared to their chiselled, jacked, single-digit body fat selves.<br>
<br>
Finally <<=setup.getNpcName('npc_swolebro', 'first')>> breaks the silence. "@@.npc_swolebro;Always glad to have another recruit to the church of iron. You have permission to approach the bench - let's see what you got!@@"<br>
<br>
[<<moveTo "event_gym_swolebro_1" "Approach the bench." 1800>>]<br>
[<<moveTo "room_gym_main" "Chicken out and flee." 60>>]
<<case 2>>
You find the "Swole Bros," as always, with the free weights. As you walk up one of them finishes a heavy set of squats, racking the weight and walking out of the cage too much chest-slapping and celebration.<br>
<br>
"@@.npc_swolebro;Great job, bro!@@"<br>
<br>
"Way to make it look light!" <br>
<br>
"I told you that larger squat plug would make the difference!" <br>
<br>
<<printThought $player "Squat plug? What's that?">><br>
<br>
Noticing your approach your ripped friends greet you as they shuffle weights for the next man to do his set.<br>
<br>
[<<moveTo "event_gym_swolebro_2" "Ask what a squat plug is." 120 "<<set $scene.ask_plug = true>>">>]<br>
[<<moveTo "event_gym_swolebro_2" "Just wait for your turn to squat." 1200 "<<set $scene.ask_plug = false>>">>]
<<case 3>>
You meet your friends the "Swole Bros" for another lifting session. Greeting you with a smile one of them gives you a welcoming slap on the ass.<br>
<br>
<<if setup.getItemFromType("plug") == "">>
"@@.npc_swolebro;What? Nothing inside? You need to remember to come prepared if are going maximise your workout time.@@"
<<else>>
"@@.npc_swolebro;That's my girl!@@" He states, giving your plug a wiggle before removing his hand. "@@.npc_swolebro;You ready to have a nice fullfilling workout?@@"
<</if>>
<br><br>
You smile as your warm-up set is racked and step under the bar.<br>
<br>
[<<moveTo "event_gym_swolebro_3" "Lift!" 300>>]
<<case 4>>
You share another workout session with your friends the "Swole Bros," lifting heavy and then rewarded with a nice fresh "protein drink." <br>
<br>
Licking your lips in salty satisfaction you consider your next activity.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 600>>]
<<default>>
ERROR; unexpected npc_swolebro.stage <<=$npc_swolebro.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: first time joining the "hardcore" lifters
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $npc_swolebro.stage = 2>>
<<if setup.getTotalValue("strength") <= 10>>
<<applyExperience 'humiliation' 4 'very' $EXPOSED>>
<</if>>
<<applyExperience 'strength' 8 'very' $EXPOSED>>
<<applyFatigue $player 15>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",15]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+15)>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png" "./images/characters/npc_swolebro.png">>
<div id="invframe" class="scrolltext">
All eyes are on you as you nervously lay back on the bench, the four men clustering around, two re-racking the weights and one moving into position near your head to squat.<br>
<br>
Looking up you can't help but be aware of his columnar thighs, his tight shorts highlighting an obvious bulge, so close you can smell his ballsweat...<br>
<br>
"You gonna lay there, or you gonna lift?" One of them jokes, jolting you back to attention.<br>
<br>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
The bar practically flies, so far below your work weight you hardly notice it's there. The men gawk in surprise as you ask for another hundred kilos... on each side, repping those out as well as they stare, stunned.
<<else>>
The weight they put on the bar would be barely enough for a warm-up and you ask for another plate on each side, the men initially dubious, then obviously impressed when you rep it with ease, nods and smiles of approval greeting you as you sit back up.
<</if>>
<br><br>
"@@.npc_swolebro;Wow, so, like, dunno what all we can teach you about strength, really but, hey, you're welcome to join us any time!@@"
<<else>>
<<if setup.getTotalValue("strength") > 5>>
Though you have to strain a bit you do manage to move the weight they put up for you, only needing your spotter's assistance for the final rep when you stall out a couple inches off your chest.
<<else>>
You barely manage to even unrack the weight they've given you, stalling out on the first rep as the spotter is forced to lift it off your chest... which he does... with ease... one handed.
<</if>>
<br><br>
You feel embarrassed as you sit up, certain that they are about to laugh at you and send you away for your pathetic performance. Instead <<=setup.getNpcName('npc_swolebro', 'first')>> smiles and sits down next to you, giving you a glad hand slap on the back and words of encouragement. "@@.npc_swolebro;Alright, well it looks like you've still got some work to do under the bar, but hey, you've started the journey and that's the important part. You're welcome to work in with us any time.@@"
<</if>>
<br><br>
The other men introduce themselves to you with wide smiles and glad-handing slaps on the back. As a group they call themselves the Swole Bros and the lot of you spend some time lifting heavy things and then putting them back down.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym "hardcore" lifting squat plug option
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if !$scene.ask_plug>>
<<applyExperience 'strength' 13 'very' $EXPOSED>>
<</if>>
<<applyFatigue $player 20>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png" "./images/characters/npc_swolebro.png">>
<div id="invframe" class="scrolltext">
<<if $scene.ask_plug>>
As the next man moves under the bar to start his squat set you sidle up to the your friend to ask what a "squat plug" is.<br>
<br>
"@@.npc_swolebro;You've never heard of a squat plug? Bro! You're missing out. Y'see, lifting is all about tension, right? That's why you're always focusing on staying tight and how using a belt or a squat suit or whatnot can help you move more weight. Well a squat plug is just applying that principle from the inside out. Squats are all about the glutes, so to help maximise muscle activation, well, it helps to have something to clamp down on.@@"<br>
<br>
You think he has to be taking the piss, but then you glance at one of the other guys with his back to you, and recognise a tell-tale shape betwixt his cheeks.<br>
<br>
"@@.npc_swolebro;Yup, I'm telling you, the first time you settle back into a deep squat and have that nice thick plug to clamp down on... well... you won't want to lift empty again!@@"<br>
<br>
<<printThought $player "That's kind of weird, but, well... between the two of us he is definitely more knowledgeable when it comes to lifting heavy.">><br>
<br>
<<if setup.getItemFromType("plug") != "">>
[<<moveTo "event_gym_swolebro_2_plug" "Mention that, actually, you're plugged right now." 1580>>]<br>
<<else>>
[<<moveTo "event_gym_swolebro_2_plug" "Ask if maybe he has a spare squat plug you could try out?" 1580>>]<br>
<</if>>
[<<moveTo "event_gym_swolebro_2" "Just lift normally." 1580 "<<set $scene.ask_plug = false>>">>]
<<else>>
You work in a few sets with the other "Swole Bros" doing heavy squats. Everyone is very encouraging as you push yourself hard enough to stagger a bit when you finally rack, but there's no doubt that, even relative to your size you're the weakling of the group.<br>
<br>
By the end of the set your thighs are burning and you're a bit winded, but you feel like you've accomplished something.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
</div>/*#
#desc: hardcore lifters, lift with squat plug
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $npc_swolebro.stage = 3>>
<<setThreshold 'strength' 'gym_strength' 'swolebro_1' true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug == "">>
<<addItem "squat_plug">>
<<wearItem $player $now "squat_plug" true>>
<<applyExperience 'humiliation' 8 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'humiliation' 8 'very' $EXPOSED>>
<</if>>
<<set _x = $shopStatus['gym'].unlocked_inventory.pushUnique('strength')>>
<<applyFatigue $player 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.plug == "">>
It seems a little weird how casually you ask a dude in a public gym if he has a butt plug, sorry "squat plug," you could use but <<=setup.getNpcName('npc_swolebro', 'first')>> just grins. "@@.npc_swolebro;Hell yea!, How could I leave a fellow lifter empty and weak!@@"<br>
<br>
Heading to his gym back he digs around and then comes up with a brand new shrink-wrapped butt plug.<br>
<br>
"@@.npc_swolebro;You'll be wanting to upgrade to something bigger down the road, of course, but this should be good as an introduction to kind of "open your mind" to the new possibilities, a nice full stretch but not so advanced it overly distracts from the lift.@@"<br>
<br>
You nod as he unwraps the plug and slathers it up with the included packet of lube.<br>
<br>
"@@.npc_swolebro;Alright, bend over like you're doing a good morning and we'll get this installed!@@"<br>
<br>
You do as indicated, legs shoulder width apart and bending at the hips. He gently pulls down your pants and then presses the plug against your pert hole.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
The plug is not exactly small, but definitely not "large" by your standards and it easily slides into your hungry hole.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
It's big but but between his strength and the slick lube it pops into place.
<<else>>
It's big... REALLY big, but between his strength and the slick lube it suddenly pops into you. You're wide-eyed and trembling a bit as you adjust to the massive intruder.
<</if>>
<</if>>
<br><br>
You let out a gasp, that becomes a bit of a moan when he palms the base of the plug, grabbing your ass and jiggling everything, your prostate crying out with joy.<br>
<br>
"@@.npc_swolebro;There we go, nice and set.@@" He states as you pull up your pants and adjust to the new fullness.<br>
<br>
"@@.npc_swolebro;Good, good, it fit great, now let's see what you can do with it!@@"
<<else>>
<<if $player.flags.humiliationStyle == "brazen">>
You smile mischievously and note that actually, you're already plugged.
<<else>>
You blush in embarrassment and whisper that you're actually already plugged.
<</if>>
<br><br>
"@@.npc_swolebro;Damn! Of course you are. See, I knew there was something special about you when I came up to you in the locker-room. Come on, lemme see.@@"<br>
<br>
Before you can think better of it you've turned around and he's fingering the base of the plug through your gym clothes.<br>
<br>
"@@.npc_swolebro;Aww yea, that's in there good, you really are a natural at this sort of thing. Come on, let's see you squat!@@"
<</if>>
<br><br>
Stepping into the cage you gawk a bit as enough weight to be a PR is thrown on the bar.<br>
<br>
"@@.npc_swolebro;Alright, now you're plugged and ready, really focus on how it feels between your glutes, especially when you're nice and deep in the hole.@@"<br>
<br>
Taking a deep breath you squat down, focusing on the plug, how full and occupied and tight it makes you feel. You imagine it sliding deeper as you squat down, the weight "forcing" you onto it, deeper... fuller... With a start you realise that your thighs have touched your calves, you're ALL the way down. Gritting your teeth you push... and you start to rise, clenching and squeezing down on your anal companion as the other Swole Bros hoot and holler.<br>
<br>
"Light weight!" "Took it DEEP!" "All the way up!" <br>
<br>
There's a cheer as you finish, knees straightening and holding for a moment before shuffling forward to rack the weight.<br>
<br>
The weight removed from your shoulders you suddenly feel weak, wobbling for a moment before your friend appears at your side for stability.<br>
<br>
"@@.npc_swolebro;Great job! That was a LIFT!@@" He punctuates his words by giving you a slap on the ass, his fingers lingering to rub the plug through your clothes. "@@.npc_swolebro;See what I was saying? Squat plug, helpin' unlock those deep reserves of strength.@@" <br>
<br>
You nod and... moan? Softly as he leads you to a seat. You have a short rest then work in for a couple lighter work sets before calling it a day, having unlocked a new tier of strength.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym "hardcore" lifting protein drink
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyFatigue $player 20>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("plug") == "">>
You move through your lifting routine. From the first warm-up you can notice the emptiness in your rear and while all of your friends are as encouraging as ever, you can tell in your gut... or would it be better termed your ass? That without a proper squat plug you just aren't going to see the results you want.<br>
<br>
You finish up lifting without incident.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 1200>>]
<<else>>
The plug in your ass having you feeling frisky and energetic you almost skip over to the deadlift platform, smiling at your friends before bending over at the hips to grab the bar with both hands and then drop your hips deep.<br>
<br>
<<if setup.getItemObjFromType("plug").effect.anal.level >= 10>>
You clench down on the big plug filling your ass, the wonderful rear occupant focusing your muscle activation as you push off the floor, easily going all the way to lockout for one, two, three deep reps that have your heart pounding and your prostate moaning.<br>
<br>
Staggering off the platform to recover you join your friends off the side as someone else works in. Several of you each efficiently work in amongst each other's sets and by the time you're finished with your final set you're a bit light headed and exhausted.<br>
<br>
As you stand around and chat another dude finishes his set and walks over with a wide grin.<br>
<br>
"So, which one of you weaklings wants a post-workout hormone supplement?" <br>
<br>
"How about <<=$player.first_name>>? She really pushed it out today!" A second man chirps.<br>
<br>
One of the other guys recognises your obvious look of confusion, "so Mark is in a cutting cycle right now, so he needs to bleed off excess energy post-workout and, well, no sense letting all those nutrients and testosterone go to waste..." <br>
<br>
Eying the bulge in Mark's tight compression pants you instantly understand what he's offering.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
<<printThought $player "Cum has health benefits? Like, yay! It really is the best substance on earth!">>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<printThought $player "I guess there's a bit of logic there... still seems kind of strange.">>
<<else>>
<<printThought $player "There's no way that's true yet... nobody's laughing... is this some weird hazing ritual?">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_gym_swolebro_3_suck" "Accept the offer and suck Mark off." 300 "<<set $scene.suck = true>>">>]<br>
[<<moveTo "event_gym_swolebro_3_suck" "Decline the offer." 60 "<<set $scene.suck = false>>">>]
<<else>>
Stepping into position on the deadlift platform you feel the squat plug tightening everything up nice and good. Moving through the routine you are doing well until your final set where things just fall apart a bit and you end up stalling and bailing just a couple inches off the floor.<br>
<br>
Walking back to your fellow lifters, they are quick to offer comfort.<br>
<br>
"@@.npc_swolebro;It happens, don't focus on it but... well, it looked to me like you were losing a bit of tension towards the end and that's where things went wrong. Have you considered a larger squat plug? I think it could really solve your issues and let you push past this plateau.@@"<br>
<br>
You thank him for the advice as you have a drink of water and wander off.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: suck cock after lifting for the first time
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.suck>>
<<applyExperience 'cum' 13 'very' $EXPOSED>>
<<setThreshold 'strength' 'gym_strength' 'swolebro_2' true>>
<<setThreshold 'cum' 'gym_cum' 'gym_cum' true>>
<<applyExperience 'oral' 7 'very' $EXPOSED>>
<<applyFatigue $player -10>>
<<set $npc_swolebro.stage = 4>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weighs">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
<<if setup.getTotalValue("bimbofication") > 10>>
You eagerly
<<else>>
Still not sure if this isn't an elaborate prank you
<</if>>
follow Mark into a private side room where he gently closes the door behind.<br>
<br>
You turn back and his cock is out, his big, hard cock.<br>
<br>
He grins as you stand momentarily transfixed.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("penis") > 10>>
<<printThought $player "This is really happening!">>
<<else>>
<<printThought $player "This is really happening...">>
<</if>>
<br><br>
As if in a trance you walk towards him, sliding to your knees, your lips parting to wrap around his moist tip, tongue lapping up the beading precum.<br>
<br>
You look up at him with your mouth full of cock. He smiles down and nods for you to continue.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
He's big enough that you're able to show off a bit, hilting him with ease as he gasps out a "holy shi-" only for any further words to descend into mumbled incoherence as you bring the full power of your cock-caressing throat, nimble tongue and dick-sucking lips to bear.
<<else>>
Angling your neck you let him slide down your throat, a moan of pleasure escaping his lips as you go to work with all of your consummate skills.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
He's too big for you to deepthroat so you just focus on the tip, sucking and licking away, his quickening breaths indicating that he is quite enjoying it.
<<else>>
It's a bit of a conundrum how to deal with something this big but you do your best, bobbing and sucking and licking (and more than occasionally gagging) in an effort to get him off.
<</if>>
<</if>>
<br><br>
Whether due to your skill, the situation, or he was already turned on to begin with it isn't long before he explodes, flooding your mouth with
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly "cream."
<<else>>
delicious cum.
<</if>>
You eagerly swallow every drop, sucking and licking and massaging his balls until he slowly wilts and there is nothing left for you to drink.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty, bitter cum.
<<else>>
pungent cum.
<</if>>
You try to pull back but his strong hands are suddenly cradling your head.<br>
<br>
"Just relax, take it all, that's a good girl..." he coos as you frantically gulp and swallow lest you drown.
<</if>>
<br><br>
"Mmmm, that was good, you sucked out a real good load there! How's it feel to have all that power swimming through your veins?" <br>
<br>
You smile and catch your breath as he helps you to your feet.<br>
<br>
"They say lifting is a solitary sport but, well, it's moments like these, when one helps a fellow initiate of iron that well... 'tis a beautiful thing." <br>
<br>
Stowing his cock he heads back towards the door. You half expected a reaction, that this was some sort of hazing ritual but everyone seems focused on the man currently up on the platform, only one or two other Swole Bros even acknowledging your return with a grin or a slight nod.<br>
<br>
Feeling remarkably refreshed you're tempted to jump back in for another set but, mindful of the risk of over training, you decide to leave a few in the tank.
<<else>>
Mark shrugs as you shake your head. Almost immediately another guy quickly hops off the bench to take your place, the two of them heading into a small side room together.<br>
<br>
Emerging a few minutes later Mark has traded the bulge in his pants for a satisfied smile on his face, the other guy licking his lips and... well it has to be a trick of the light but you'd swear he's looking a little bigger and vascular than a few minutes before.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 300>>]
</div>/*#
#desc: admin suggests going to the gym together
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.repeat = $currentTasks.hasOwnProperty('task_first_gym')>>
<<set _nextDate to setup.setNextDate($now, 1, 10, 0)>>
<<addTaskById 'task_first_gym' _nextDate>>
<<set $player.locations.gym = true>>
<<set $gym.membership.active = true>>
<</if>>
<<set $player.location to "The Usual Place">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
The big guy seems to think of something as you're both getting ready to depart.<br>
<br>
"@@.npc_admin;Hey, so with your whole life getting shaken up, the new job and, well, the rest... have you considered going back to the gym?<<if $scene.repeat>> I know I mentioned it before but you stood me up instead of meeting me!<</if>>@@"<br>
<br>
You realise you can't even remember the last time you worked out. <<=setup.getNpcName('npc_admin', 'first')>> has always been athletic, lifting and doing Karate but outside of a bit in college when you were making a failed attempt to get "cut" you've just gotten by on a naturally fast metabolism.<br>
<br>
"@@.npc_admin;I know it's a cliche but working out can really help you take your mind off things and just feel better overall... Hey, tell you what, how about you come with me tomorrow morning to <<printShopName 'gym'>>, the gym I go to? Say... ten o'clock. We can work off our hangovers and I'll show you the ropes, see how you like it, eh?@@"<br>
<br>
<<if $npc_admin.flags.promotion>>
Though you're back to working together you think it'd be nice to see the big guy somewhere other than the office.
<<else>>
Thinking about it, with you two no longer working together, this would probably be a good way to stay in touch with your friend, you say you'll meet him there.
<</if>>
<br><br>
[<<moveTo "room_usual_place_inside" "Thank him for the offer and head out." 60>>]
</div>/*#
#desc: admin calls you for not showing up to planned gym "date"
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.wasSleeping = $beforetasklocation == "room_dreams">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.wasSleeping>>
You are awoken by your phone ringing loudly.<br>
<br>
<<printThought $player "Shit! I was supposed to meet <<=setup.getNpcName('npc_admin', 'first')>> this morning to work out!">>
<<else>>
Your phone rings, it's <<=setup.getNpcName('npc_admin', 'first')>> as you remember you were going to get together this morning at the gym.
<</if>>
<br><br>
"@@.npc_admin;Hey, bro, so I'm at the gym and... I ain't seeing you, don't tell me you're scared of working up a little sweat!@@"<br>
<br>
You hurriedly reply that you just overslept.<br>
<br>
He laughs "@@.npc_admin;Ha!, Well you were putting them away last night, hurry on over, we'll sweat it out of you!@@"<br>
<br>
<<if $scene.wasSleeping>>
[<<moveTo "event_gym_noshow_2_change" "Say you'll be right there." 180 "<<set $scene.gymLate = true>>">>]<br>
[<<moveTo "event_gym_noshow_2" "Apologize and say you're busy." 180>>]
<<elseif setup.checkOutsideDecency($player)>>
[<<moveTo "event_gym_first_1" "Head to the gym." 180 "<<set $scene.gymLate = true>><<set $currentTasks.task_first_gym.condition= 'Complete'>>">>]<br>
[<<moveTo "event_gym_noshow_2" "Apologize and say you're busy." 180>>]
<<elseif setup.inPassageTag($locationbeforeuseage, "home")>>
[<<moveTo "event_gym_noshow_2_change" "Say you just need to get changed and you're on your way." 180 "<<set $scene.gymLate = true>>">>]<br>
[<<moveTo "event_gym_noshow_2" "Apologize and say you're busy." 180>>]
<<else>>
[<<moveTo "event_gym_noshow_2" "Apologize and say you're busy." 180>>]
<</if>>
</div>/*#
#desc: decline to meet admin at gym first time
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<incrementEmotion 'anger' 'npc_admin' 2>>
<<set _nextDate to setup.setNextDate($now, 7, 10, 0)>>
<<addTaskById 'task_first_gym' _nextDate>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You apologize but explain that you aren't going to make it out to the gym today.<br>
<br>
You hear him sigh over the phone. "@@.npc_admin;Can't say I'm not disappointed. Not just for me, but for you! I know you've been in a bit of a funk and I really think exercising would help pull you out of it. Let's try this again next Saturday, eh?@@"<br>
<br>
You apologize again and promise to meet him next Saturday morning.<br>
<br>
[<<moveTo $beforetasklocation "Hang up." 60>>]
</div>/*#
#desc: change clothes to head to gym
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
<</if>>
<<set $player.location to "Foyer">>
<<include enterroom>>
<<readyToLeaveHome $player>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You hang up and get changed to meet <<=setup.getNpcName('npc_admin', 'first')>> at the gym.<br>
<br>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "event_gym_first_1" "Head to the gym." 180 "<<set $scene.gymLate = true>><<set $currentTasks.task_first_gym.condition= 'Complete'>>">>]<br>
<<else>>
[@@.link_locked;You are not dressed properly to go out.@@]
<</if>>
[<<moveTo "event_gym_noshow_3" "Change your mind and bail on your meeting." 60>>]
</div>/*#
#desc: decline to meet admin at gym first time
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<incrementEmotion 'anger' 'npc_admin' 3>>
<<set _nextDate to setup.setNextDate($now, 7, 10, 0)>>
<<addTaskById 'task_first_gym' _nextDate>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You call <<=setup.getNpcName('npc_admin', 'first')>> to let him know you aren't going to make it to the gym today after all. There is a long silence and you think for a moment he has hung up when he finally speaks.<br>
<br>
"@@.npc_admin;That's cold, bro. First you're late, then you say you're still coming, then you cancel like this... Not cool but if you want to try again I'll meet you next Saturday. Same place, same time, I ain't givin' up on you!@@"<br>
<br>
You feel embarrassed to disappoint him when he's showing such earnest care, promising to show up next time before hanging up.<br>
<br>
[<<moveTo "room_foyer" "Done." 60>>]
</div>/*#
#desc: meet admin at gym first time, he signs you up for the "intro" offer
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Lobby">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_desk.png" "./images/characters/npc_admin_casual.png">>
<div id="invframe" class="scrolltext">
<<if $scene.gymLate>>
You arrive at <<printShopName 'gym'>> and walk into the lobby to find <<=setup.getNpcName('npc_admin', 'first')>> chatting up the woman at the front desk. She looks fit and in shape and she smiles at you in greeting as he waves you over.<br>
<br>
"@@.npc_admin;Look who finally made it!@@" He shouts in greeting.<br>
<br>
You try to make an excuse for your tardiness but he just shrugs it off as he turns to the clerk. "@@.npc_admin;So this is my bro <<=$player.first_name>>, they're lookin' to get all signed up and start working out!@@"
<<else>>
Right at ten <<=setup.getNpcName('npc_admin', 'first')>> walks in the door, fist bumping and saying hi to several other regulars before grabbing you and heading for the front desk. The in-shape woman on the other side smiles in greeting as your friend introduces you.<br>
<br>
"@@.npc_admin;Alright, so my bro here is lookin' to get signed up. Another convert to the church of iron!@@"
<</if>>
<br><br>
<<if setup.analyzeWornTags(['female','male','unisex'])=='female'>>
<<if $player.flags.fem_style.name != "">>
She smiles at you in greeting.
<<else>>
She cocks an eye in surprise but makes no comment at the contrast between your name and your attire.
<</if>>
<<else>>
<<if $player.flags.fem_style.name != "">>
She cocks an eye in surprise but makes no comment at the contrast between your name and your attire.
<<else>>
She smiles at you in greeting.
<</if>>
<</if>>
<br><br>
<<if $player.flags.fem_style.name != "">>
"@@.npc_admin;I know she looks a bit scrawny right now but she's looking to change that, so sign her up!@@"
<<else>>
"@@.npc_admin;I know he looks a bit scrawny right now but he's looking to change that, so sign him up!@@"
<</if>>
<br><br>
"Of course, we would be glad to welcome you as a member." She states warmly. "If you could just sign here I'll start you on our free introductory offer." <br>
<br>
After all that's happened you're a bit trepidatious about signing your name to anything but, in a bit of a turn, everything is remarkably straightforward, a simple waiver of liability and agreement to a no-committment free trial through the end of the month, after which there's a monthly membership fee of <<=$gym.membership.monthly_price>> credits auto-billed on the first of the month.<br>
<br>
You hand over the signed paperwork and she smiles. "If you would come with me for a quick tour we will get you your complimentary workout attire and you can meet your friend in the main workout room." <br>
<br>
"@@.npc_admin;Imma go get changed, I'll see you in a few bro!@@" He states, heading for the locker-room.<br>
<br>
You can't help but notice that the clerk stares at <<=ps(setup.getNpcName('npc_admin', 'first'))>> ass until he disappears before turning back to you, looking a bit... flush.<br>
<br>
"As I said, come with me for a quick tour and I'll soon have you back to your friend. Oh, what I wouldn't give to be in your shoes with such a succulent hunk of man... Anyway, sorry, come with me, please." <br>
<br>
<<printThought $player 'Wait, did she just assume <<=setup.getNpcName("npc_admin", "first")>> and I are, like, dating or something?'>><br>
<br>
[<<moveTo "event_gym_first_2" "Follow her." 180>>]
</div>/*#
#desc: gym tour
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
Following the clerk you can't help but notice that she's quite easy on the eyes, and has clearly spent a LOT of time on the premises; her yoga pants tight enough to look almost painted on, and a compression tank showing off toned arms and shoulders.<br>
<br>
"So we are a full service facility, free weights, bikes, treadmills and other machines in the main room with a number of private rooms that host a variety of classes. Whether it's yoga, general fitness, cardio kickboxing, karate or anything else we probably have you covered, and the membership is all-inclusive so drop in on whatever you fancy!" <br>
<br>
You marvel at the very clean, modern facilities as she guides you through before bringing you to what look like locker rooms.<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex'])!='male'>>
"If you would just head on in and get undressed I'll be right back with your complimentary outfit."
<<else>>
"If you would just head on in and get undressed I'll send someone in with your complimentary outfit."
<</if>>
<br><br>
"Just so's you're aware, we do have a mild dress code. It's nothing crazy, so long as it's athletic attire you're fine but we don't want people walking off the street in jeans or a suit or something. We sell all sorts of appropriate things in our store, feel free to check it out sometime!" <br>
<br>
[<<moveTo "event_gym_first_3" "Head into the locker room." 180>>]
</div>/*#
#desc: enter locker-room and start stripping
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.top = setup.getItemFromType("shirt")>>
<<removeEverythingButUnderwear $player $now>>
<<addItem 'sneakers_white'>>
<<addItem 'pink_yoga_pants'>>
<<addItem 'shirt_beauty_beast'>>
<<addItem 'gym_socks'>>
<<set $clothSets.push({
"name":"Workout Clothes",
"data": ["sneakers_white", 'pink_yoga_pants', 'shirt_beauty_beast', 'gym_socks'],
"important":true,
})>>
<<if $player.flags.fem_style.name != "">>
<<wearItem $player $now 'sneakers_white'>>
<<wearItem $player $now 'pink_yoga_pants'>>
<<wearItem $player $now 'shirt_beauty_beast'>>
<<if setup.getItemFromType("stockings") != "">>
<<swapItem $player $now 'gym_socks'>>
<<else>>
<<wearItem $player $now 'gym_socks'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Locker-room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.fem_style.name != "">>
Naturally you find yourself in the women's locker-room. As you change another woman walks through and greets you with a nod on her way to the showers.<br>
<br>
Standing with a towel around your body you wait for a few minutes for the gym employee to finally return, handing you a pair of yoga pants, generic sneakers and a pink tank.<br>
<br>
You thank her and she skips off leaving you to change, it is only after you've put the shirt on the you catch yourself in the mirror and read the phrase "Look like a Beauty, Train like a BEAST" on the front. You can't help but chuckle; there was a time that something like this would have been quite embarrassing but now, well... You finish tying your shoes and head out of the room.<br>
<br>
"Lookin' good!" The girl states as you walk out. "A bit of muscle and you'll be a right fine hotty! Well, I'll leave you to your friend, enjoy your time at <<printShopName 'gym'>>, and always remember, we're here to help you meet your fitness goals!" <br>
<br>
<<if setup.getItemFromType("shoes") == 'sneakers_white' && setup.getItemFromType("shirt") == 'shirt_beauty_beast' && setup.getItemFromType("legwear") == 'pink_yoga_pants'>>
[<<moveTo "event_gym_first_4" "Head out." 180 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
<<printThought $player "I need to get dressed to workout before I can leave the locker-room!">>
<</if>>
<<elseif setup.analyzeWornTags(['female','male','unisex'])!='male'>>
The locker-room is initially empty and you've started changing when you someone else walks in... someone... female.<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex']) == 'female'>>
<<printThought $player "Oh crap! The clerk through I was a girl! Though, I guess given what I'm wearing...">>
<<else>>
<<printThought $player "Oh crap! The clerk through I was a girl! I guess I just need to be careful I don't get spotted...">>
<</if>>
<br><br>
You grab a towel to wrap around yourself before removing any more clothing.<br>
<br>
A few minutes later the gym employee returns, handing you a pair of yoga pants, generic sneakers and a pink tank.<br>
<br>
<<printThought $player "Sigh, I guess I should just go with the flow rather than raise suspicions.">><br>
<br>
Thanking her she skips off leaving you to change, it is only after you've put the shirt on the you catch your reflection in the mirror and read the phrase "Look like a Beauty, Train like a BEAST" on the front. You sigh. With the tight top and pants you do quite look like a skinny girl
<<if setup.getItemFromType("cage") != "">>
the bulge of your cage only really visible if someone knows what to look for.
<<else>>
your bulge only visible if someone knew what to look for.
<</if>>
<br><br>
"Lookin' good!" The girl states walking towards the locker-room exit. "A bit of muscle and you'll be a right fine hotty! Well, I'll leave you to your friend, enjoy your time at <<printShopName 'gym'>>, and always remember, we're here to help you meet your fitness goals!" <br>
<br>
You consider the idea of just staying in the locker-room. How long would <<=setup.getNpcName('npc_admin', 'first')>> wait, anyway? He'd have to at least go for food eventually... You sigh, no point in avoiding your friend any longer, besides, he's never been anything but friendly and supportive.<br>
<br>
<<if setup.getItemFromType("shoes") == 'sneakers_white' && setup.getItemFromType("shirt") == 'shirt_beauty_beast' && setup.getItemFromType("legwear") == 'pink_yoga_pants'>>
[<<moveTo "event_gym_first_4" "Head out." 180 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
<<printThought $player "I need to get dressed to workout before I can leave the locker-room!">>
<</if>>
<<else>>
Walking into the locker-room you immediately feel small and intimidated; every guy looks way bigger than you are, muscle-bound and glistening with sweat as they joke and talk about "macros" and "maxing out." You head for a quiet corner and grab a towel to cover up as you remove your clothes.<br>
<br>
A few minutes later a male gym employee pokes his head in, looking around before making a beeling for you and handing over some clothes.<br>
<br>
"So, uh, unfortunately we're running a bit low on stock, this was all I could find in your size..." <br>
<br>
Your jaw almost drops, the sneakers look fine but the rest... a pair of yoga pants and a pink tank with the phrase "Lift like a Beauty, Train like a BEAST" is a bit much...<br>
<br>
"I guess it's a bit girly but, I mean, it's just clothing, right?" He states in an effort to smooth things over.
<br>
[<<moveTo "event_gym_first_4" 'Just change and meet <<=setup.getNpcName("npc_admin", "first")>>.' 180 "<<wearItem $player $now 'sneakers_white'>><<wearItem $player $now 'pink_yoga_pants'>><<wearItem $player $now 'shirt_beauty_beast'>><<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "event_gym_first_3a" "Ask if you can maybe just wear what you came in?" 180>>]
<</if>>
</div>/*#
#desc: try not to wear female workout attire first time
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.kept_shirt = $scene.top != "" && setup.getItemObj($scene.top).tags.includes("casual")>>
<<wearItem $player $now 'sneakers_white'>>
<<wearItem $player $now 'pink_yoga_pants'>>
<<if !$scene.kept_shirt>>
<<wearItem $player $now 'shirt_beauty_beast'>>
<<else>>
<<wearItem $player $now $scene.top>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Locker-room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.kept_shirt>>
"Sorry, your pants aren't to dress code, but I guess you can keep your shirt. The tank is yours in any case, I dunno, give it to your girlfriend or something." <br>
<br>
<<if $npc_technician.relationship.relationship_stage >=1>>
You consider his suggestion but you don't think that it's quite <<=ps(setup.getNpcName('npc_technician', 'first'))>> style... in fact she'd probably rather see you wearing it.
<<else>>
You can't help but wince at the reminder of <<=setup.getNpcName('npc_exgirlfriend', 'first')>> so recently dumping you but he doesn't seem to notice.
<</if>>
<br><br>
"Alright then, well, once again, welcome and enjoy your time at <<printShopName 'gym'>>, and always remember, we're here to help you meet your fitness goals!" <br>
<br>
Catching sight of yourself in a mirror you almost don't recognise yourself. Even wearing your normal top the magic of yoga pants has you looking like a skinny girl...
<<else>>
He looks over your outfit and shakes his head. "Sorry, bro, but it's gym policy. What you're wearing just isn't appropriate for going out on the workout floor." <br>
<br>
You sigh and reluctantly change into the feminine outfit.<br>
<br>
"Alright then, well, once again, welcome and enjoy your time at <<printShopName 'gym'>>, and always remember, we're here to help you meet your fitness goals!" <br>
<br>
Catching sight of your reflection in a mirror you almost don't recognise yourself. In the tight pants and suggestive top you really do look like a skinny girl...
<</if>>
<br><br>
You consider the idea of just staying in the locker-room. How long would <<=setup.getNpcName('npc_admin', 'first')>> wait, anyway? He'd have to at least go for food eventually... You sigh, no point in avoiding your friend any longer, besides, he's never been anything but supportive of you.<br>
<br>
[<<moveTo "event_gym_first_4" "Head out." 180 "<<set $player.cutscene.lockinventory = true>>">>]
</div>/*#
#desc: workout with admin first time
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<setThreshold 'strength' 'gym_strength' 'admin' true>>
<<set $player.timebased.fatigue = 150>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png" "./images/characters/npc_admin_training.png">>
<div id="invframe" class="scrolltext">
Walking out of the locker-room you find yourself face to face with <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
<<if $scene.kept_shirt>>
You note his gaze drifting over your body, seeming to pay particular attention to your legs before zeroing back in on your face.<br>
<br>
"@@.npc_admin;Compression pants! Nice, those work way better than sweat pants or the like, come on, I got the weights all racked and ready, let's go pump some iron!@@"
<<else>>
His gaze drops directly to your chest and you suddenly have sympathy for all of those "eyes up here" jokes.<br>
<br>
"@@.npc_admin;Woah, that's, uh... an interesting sentiment!, Let's get to it then, I got the weights all racked and ready, beast mode! Amirite?@@"
<</if>>
<br><br>
He gives you a "friendly" slap on the back that sends you stumbling forward but you shrug it off and follow him over to a squat rack where he guides you through the exercise. You find yourself struggling with barely more than the bar, but he praises you all the way along, only to inadvertently humiliate you when he "works in" a set of his own that's easily more than five times the combined weight of what you were lifting AND yourself.<br>
<br>
Moving on he brings you to the bench, acting as your spotter and casually hoisting the bar off your chest with one hand when you inevitably fail. After bench it's deads, then curls, then machine work, a seemingly endless series of exercises that assault every muscle in your body... even ones you didn't even know you had!<br>
<br>
You are breathless and exhausted by the end while he but glistens with the slightest sweat, his already large muscles pumped and huge while you look the same skinny wimp as when you walked in.<br>
<br>
"@@.npc_admin;Not bad, you seem to be getting the hang of technique just gotta keep at it, plus work a bit on your cardio. I'm here pretty much every morning in the week at seven, so feel free to join me, it's great to have a partner to talk with between sets and help with motivation, plus spots and form checks!@@"<br>
<br>
You don't see how you could possibly help spot him given the weight differential but you thank him for the offer and tell him you'll consider it.<br>
<br>
"@@.npc_admin;You look pretty beat but I wanna get in some more work, my delts were feeling a little weak earlier, so I'll see you around bro!@@"<br>
<br>
He heads back to the gym floor as you stagger into the locker-room, not even bothering to change, just grabbing your clothes and heading straight home.<br>
<br>
[<<moveTo "event_jogging_intro" "Home." 180>>]
</div>/*#
#desc: introduced to jogging as an activity option
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.timebased.dirty = 0>>
<<removeAllClothing $player $now>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.cage!="">>
<<changeItemStatus $scene.cage 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cage 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cage 'piss' '["remove"]'>>
<<changeItemStatus $scene.cage 'sweaty' '["remove"]'>>
<</if>>
<<if $player.makeup.template!="">>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<</if>>
<<washClothes>>
<<set _x = setup.cleanSexToys()>>
<</if>>
<<set $player.location to "Bathroom">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/shower_scene.mp4">>
<div id="invframe" class="scrolltext">
Back from the gym you're exhausted and sore, barely staggering into the shower to let the water flow over you and sooth your aching muscles.<br>
<br>
<<printThought $player "Wow, I guess being a desk jockey for so long has me really out of shape. Gym is probably a good idea, but even if I can't squeeze it into the budget I could always just jog around the block to build up my stamina.">><br>
<br>
<<if $currentTasks.hasOwnProperty('technician_cafe_1') && !$currentTasks.technician_cafe_1.finished && setup.getTaskDueDate('technician_cafe_1').getUTCDay() == $now.getUTCDay()>>
Speaking of exhausted you remember your scheduled date with <<=setup.getNpcName('npc_technician', 'first')>>. On the one hand going to the mall seems akin to embarking on a cross-continental run. On the other well... there IS coffee and sweet, sweet caffeine at the other end...<br>
<br>
[<<moveTo "event_technician_meeting_tired_1" "Text her you aren't going to make it." 60 "<<set $scene.skip=true>>">>]<br>
<<if setup.getWillpower($player)>0>>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "event_technician_meeting_tired_1" "Rest up a bit and push through." 1200 "<<set $scene.skip=false>>">>] <<hint $options "Pushing past your exhaustion would take an act of will.">>
<<else>>
[@@.link_locked;You need to be dressed to go outside if you even want to attempt to meet her.@@]
<</if>>
<<else>>
[@@.link_locked;You do not have the mental energy to overcome your physical exhaustion.@@]<br>
<</if>>
<<else>>
[<<moveTo "room_bathroom" "Finish shower." 180>>]
<</if>>
</div>/*#
#desc: technician meeting after gym intro
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.skip>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<<completeTask 'technician_cafe_1' $now false>>
<<else>>
<<set $player.timebased.tired = 90>>
<<spendWillpower $player 1>>
<<set $player.money.total -= 10>>
<<applyFatigue $player -50>>
<</if>>
<</if>>
<<set $player.location to "Bathroom">>
<<include enterroom>>
<<initRoom>>
<<if $scene.skip>>
<<set $player.location to "Phonecall">>
<<createBGR "./images/locations/phonecall.png">>
<<else>>
<<set $player.location to "Cafe: Newtype IV">>
<<createBGR "./images/locations/mall_cafe.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.skip>>
You text <<=setup.getNpcName('npc_technician', 'first')>> to let her know you are feeling under the weather and won't be able to make it to your scheduled <<if $npc_technician.relationship > 0>>date<<else>>meeting<</if>> with her today.<br>
<br>
<<if $npc_technician.relationship > 0>>
"@@.npc_technician;Oh no, you poor thing! I've got a cute nurse's outfit if you need ministering too...@@"<br>
<br>
As tempting as her offer is you thank her but explain that you're just too tired.<br>
<br>
"@@.npc_technician;Aww, that's disappointing, well stay in touch and let me know when I can see you again!@@"
<<else>>
"@@.npc_technician;Damn, that sucks well, I guess get feeling better and maybe hit me up next weekend, ok?@@"
<</if>>
<br><br>
[<<moveTo 'room_bedroom' "Hang up.">>]
<<else>>
You rest for awhile, but your body is still sore and tired when the time comes for you to fall out of bed and head to the mall. Mustering every ounce of will you have you somehow drag your way to Cafe Newtype early, ordering the strongest drink they have and pounding it back as you feel the bitter brew flowing through your veins moving you from "dead on your feet" to "twitching corpse." <br>
<br>
Feeling tired yet to jittery to sit still you head to the front of the cafe to pace and wait for your friend.<br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<set _tmpSeconds = setup.secondstoDate($now,_nextdate)>>
[<<moveTo "room_mall_cafe" "Wait." _tmpSeconds>>]
<</if>>
</div>/*#
#desc: show up to gym
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Lobby">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_desk.png">>
<div id="invframe" class="scrolltext">
You arrive at <<printShopName 'gym'>>, the local gym. The ultra-fit clerk at the front desk greets you with a smile and a wave.<br>
<br>
<<if setup.checkTaskCompleted('task_first_gym') == 0>>
<<if setup.daystoDate($now, setup.getTaskDueDate('task_first_gym')) == 0 && $now.getUTCHours() < 10>>
It looks like you're a bit early, <<=setup.getNpcName("npc_admin", "first")>> told you to meet him here at ten.<br>
<br>
<<set _gymStart = setup.setNextDate($now, 0, 10, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_gymStart)>>
[<<moveTo "room_gym_lobby" "Wait for your friend to arrive." _tmpSeconds>>]<br>
[@@.link_locked;It appears the gym equipment and apparel shop is closed at the moment.@@]
<<else>>
<<printThought $player 'Hmm, <<=setup.getNpcName("npc_admin", "first")>> seemed really psyched to introduce me to this place, I should wait and meet him on Saturday as we agreed.'>>
<</if>>
<<else>>
<<if $gym.membership.active>>
<<if $now.getUTCHours() == 6 && $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
You glance at the clock, <<=setup.getNpcName('npc_admin', 'first')>> should be showing up at seven if you wanted to work out with him.<br>
<br>
<<set _nextdate = setup.setNextDate($now, 0, 7, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_nextdate)>>
[<<moveTo "event_admin_gym_morning_1_gym_alt" "Wait for your friend." _tmpSeconds>>]<br>
<</if>>
[<<moveTo "room_gym_membership" "Cancel your membership." 60 "<<set $scene.cancel=true>>">>]<br>
[<<moveTo "room_gym_lockerroom_choice" "Head for the locker room." 180>>]<br>
<<else>>
Your membership at <<printShopName 'gym'>> has expired, you'll have to talk to the clerk to re-enroll.<br>
<br>
[<<moveTo "room_gym_membership" "Talk about re-enabling your membership." 60 "<<set $scene.cancel=false>>">>]<br>
<</if>>
<<if setup.checkTaskCompleted('task_first_gym') == 1>>
[<<moveTo "room_gym_shop" "Visit the gym apparel shop." 30>>]
<<else>>
[@@.link_locked;It appears the gym equipment and apparel shop is closed at the moment.@@]
<</if>>
<</if>>
<br><br>
[<<moveTo "room_citymap" "Leave the gym" 300>>]
</div>/*#
#desc: adjust gym membership
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
/% pro-rate your balance, assume all months are 30 days because lazy %/
<<set $scene.amount = Math.floor($gym.membership.monthly_price * (1 - $now.getUTCDate()/30))>>
<<if $scene.cancel>>
<<set $player.money.total += $scene.amount>>
<<set $gym.membership.active = false>>
<<else>>
<<set $player.money.total -= $scene.amount>>
<<set $gym.membership.active = true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Lobby">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_desk.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cancel>>
You explain to the clerk that money is too tight right now and you need to cancel your membership.<br>
<br>
They express sympathy for your situation, refunding the remaining <<=$scene.amount>> on your account.
<<else>>
You tell the clerk that you'd like you re-up your membership, they smile and welcome you back, taking <<=$scene.amount>> to cover the rest of the month. It will auto-bill as part of your monthly expenses after that.
<</if>>
<br><br>
[<<moveTo "room_gym_lobby" "Back." 60>>]
</div>/*#
#desc: gym choose activity
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
You look around the gym and consider what you want to do today.<br>
<br>
<<if Math.round($player.timebased.fatigue) >= 75>>
[@@.link_locked;Unfortunately you are too tired to get in any more exercise.@@]<br>
<<else>>
<<if $now.getUTCMinutes() > 25 && $now.getUTCHours() == 6 && $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
You glance at the clock, <<=setup.getNpcName('npc_admin', 'first')>> should be showing up at seven if you wanted to work out with him.<br>
<br>
<<set _nextdate = setup.setNextDate($now, 0, 7, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_nextdate)>>
[<<moveTo "event_admin_gym_morning_1_gym_alt" "Head to the lobby to wait for your friend." _tmpSeconds>>]<br>
<</if>>
[<<moveTo "event_gym_weights" "Hit the weights." 600>>]<br>
[<<moveTo "event_gym_cardio" "Do some cardio." 1800>>]<br>
[<<moveTo "event_gym_class" "Jump in on a fitness class." 60>>]<br>
<<if $npc_fit_bimbo.stage == 1>>
[<<moveTo "event_gym_bimbo" 'Check out the "private" class you heard about.' 60>>]<br>
<<elseif $npc_fit_bimbo.stage > 1>>
[<<moveTo "event_gym_bimbo" "Attend a bimbo training class." 60>>]<br>
<</if>>
<<if $npc_swolebro.stage == 1>>
[<<moveTo "event_gym_swolebro" "Take up the invite to work in with the hardcore lifters." 60>>]<br>
<<elseif $npc_swolebro.stage > 1>>
[<<moveTo "event_gym_swolebro" "Jump in on a session with the hardcore lifters." 60>>]<br>
<</if>>
<</if>>
<br>
<<if $scene.lockerroom == "female">>
[<<moveTo "room_gym_lockerroom_women_post" "Call it a day and head back to the locker-room." 60>>]
<<else>>
[<<moveTo "room_gym_lockerroom_men_post" "Call it a day and head back to the locker-room." 60>>]
<</if>>
</div>/*#
#desc: gym store
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Apparel Shop">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_desk.png">>
<div id="invframe" class="scrolltext">
You enter the gym apparel and equipment shop and look at the wares.<br>
<br>
<<printShop 'room_gym_shop' 'gym' $shopStatus>><br>
<br>
<<include thoughts_current>>
<br><br>
[<<moveTo "room_gym_lobby" "Back to the lobby." 60>>]
</div>/*#
#desc: gym women's locker-room
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange == true>>
<<set $scene.lockerroom="female">>
<<set $scene.breasts = setup.calcBreastSize($player)>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<<set $scene.fit_bimbo = $npc_fit_bimbo.stage == 0 && setup.getTotalValue("heels") > 5 && setup.getTotalValue("feminization") > 10>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<include calcGymAttire>>
<<include enterroom>>
<<initRoom>>
<<if $scene.fit_bimbo>>
<<createBGR "./images/locations/gym_lockers.png" "./images/characters/npc_fit_bimbo.png">>
<<else>>
<<createBGR "./images/locations/gym_lockers.png">>
<</if>>
<div id="invframe" class="scrolltext">
There's a sign on your way into the locker-room reminding you that you must wear proper gym attire to use the facilities.<br>
<br>
<<if $scene.fit_bimbo>>
<<if setup.getCurrentMakeup($player) == "ultimatebimbo" && ($scene.breasts == 'large' || $scene.breasts == 'massive')>>
<<set $npc_fit_bimbo.stage = 1>>
You're focused on your own affairs when a pair of drop-dead gorgeous blondes in matching skimpy pink outfits... and heels, oddly enough, walk up to you.<br>
<br>
"So, like, we're on our way to class when we saw you and... like damn girlfriend you look hot!" The first girl gushes<br>
<br>
"@@.npc_fit_bimbo;Seriously! I was just telling my friend that you would be perfect for our private workout group!@@"<br>
<br>
"She totally was! Anyway, we have a private room reserved in the back of the gym running special classes all the time you totally need to join, you'll, like, love it for sure!" <br>
<br>
"@@.npc_fit_bimbo;Yea! Plus, it's like the best, most functional workout you can get.@@"<br>
<br>
You thank them for the offer as they insist on sharing a hug, their large breasts pressing against your own... as you swear you felt something pressed against your leg with the second one, before they head out into the main gym area... still wearing high heels.<br>
<br>
<<printThought $player "That was weird, though maybe I could check the class out sometime?">>
<<elseif setup.getCurrentMakeup($player) == "ultimatebimbo">>
You're focused on your stuff when a buxom blonde happens by, chewing pink bubblegum as she talks to you. "@@.npc_fit_bimbo;Hey, like, I just wanted to say that your makeup is totally on fleek but, like... that's only part of the equation!@@"<br>
<br>
<<if setup.calcBreastSize($player) != 'none'>>
"@@.npc_fit_bimbo;Your boobs are, like, WAY too small. I guess maybe you're afraid they'll be challenging to handle but, like trust me it's TOTALLY worth it and as soon as you get the work done you'll only wish you'd upgraded sooner.@@"
<<else>>
"@@.npc_fit_bimbo;I mean, no offense, but you're so flat! They say guys want a pretty face but it don't mean much without something to squeeze! Trust me, once you get some work done your only regret will be not going bigger sooner!@@"
<</if>>
<br>
You mumble some sort of thanks for the complement but she has already moved on.
<<elseif $scene.breasts != 'none'>>
<<if $scene.breasts == 'small'>>
You're focused on your stuff when a gorgeous blonde walks past chatting with one of her friends.<br>
<br>
"@@.npc_fit_bimbo;Kind of cute, but she really needs some more work done!@@"<br>
<br>
"Like, for real! She may have a cute butt but ain't never going to attract a man without a bit more up top!" <br>
<br>
You blush in embarrassment as you glance around and realise they must have been talking about you.
<<else>>
You're focused on your stuff when a buxom blonde happens by, chewing pink bubblegum as she talks to you. "@@.npc_fit_bimbo;Hey, like, I just wanted to say your tits are looking good! Your doctor is, like, an artist, but you need to compliment it with more makeup, that would be, like, WOW.@@"<br>
<br>
You mumble some sort of thanks for the complement but she has already moved on.
<</if>>
<<else>>
You're a bit stunned at the raw beauty on display in the women's locker-room, careful not to stare at the half, or less, clothed women attending to business.<br>
<br>
<<if setup.getTotalValue("feminization") < 10 || setup.analyzeWornTags(['female','male','unisex']) == "male">>
You feel a bit out of place using the women's locker room, but nobody seems to really pay attention to you.
<</if>>
<br><br>
Though you're trying to keep focused on your things you can't help but notice a small clique of women. Compression clothing barely containing huge breasts and sculpted bodies they remind you a bit of plastic sex-dolls, their perfect, slutty makeup and vapid chatter setting them apart from the other, more athletically focused women.
<</if>>
<<else>>
/* TODO: random locker-room events here... */
You can't help but be a little distracted by the strong, feminine beauty on display in the locker-room.
<<if $npc_fit_bimbo.stage >= 2>>
one of your bimbo friends waves and smiles at you in greeting before turning back to the mirror to continue working on her makeup.
<<else>>
You keep your head down so as not to draw attention to yourself.
<</if>>
<<if setup.getTotalValue("feminization") < 10 || setup.analyzeWornTags(['female','male','unisex']) == "male">>
<br><br>
You feel a bit out of place using the women's locker room, but nobody appears bothered by your presence.
<</if>>
<</if>>
<br><br>
<<if $scene.gymAttire>>
[<<moveTo "room_gym_main" "Head into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<else>>
[@@.link_locked;You are inappropriately attired for the gym, you need to be wearing a workout top, pants and shoes to meet the gym's dress code.@@]<br>
<</if>>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_gym_lobby" "Go back to the lobby." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@]
<</if>>
</div>/*#
#desc: gym women's locker-room after workout
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange == true>>
<<set $scene.lockerroommale = false>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.exercise == 0>>
You aren't quite certain why you showed up to the gym and didn't bother to exercise, but that's how it goes as you start packing up your things. On the upside, at least you didn't build up a sweat!
<<elseif $scene.exercise == 1>>
You had a simple, straightforward workout. Still probably a good idea to take a shower before you leave.
<<elseif $scene.exercise == 2>>
You spent a bit of time working out in different ways, probably a good idea to shower before you depart.
<<elseif $scene.exercise > 2>>
You've had a long, varied workout. In other words, you kind of smell, a shower really is in order.
<<else>>
ERROR, unexpected scene.exercise <<=$scene.exercise>>
<</if>>
<br><br>
<<if setup.getIndecentValue() >= 90 && setup.getItemFromType("shoes") == "">>
[<<moveTo "room_gym_lockerroom_private_shower" "Take a shower in one of the private stalls." 60>>]<br>
[<<moveTo "room_gym_lockerroom_women_shower" "Use the women's open shower." 60>>]
<<else>>
<<if setup.getIndecentValue() < 90>>
[@@.link_locked;You can't shower with clothes on!@@]<br>
<<elseif setup.getItemFromType("shoes") != "">>
[@@.link_locked;You can't shower with shoes on!@@]<br>
<<else>>
ERROR: unexpected inability to shower!
<</if>>
[<<moveTo "room_gym_lockerroom_women_post" "Strip." 60 "<<removeAllClothing $player $now true>>">>]
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Lockerroom">><<set $return_makeuproom="room_gym_lockerroom_women_post">><<set $makeuproom_image="./images/locations/gym_lockers.png">><<set $return_makeuproomtext="Return to the lockerroom.">><<set $makeuproom_water=true>>'>>]<br>
<br>
<</if>>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_citymap" "Leave the gym." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now!'>>">>]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@]
<</if>>
</div>/*#
#desc: gym women's locker-room shower after workout
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.timebased.dirty = 0>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.cage!="">>
<<changeItemStatus $scene.cage 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cage 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cage 'piss' '["remove"]'>>
<<changeItemStatus $scene.cage 'sweaty' '["remove"]'>>
<</if>>
<<if $gym.lewd_female || $gym.lewd_futa>>
<<set $scene.id = random(1,10)>>
<<else>>
<<set $scene.id = random(1,7)>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room Shower">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
You head into the showers to clean yourself up from your workout.<br>
<br>
<<switch $scene.id>>
<<case 1 2 3>>
Your shower passes uneventfully, nobody paying attention to you and you carefully avoiding looking at anyone else.
<<case 4>>
As you're showering you can't help but notice a pair of lesbians making out in a corner. You can't help but be turned on at their sensuous display, the mist of the shower and the water raining down on them making the whole scene as artistic as it is hot.
<<case 5>>
You find yourself a bit distracted by all of the beautiful, naked women sharing the shower with you. Your heart races with excitement as you try not to look around too overtly and concentrate just on scrubbing up.
<<case 6>>
You're in the middle of washing up when an amazonian futa strides into the shower and calls out that she needs a "slutty mouth-hole to get over her to suck my cock and soap me down." <br>
<br>
<<if setup.getTotalValue("whoring") >= 5 || setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("humiliation") > 10>>
[<<moveTo "room_gym_lockerroom_women_shower_futa" "Eagerly volunteer" 300 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;You're too embarrassed to speak up.@@]<br>
<</if>>
[<<moveTo "room_gym_lockerroom_women_shower_futa" "Try not to catch her eye." 120 "<<set $scene.accept=false>>">>]
<<case 7>>
On one side of the shower a woman appears to be chained to the wall, another woman doing a very thorough job of hosing her off.<br>
<br>
<<if setup.getTotalValue("whoring") >= 5 || setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("humiliation") > 10>>
[<<moveTo "room_gym_lockerroom_women_shower_wash" "Ask if you can be next" 300>>]<br>
<<else>>
[@@.link_locked;You're too embarrassed to ask for a spot in the lady wash.@@]<br>
<</if>>
[<<moveTo "room_gym_lockerroom_women_post" "Just finish up showering." 120>>]
<<case 8>>
As you're washing up you can't help but notice a cute futa giving her amazonian "partner" the business. As hot as it is incongruous the smaller woman is railing her bigger, stronger partner hard and deep, both of them too focused on their frenzied fucking to pay much attention to anyone staring...<br>
<br>
You can't help but find yourself frequently glancing in their direction, though you try to at least keep it subtle as you go about your washing.
<<case 9 10>>
<<if $npc_fit_bimbo.stage > 1>>
You spot a cadre of fellow bimbos washing each other in a corner of the shower. They eagerly call you over and you join in on the fun of making sure all of your big breasts and tight asses are nice and squeaky clean... with plenty of giggling groping thrown in for good measure.
<<else>>
There are a handful of slutty women all showering together and chatting. Though they each look a little different they follow a common theme - huge tits, perfect ass, slutty makeup and a bit of an airheaded demeanour.<br>
<br>
Interestingly one of them turns to reveal a small, but definitely present, cock locked in a cute, pink cage. It looks like this pack of bimbo's counts at least one sissy amongst its sisterhood.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought $player "Mmm, what a lucky girl, I wish I was one of them...">>
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene id: <<=$scene.id>>
<</switch>>
<br><br>
<<if $scene.id != 6 && $scene.id != 7>>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 60>>]
<</if>>
</div>/*#
#desc: gym women's locker-room shower submissive futasex
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.accept>>
<<set $gym.lewd_futa = true>>
<<set $scene.size = random(8,13)>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 11 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $scene.size 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' $scene.size 'very' $SEEN_STRANGER>>
<<elseif $fetish.get_raped>>
<<set $scene.size = random(8,13)>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 11 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $scene.size 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room Shower">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
As the amazonian futa scans the showers for her "volunteer"/victim you raise your hand and wave.<br>
<br>
The woman grins, her cock hardening in approval as she hungrily lays eyes on you.<br>
<br>
"Well? What are you waiting for, this cock ain't gonna suck itself." <br>
<br>
You almost slip in the wet shower in your hurry to get into position but the amazonian catches you... and then deposits you on her knees as she jams her cock into your face.<br>
<br>
She's big and hard and delicious
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
and you eagerly deepthroat her on the first gulp. She's obviously surprised at your skill but you don't rest on your laurels, eagerly sucking and bobbing up and down to give her the full benefit of all that your trained throat has to offer.
<<else>>
and you barely manage to hilt her full length. She's obviously impressed at your skill and you follow-up with the best deep-throating blowjob you can give.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
She's too big for you to possibly take in her entirety, but you do your best until you gag, coughing slightly before resuming by sucking and licking around her head and up and down her shaft.
<<else>>
She's so big that you swiftly find yourself gagging without even getting so much as her tip into your throat. She tries to "help" with a few hard thrusts but it's quite clear that you just don't have the skill to take one of her size. Trying to make up for it you swirl your tongue and suck for everything you've got as you move up and down her shaft with mouth, tongue and hands, stroking and sucking and slurping away.
<</if>>
<</if>>
<br><br>
Rewarded with a thick blast of futa cum she waits for you to lick the both of you clean of her <<if setup.getTotalValue("cum") >= 10>>delicious<<else>>strong-tasting<</if>> splooge before handing you a bar of soap and a bath puff and telling you to "get to work." <br>
<br>
You can tell she's had a long, hard... workout by the amount of tension in her swelled muscles and you give her a thorough scrubbing down/body massage. Just as you're finishing up the sudsy bar of soap slips from your grasp, skittering across the wet floor.<br>
<br>
Chasing after it and bending over you are surprised to find her behind you, hard and horny once more as she holds your
<<if setup.getItemFromType("plug") != "">>
hips, removes your plug with a loud POP and fucks your ass fast and deep.
<<else>>
hips to fuck your ass good and fast.
<</if>>
<br><br>
"Ah, now that's a full-service shower!" She states as she pumps you full of cream filling. You wobble a bit as she withdraws, trying to recover from taking her in both ends in such quick succession. <<if setup.getItemFromType("plug") != "">>She helpfully shoves the plug back into your still-gaping hole before giving<<else>>She gives<</if>> you a slightly too-hard slap on the back and thanking you for your effort.<br>
<br>
Nice and "clean" she heads back to the locker-room to change. After a final rinse you decide to do the same.
<<else>>
You keep your head down and try not to make eye contact as the amazonian futa scans the room for prey.
<<if $fetish.get_raped>>
Unfortunately there seems to be something about you to mark you a perpetual victim because a few moments later she's dragging you to your knees by your hair, her thick cock thrusting past your lips to plunge down your helpless throat.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Though her intrusion past your lips may have been uninvited you find yourself swiftly falling back on your hard-learned skills, hilting her on the first stroke and making her moan at your throat's expert accomodation.
<<else>>
You may not have woken this morning intending to get throat-fucked you woke up with the ABILITY to be throat-fucked and you find yourself employing such now, even if it is a bit against your will.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You cough and gasp as she pounds away at your gag reflex, desperately sucking and licking in hopes of dissuading her from continuing to roughly thrust into you.
<<else>>
You cough and gasp and try not to choke as her cock rams up against the back of your throat. Eyes wide and tears streaming down your face you try to suck and lick in hopes that you might placate her from boring a hole out through the back of your head.
<</if>>
<</if>>
<br><br>
She cums. She cums in thick, creamy jets that spurt out your nose and dribble down your chin. Grunting in pleasure she wipes herself off on your face and then tosses you a luffa and soap.<br>
<br>
Fearfully you scrub her down and rinse her off. Your reward is a slap on the ass and a "good job, slut." Before she walks away, leaving you to finish cleaning yourself up without actually ending up feeling any less dirty and used.
<<else>>
Fortunately for your holes another girl pops up with a smile, "volunteering" to help out... those being the last intelligible words out of her mouth before the futa has the girl down on her knees, plunging her big cock deep into the girl's throat.<br>
<br>
YOu focus on finishing washing up, trying not to get too distracted by the backing soundtrack of face-rape in the background.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 60>>]
</div>/*#
#desc: gym women's lockerroom shower get bound and hosed off
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.accept>>
<<set $gym.lewd_female = true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room Shower">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
Walking up to the hose-wielding woman you note that you've been something of a "dirty girl" and ask if she could help get you clean.<br>
<br>
She grins as she gives her current client a final blast. Unchaining the woman's wrists from the ceiling mounted chain she soon has you locked up in the girl's place.<br>
<br>
Arms stretched above your head there is nothing you can do to evade the sharp, stinging spray of her hot hose, and she makes absolutely sure to get you from every angle, not letting up until every inch of you is squeaky-clean.<br>
<br>
Letting you drip for a few moments as you catch your breath she unlocks the wrist cuffs to let you free. As you stagger away you notice she already has another client stepping into position, arms held high as she is restrained for her cleaning.<br>
<br>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 60>>]
</div>/*#
#desc: gym locker-room
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.exercise = 0>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
Heading into the gym you are faced with that most pressing of questions - which locker-room to use?<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
<<printThought $player "Hmm, given what I'm wearing I suppose it makes sense to use the women's locker room.">>
<<case 'male'>>
<<if $player.flags.fem_style.name == "">>
<<printThought $player "I guess I'm dressed male so I could use that locker-room? Feels a bit odd tho.">>
<<else>>
<<printThought $player "To the men's locker room!">>
<</if>>
<<case 'unisex'>>
<<printThought $player "Hmm, I guess I can fit in in either locker room in this outfit.">>
<<default>>
ERROR: unexpected clothing tag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
<<if setup.getTotalValue("feminization") > 10>>
You really feel like you belong in the women's locker-room.
<<elseif setup.getTotalValue("feminization") < 5>>
Despite what may have happened in your life of late you're a man, that means you should use the men's locker-room, right?
<<else>>
At this point you're kind of confused as to which locker-room you belong in.
<</if>>
<br><br>
[<<moveTo "room_gym_lockerroom_men_pre" "Enter the men's locker-room." 60>>]<br>
[<<moveTo "room_gym_lockerroom_women_pre" "Enter the women's locker-room." 60>>]
</div><<set $scene.topId = setup.getItemFromType("shirt")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("dress")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("strapless_dress")>>
<</if>>
<</if>>
<<set $scene.bottomId = setup.getItemFromType("legwear")>>
<<set $scene.shoeId = setup.getItemFromType("shoes")>>
<<set $scene.gymAttire = false>>
<<if $scene.topId != "" && setup.getItemObj($scene.topId).hasOwnProperty("tags") && setup.getItemObj($scene.topId).tags.includes("gym")
&& $scene.bottomId != "" && setup.getItemObj($scene.bottomId).hasOwnProperty("tags") && setup.getItemObj($scene.bottomId).tags.includes("gym")
&& $scene.shoeId != "" && setup.getItemObj($scene.shoeId).hasOwnProperty("tags") && setup.getItemObj($scene.shoeId).tags.includes("gym")>>
<<set $scene.gymAttire = true>>
<</if>>/*#
#desc: gym private locker-room shower after workout
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.timebased.dirty = 0>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.cage!="">>
<<changeItemStatus $scene.cage 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cage 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cage 'piss' '["remove"]'>>
<<changeItemStatus $scene.cage 'sweaty' '["remove"]'>>
<</if>>
<<set _npcids = [0]>>
<<if ($gym.lewd_male || $gym.lewd_female || $gym.lewd_futa) && Math.random(1,10) <= $npc_manager.stage>>
<<if $scene.lockerroommale>>
<<if $gym.lewd_male>>
<<set _npcids.push(1)>>
<<set _npcids.push(2)>>
<</if>>
<<else>>
<<if $gym.lewd_female>>
<<set _npcids.push(3)>>
<<elseif $gym.lewd_futa>>
<<set _npcids.push(4)>>
<</if>>
<</if>>
<</if>>
<<set $scene.npcid = _npcids.random()>>
<<if $fetish.get_raped>>
<<switch $scene.npcid>>
<<case 1>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'very' $SEEN_STRANGER>>
<<set $gym.private_shower.male += 1>>
<<case 2>>
<<if setup.getItemFromType("cage") == "">>
<<set $player.timebased.horny = 10>>
<</if>>
<<set $gym.private_shower.sissy += 1>>
<<applyExperience 'feminization' 11 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'very' $SEEN_STRANGER>>
<<case 3>>
<<if $fetish.harass && random(1,3)==3>>
<<set $scene.harrassmentEvent = true>>
<<applyExperience 'humiliation' 11 'very' $SEEN_STRANGER>>
<<else>>
<<set $gym.private_shower.female += 1>>
<<set $scene.harrassmentEvent = false>>
<<applyExperience 'submission' 7 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 9 'normal' $SEEN_STRANGER>>
<<if $fetish.piss && $player.drankotherpee>>
<<applyExperience 'piss' 7 'very' $SEEN_STRANGER>>
<<if !setup.hasThreshold('piss', 'general_piss', 'gym_piss')>>
<<setThreshold 'piss' 'general_piss' 'gym_piss' true>>
<</if>>
<</if>>
<</if>>
<<case 4>>
<<applyExperience 'oral' 9 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 9 'normal' $SEEN_STRANGER>>
<<if $fetish.piss && $player.drankotherpee>>
<<applyExperience 'piss' 5 'terrible' $SEEN_STRANGER>>
<<if !setup.hasThreshold('piss', 'general_piss', 'gym_piss')>>
<<setThreshold 'piss' 'general_piss' 'gym_piss' true>>
<</if>>
<</if>>
<<set $gym.private_shower.futa += 1>>
<</switch>>
<<elseif $fetish.harass>>
<<applyExperience 'humiliation' 11 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
Embarrassed to be seen naked by strangers you wait for one of the private shower stalls to free up before darting in and removing your towel.<br>
<br>
<<if $scene.npcid > 0>>
You're in the process of cleaning yourself off in the private stall when someone suddenly barges in!<br>
<br>
Reflexively covering yourself you look over in shock at
<<switch $scene.npcid>>
<<case 1>>
a muscular man
<<case 2>>
a cute and caged fellow sissy
<<case 3>>
a svelte, naked woman
<<case 4>>
a big-dicked futa
<<default>>
ERROR, unexpected scene.npc <<=$scene.npcid>>
<</switch>>.<br>
<br>
<<if $fetish.get_raped>>
As you stand stock still in fear they slide into the shower with you.<br>
<br>
<<switch $scene.npcid>>
<<case 1>>
"Oh, hello there." He states with a grin as he finishes stepping into the stall, his large, muscle-bound body forcing you to jam into a corner to make room.<br>
<br>
"Aww, don't be like that, there's plenty of room for the both of us, here, let me get your back.<br>
<br>
There's no way you can slip past him to the door so you just turn around, his strong hands surprisingly delicate as he works his way down from your shoulders to your ass.<br>
<br>
<<if setup.getItemFromType("plug") == "">>
"Oh this ass is just too perfect, I hope you got a bit of stretch because I gotta get me some of this."
<<else>>
His exploring hands find the <<=setup.getItemName(setup.getItemFromType("plug"))>> and suddenly stop.<br>
<br>
"What's this? Oh you are a dirty one!" He wiggles your plug and you gasp at the stimulation.<br>
<br>
"Oh I gotta get me a piece of this! I mean you went to all the trouble to prepare it'd be rude not to!" <br>
<br>
With a pop he pulls the plug out of your ass and tosses it in a corner of the shower.
<</if>>
<br><br>
Lifting you up as if it was nothing he drops you ass first onto his cock, his thick member spearing into your rear powered by the full weight of your body.<br>
<br>
"Aww yea, now that's what I'm talking about!" He grunts, your toes not even touching the ground as he bounces you up and down on his dick.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
After the initial shock your body adjusts to his size, though big it's nothing you can't handle and he grunts in pleasure as you reflexively clamp down and start milking him.
<<else>>
He's big, really big, but your body has no choice but to try and stretch to accomodate as you are impaled and pounded in mid-air.
<</if>>
<br><br>
"Damn you feel good, imma pop my nut any moment now!" Is all the warning you get before his cock spits cum deep in your bowels and he finally releases his hold on your body.<br>
<br>
There isn't really enough room for you to fall in the small shower and you find yourself pressed against the wall, leaking cum down your leg as he reaches for the soap.<br>
<br>
"Don't just stand there, my back needs scrubbing too!" He states as he turns around. In a bit of a daze you do as he asks, washing his whole body then craming into a corner as he rinses off.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
"Oh, almost forgot!" He states as he turns to go, bending you over and shoving the <<=setup.getItemName(setup.getItemFromType("plug"))>> back into your ass.<br>
<br>
<</if>>
"Ah, much better, have a good day!" He states with a wide smile before exiting the stall. You finish washing yourself off and stagger out, feeling more used than clean.
<<case 2>>
"Mmm, you're cute!" they state with a smile, rubbing up against you.<br>
<br>
"Here, let me get your back." <br>
<br>
You shudder as their soapy fingers slide over your body.
<<if setup.getItemFromType("cage") == "">>
They're caged and you're not which seems to setup an instant hierarchy. After finishing your back they slide to their knees, first groping you then moving around front to softly suck your sissy clit.<br>
<br>
Their mouth is warm, soft and oh-so-skilled and it isn't long before you grant them a salty sissy snack.<br>
<br>
Smiling they return to their feet, showily swallowing it down with glee before giving you a cum-scented kiss and slipping back out of the "private" stall.
<<else>>
Both caged as you are you're a bit limited in what you can "do" but they seem to have an enjoyable enough time, drawing you in to a mutual scrubbing before sliding out of the "private" stall with a parting wink and a blown kiss.
<</if>>
<<case 3>>
<<if $scene.harrassmentEvent>>
"What the fuck? You don't belong in here! Are you some perv trying to get off in the women's locker-room!? I'm going to go get an employee!" <br>
<br>
She rushes out and you hurriedly pack your stuff and flee before she can return, hoping she didn't catch a good enough look at you in the steamy shower to identify you.
<<else>>
"Oh, hey,"" she states with a smile, "didn't realise anyone was in here but that's great, you wanna do my back?" <br>
<br>
On obedient autopilot you scrub away as she purrs in contentment. "Mmmm, yea, that's the stuff, now be a dear and finish me off?" <br>
<br>
You hesitate for a moment as you try to figure out what she said which is enough to trigger her impatience as she pushes you to your knees and shoves her wet snatch into your face.<br>
<br>
"Yea, really get in there." She instructs as your gasp has your lips wrapping around hers.<br>
<br>
It doesn't take long before she has an orgasm, her moan of pleasure echoing in the narrow stall.<br>
<br>
<<if $fetish.piss && $player.drankotherpee>>
"Not bad, but now I'm feeling a bit full... open wide!" Before you can react she unleashes a stream of <<if setup.getTotalValue("piss") >= 10>>delectable <</if>>piss, the amber liquid splashing over your face and flowing down towards the drain.<br>
<br>
<</if>>
"Ah, that was great. Catch you later, slut!" She states with a wink as she departs, leaving you feeling used, the water still flowing over you failing to make you feel the least bit clean.
<</if>>
<<case 4>>
"Oh, didn't realise this was already occupie-" She halts mid-word, her rising cock foreshadowing what the grin on her face confirms.<br>
<br>
"Oh, my. I didn't realise this was a... full-featured stall. Now, why don't you get down on your knees and put those adorably parted lips to some better use?" <br>
<br>
When you don't move fast enough for her liking she pulls you to the floor, holding your head between her strong hands as she uses your throat like an onahole, your knees slipping and sliding on the wet and soapy tile floor as she pounds away.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Even your skilled throat is pushed to the limit by her hard, fast face-rape. She cums fast and hard, the thick brew leaking out your nose as she nigh tosses you into the corner of the stall, leaving you in a gasping pile as you try to catch your breath.
<<else>>
Your tears disappear down the drain as the water continues flowing over you and she does her best to force every centimeter of her thick cock down your poor throat. Cumming fast and hard she leaves you in the corner of the stall, coughing for air, cum drooling down your chin.
<</if>>
<br><br>
<<if $fetish.piss && $player.drankotherpee>>
"That's right, you love a thick futa cock don't you? But get ready because I've got a final treat for you!" <br>
<br>
As if to add insult to injury she follows up by unleashing a stream of urine, painting all over your body with her amber emission, leaving you covered in piss and cum as she finishes washing up.
<<else>>
"Good girl, you suck futa cock like a pro!" <br>
<br>
Leaving you in the corner she practically ignores you as she goes about scrubbing herself down, seeming to pay particular attention to using a sudsy washcloth to polish her shaft and sack.
<</if>>
<br><br>
"Well, it's been fun. I'd love to break in your other hole but I've got stuff to do today, maybe next time!" <br>
<br>
It takes a little longer for you to recover enough to make it back to your feet, still coughing occasionally thanks to your sore throat, but able to finish washing off without further incident.
<<default>>
ERROR, unexpected scene.npc <<=$scene.npcid>>
<</switch>>
<<else>>
"Oh, sorry, didn't realise someone was already in here." They state before pulling back.<br>
<br>
<<if $fetish.harass>>
Just before the door closes they poke back in with a smile. "Looking good in there, by the way." <br>
<br>
<</if>>
Standing stock still for several more moments you wait for your racing heart to calm down before finishing up washing off.
<</if>>
<<else>>
You quickly rinse off the sweat of the gym and get yourself clean, wrapping the towel back around your body to return to the locker-room to get dressed.
<</if>>
<br><br>
<<if $scene.lockerroommale>>
[<<moveTo "room_gym_lockerroom_men_post" "Return to the locker-room." 60>>]
<<else>>
[<<moveTo "room_gym_lockerroom_women_post" "Return to the locker-room." 60>>]
<</if>>
</div>/*#
#desc: gym men's locker-room
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange == true>>
<<set $scene.lockerroom="male">>
<<set $scene.origPants = setup.getItemFromType("legwear")>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room">>
<<include calcGymAttire>>
<<set $scene.changed = $scene.origPants != $scene.bottomId>> /* something, something, set if you change pants/skirt */
<<set $scene.meetSwoleBro = ($npc_swolebro.stage == 0 && $scene.changed && setup.getItemFromType("cage") != "")>>
<<if $scene.meetSwoleBro>>
<<set $npc_swolebro.stage = 1>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.meetSwoleBro>>
<<createBGR "./images/locations/gym_lockers.png" "./images/characters/npc_swolebro.png">>
<<else>>
<<createBGR "./images/locations/gym_lockers.png">>
<</if>>
<div id="invframe" class="scrolltext">
There's a sign on your way into the locker-room reminding you that you must wear proper gym attire to use the facilities.<br>
<br>
<<if $scene.meetSwoleBro>>
You're in the process of changing when a large, totally shredded man walks up and greets you with a smile.<br>
<br>
"@@.npc_swolebro;So, when's your comp?@@"<br>
<br>
You have no idea what he's talking about, looking back with confusion.<br>
<br>
"@@.npc_swolebro;Oh, sorry, I just saw your chastity cage and figured you were on enforced celibacy to help prepare for a competition - sex robbing you of testosterone and thus gains, y'know.@@"<br>
<br>
Now you're confused AND embarrassed, your look of shock causing him to quickly pivot.<br>
<br>
"@@.npc_swolebro;Nah, it's cool, a lot of the guys wear one from time to time. Hey Dmitry!@@" he calls out, an even larger man on his way out of the shower looking over, a towel wrapped around his waist, chiselled abs peeking out above. "@@.npc_swolebro;You still locked up?@@"<br>
<br>
"You know it, man! Got a shoot next week, gotta get those results, keep it all inside, not leak those gainz!" <br>
<br>
Your jaw almost drops as the man loosens his towel revealing a very large <<getWordPenis $player>> that looks like some sort of primal beast inside a heavy steel cage.<br>
<br>
"@@.npc_swolebro;See, totally normal, if you're wearing it for some other reason that's cool too, but, well, y'know, I just assumed.@@" There is a bit of awkward silence before the man continues. "@@.npc_swolebro;Hey, tell you what - since you're pretty new to working out why don't you join us sometime? There's a whole group of us that train most days, just roll on up and say <<=setup.getNpcName('npc_swolebro', 'first')>> sent you and they'll let you work in and give you the realtalk advice, full on brophessor shit, you get me? Anyway, I gotta hit the showers, you think on it.@@" <br>
<br>
Somehow you find your voice long enough to thank him for the offer and he walks away with a smile, giving Dmitry a loud slap on the ass before disappearing into the steam of the showers.<br>
<br>
<<printThought $player "That was weird... but, I mean, he seemed friendly, and I probably could use the help if I want to get in better shape.">><br>
<br>
You can't help but glance at Dmitry as he finishes changing into street clothes and heads out. Other than being a near perfectly muscled male specimen he looks utterly normal... and you find yourself already doubting your own memory of seeing him locked at caged.
<<elseif $npc_swolebro.stage == 0>>
You're a bit intimidated, trying not to stare at the other occupants of the locker-room. They all look much bigger and stronger than you do, chiselled Adonis' compared to your more feminine form.<br>
<br>
<<if setup.getTotalValue("feminization") || setup.analyzeWornTags(['female','male','unisex']) != "male">>
You feel a bit out of place using the men's locker room, but nobody seems to pay you much mind.
<<else>>
You try to ignore the feelings of inadequacy as you get ready to head into the gym proper.
<</if>>
<<switch setup.calcBreastSize($player)>>
<<case "massive">>
Your ginormous breasts can't help but draw stares, maybe you're in the wrong locker-room?
<<case "large">>
Your large breasts draw a fair few looks, maybe you're in the wrong locker-room?
<<case "medium">>
Your breasts are a bit too large to pass for over-developed pectorals, you get a few glances and one jacked guy with an obvious case of gynecomastia who makes eye contact with you and gives a sympathetic nod.
<<case "small">>
Your breasts are small enough to pass for over-developed pecs and do not draw undue notice.
<<case "none">>
Your flat, unimpressive chest draws no attention.
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize($player)>>
<</switch>>
<<else>>
/* TODO: random locker-room events here... */
You take care of business in the locker-room,
<<if $npc_swolebro.stage >= 2>>
one of your bodybuilding friends giving you a friendly fist-bump as he makes he makes his way past.
<<else>>
keeping your head down so as not to draw any attention from any of the large, yoked men changing in the locker-room.
<</if>>
<br><br>
<<if setup.getTotalValue("feminization") > 10 || setup.analyzeWornTags(['female','male','unisex']) != "male">>
You feel a bit out of place using the men's locker room, but nobody seems bothered.
<<else>>
You try to ignore the feelings of inadequacy as you get ready to head into the gym proper.
<</if>>
<</if>>
<br><br>
<<if $scene.gymAttire>>
[<<moveTo "room_gym_main" "Head into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<else>>
[@@.link_locked;You are inappropriately attired for the gym, you need to at a minimum be wearing a workout top, pants and appropriate shoes to meet the gym's dress code.@@]<br>
<</if>>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_gym_lobby" "Go back to the lobby." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now!'>>">>]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@]
<</if>>
</div>/*#
#desc: gym men's locker-room after workout
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange == true>>
<<set $scene.lockerroommale = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.exercise == 0>>
You aren't quite certain why you showed up to the gym and didn't bother to exercise, but that's how it goes as you start packing up your things. On the upside, at least you didn't build up a sweat!
<<elseif $scene.exercise == 1>>
You had a simple, straightforward workout. Still probably a good idea to take a shower before you leave.
<<elseif $scene.exercise == 2>>
You spent a bit of time working out in different ways, probably a good idea to shower before you depart.
<<elseif $scene.exercise > 2>>
You've had a long, varied workout. In other words, you kind of smell, a shower really is in order.
<<else>>
ERROR, unexpected scene.exercise <<=$scene.exercise>>
<</if>>
<br><br>
<<if setup.getIndecentValue() >= 90 && setup.getItemFromType("shoes") == "">>
[<<moveTo "room_gym_lockerroom_private_shower" "Take a shower in one of the private stalls." 60>>]<br>
[<<moveTo "room_gym_lockerroom_men_shower" "Use the men's open shower." 60>>]
<<else>>
<<if setup.getIndecentValue() < 90>>
[@@.link_locked;You can't shower with clothes on!@@]<br>
<<elseif setup.getItemFromType("shoes") != "">>
[@@.link_locked;You can't shower with shoes on!@@]<br>
<<else>>
ERROR: unexpected inability to shower!
<</if>>
[<<moveTo "room_gym_lockerroom_men_post" "Strip." 60 "<<removeAllClothing $player $now true>>">>]
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Lockerroom">><<set $return_makeuproom="room_gym_lockerroom_men_post">><<set $makeuproom_image="./images/locations/gym_lockers.png">><<set $return_makeuproomtext="Return to the lockerroom.">><<set $makeuproom_water=true>>'>>]<br>
<br>
<</if>>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_citymap" "Leave the gym." 300 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now!'>>">>]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@]
<</if>>
</div>/*#
#desc: gym men's locker-room shower after workout
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = 'Not in the shower!'>>
<<set $player.timebased.dirty = 0>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.cage!="">>
<<changeItemStatus $scene.cage 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cage 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cage 'piss' '["remove"]'>>
<<changeItemStatus $scene.cage 'sweaty' '["remove"]'>>
<</if>>
<<if $gym.lewd_male>>
<<set $scene.id = random(1,10)>>
<<else>>
<<set $scene.id = random(1,6)>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room Shower">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
You head into the showers to clean yourself off from your workout.<br>
<br>
<<switch $scene.id>>
<<case 1 2 3>>
Your shower passes uneventfully, nobody paying attention to you and you carefully avoiding looking at anyone else.
<<case 4>>
As you're showering you can't help but notice a pair of fit dudes washing each other on the other side of the tile-lined room. They're definitely having a bit of fun, making out a little as the sudsy water flows down their bodies but it isn't particularly lewd, per se. You quickly look away before they catch you staring.
<<case 5>>
You can't help but notice that practically everyone else in the shower seems is bigger than you... in both senses of the word, a sexy array of fit, well-hung men washing themselves all around your slender, dainty self...<br>
<br>
You quickly focus back on your scrubbing and try not to look around as you finish up, though you sweat you spotted the glint of a chastity cage on one guy...
<<case 6>>
You're in the middle of washing up when an attractive man walks up to the shower next to you.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
You can't help but stare at his glorious, mouth-watering cock.
<<else>>
You can't help but gawk at his big, beautiful cock.
<</if>>
Noticing your attention he flashes a smile that could be an invitation...
<<else>>
<<if setup.getTotalValue("penis") > 10>>
You try not to look, but it's hard to ignore his big, sexy cock.
<<else>>
You try to focus on your own things but you still catch a glance of his big cock that has you feeling funny.
<</if>>
Fortunately, it doesn't look like he noticed your attention.
<</if>>
<br><br>
<<if $player.analvirginity != "" && (setup.getTotalValue("whoring") >= 5 || setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("humiliation") > 10)>>
[<<moveTo "room_gym_lockerroom_men_shower_soap_alt" "Drop the soap." 60>>]<br>
<<else>>
[@@.link_locked;You're too embarrassed to try making an invitation.@@]<br>
<</if>>
[<<moveTo "room_gym_lockerroom_men_post" "Just finish washing up return to the locker-room." 60>>]
<<case 7 8>>
As you're washing up you here a moan, glancing up to see a pair of dudes fucking against the far wall. Both fit, sculpted paragons of man muscle one is bent over, both arms braced against the wall as his friend takes him from behind. Too wrapped up in their private lusty world you don't think they noticed you but you quickly turn away... yet are unable to avoid stealing peeks out of the corner of your eye as they continue to fuck throughout your washing up.
<<case 8 9>>
<<if $npc_swolebro.stage > 1>>
There are a cluster of swole dudes washing up and chatting with each other in the shower. Recognizing you they throw up a wave of greeting.
<<else>>
There are a cluster of swole dudes washing up and chatting with each other in the shower. They're a bit intimidating and... did you just see one of them is wearing a chastity cage?<br>
<br>
You can't tell anymore from this angle but you would swear you caught a glint of cock-encasing steel out of the corner of your eye.<br>
<br>
<<printThought $player "Weird, I must be seeing things">>
<</if>>
<<case 10>>
You're scrubbing up when the slick soap slips out of your grasp, popping into the air and then skipping along the floor to stop at the feet of a man a few feet away.<br>
<br>
Glancing down he smiles, picking it up and starting to hand it to you before pulling back with an even wider grin.<br>
<br>
"Wait... was that an invitation?" <br>
<br>
He looks you up and down like he's inspecting a slab of meat... and from his smile he likes what he sees.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, it's like my life is a porno...">><br>
<br>
<<if $player.analvirginity != "" && (setup.getTotalValue("whoring") >= 5 || setup.getTotalValue("bimbofication") > 8 || setup.getTotalValue("humiliation") > 8)>>
[<<moveTo "room_gym_lockerroom_men_shower_soap" "Smile and say yes..." 60 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;You're too embarrassed to possibly accept his offer.@@]<br>
<</if>>
[<<moveTo "room_gym_lockerroom_men_shower_soap" "Quickly shake your head." 60 "<<set $scene.accept=false>>">>]
<<default>>
ERROR: unexpected scene id: <<=$scene.id>>
<</switch>>
<br><br>
<<if $scene.id < 10 && $scene.id != 6>>
[<<moveTo "room_gym_lockerroom_men_post" "Back to the locker-room." 60>>]
<</if>>
</div>/*#
#desc: gym men's locker-room drop the soap
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room Shower">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
"Ooops" you state as you let the bar of soap slip out of your fingers to land on the floor.<br>
<br>
With a slight smile you bend over slowly, wiggling your butt in invitation in the direction of your "new friend." <br>
<br>
[<<moveTo "room_gym_lockerroom_men_shower_soap" "Continue." 60>>]
</div>/*#
#desc: gym men's locker-room get fucked for dropping the soap
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $gym.lewd_male = true>>
<<if $scene.accept>>
<<applyExperience 'anal' 9 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 9 'very' $SEEN_STRANGER>>
<<applyExperience 'penis' 11 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 12 'very' $SEEN_STRANGER>>
<<else>>
<<if $fetish.get_raped>>
<<applyExperience 'anal' 9 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room Shower">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You're bent over as he slides up behind you
<<if setup.getItemFromType("plug") == "">>
to grope your ass and slide two thick fingers in to warm up your willing hole.
<<else>>
groping your ass before sliding your plug free to be replaced by a pair of thick fingers.
<</if>>
<br><br>
"Damn, you all ready ready to take it like a slut." He whispers in your ear as his fingers work against your prostate. Yo just moan in assent, not having long to wait as you feel his fingers slide out and his cock slides in, his hands moving to your hips as you steady yourself against the wall lest you fall on the slick shower floor.<br>
<br>
He's pounding away in your ass when another cock appears in front of you. You don't even bother to look up to see who it belongs to, hungrily sucking away as more men appear out of the mists of the steamy shower, your hands soon both occupied as you become the centre of an impromptu shower gang-bang.<br>
<br>
You lose count of how many loads you've taken, but it's at least half a dozen by the time you run out of suitors, your spent partners finishing up by giving you a VERY thorough scrubbing<<if setup.getItemFromType("plug") != "">> even going to far as to helpfully lock in their juices by sliding the plug back into your ass<</if>>.<br>
<br>
Feeling a bit weak in the knees you take a bow before heading for the locker-room to change.
<<else>>
<<if $fetish.get_raped>>
You try to demure but you don't have have much control as you are suddenly pressed against the wall of the shower, the man's hot breath on your neck, his hot... other thing pressed against your rear.<br>
<br>
"See, That ain't gonna work for me - you come on like that, and well... it just ain't fair to a fella not to close the deal." <br>
<br>
<<if setup.getItemFromType("plug") != "">>
You gasp as he pulls the plug out of your ass, feeling it bounce on the floor against your foot as he slides his cock in between your cheeks.<br>
<br>
<</if>>
With a strong thrust he impales your rear hole. The flowing water hides your tears as he rapes you, pounding you up against the wall until he cums with a grunt and he lets you slide to the floor, his cum leaking out of your ass as he walks away.<br>
<br>
Waiting for your pounding heart to come back under control you
<<if setup.getItemFromType("plug") != "">>
shove your plug back into your worn and used ass
<</if>>
and stagger back to your feet, trying your best to clean up before heading back to the locker-room, feeling dirty and used.
<<else>>
Blushing at the offer you accept the slippery soap but shake your head as you quietly return to scrubbing yourself clean. Your "helpful" new friend shrugs and walks away.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_gym_lockerroom_men_post" "Back to the locker-room." 60>>]
</div>/*#
#desc: calculate and display dreams
#status: FINISHED 0.3.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "...">>
<<if $roomchange==true>>
<<setScene>>
<<if !$scene.hasOwnProperty('dream')>>
<<set $player.timebased.triedtosleep=0>>
<<set $scene.dream = {}>>
<</if>>
<<if setup.getItemFromType("shoes") == "bed_heels">>
<<if !$inventory['bed_heels'].status.lock>>
<<manipulateItem $player $now 'bed_heels' 'lock' true>>
<</if>>
<</if>>
<<set $fallAsleep = setup.fallAsleep($player)>>
<<if $fallAsleep.reason == "sleepless_night">>
<<initRoom>>
<<moveTo "room_sleepless_night">>
<<elseif $fallAsleep.reason != "none">>
<<initRoom>>
<<moveTo "room_sleepless">>
<<else>>
<<if $player.makeup.template!="">>
<<set $player.makeup.messed = Math.min(100,$player.makeup.messed+25+Math.round(Math.random()*25))>>
<</if>>
<<set $scene.dream.dream = "">>
<<set $scene.dream.file = ''>>
<<set $scene.dream.file2 = ''>>
<<set $scene.dream.dream = setup.getDream($player)>>
<<set $scene.dream.wetdream = false>>
<<if ($scene.dream.dream != 'normal') && (setup.getItemFromType('cage')=="") && ($player.timebased.horny>=25) && (random(100)>75) >>
<<set $scene.dream.itemoverpenis = setup.checkTopBodySlot('penis','bottom')>>
<<set $player.timebased.horny = 0>>
<<if $scene.dream.itemoverpenis != "none">>
<<changeItemStatus $scene.dream.itemoverpenis 'cumsoaked' '["set",100]'>>
<</if>>
<<set $scene.dream.wetdream = true>>
<</if>>
<<switch $scene.dream.dream>>
<<case 'cage'>>
/%<<set $scene.dream.file = './images/scenes/scene_chastity.png'>>%/
<<set $scene.dream.file = './video/chastity_01.mp4'>>
<<case 'cum'>>
<<set $scene.dream.file = './video/swallow_cum_1.mp4'>>
<<default>>
<<set $scene.dream.file = './video/stormcloud.mp4'>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "Dream">>
<<include enterroom_hypnosis>>
<<initRoom>>
<<if $scene.dream.dream>>
<<createAnimatedBGR $scene.dream.file>>
<<else>>
<<if _file2 != ''>>
<<createBGR $scene.dream.file $scene.dream.file2>>
<<else>>
<<createBGR $scene.dream.file>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.dream.dream>>
<<case 'cage'>>
You wake up from a very long nightmare. You dreamt that you lost your girlfriend <<=setup.getNpcName('npc_exgirlfriend', 'first')>>, your job and your dignity to your new manager <<=setup.getNpcName('npc_manager', 'formal')>>, by being feminized... though, strangely enough, not against your will. But then you wake up and everything is okay. You're back in your comfortable flat, and your girlfriend lies next to you in bed, looking at you with an yearning glance. You know what to do. It's time to make her happy with your enormous <<getWordPenis $player>>.<br>
<br>
<<printThought $player "You know that's not true, your <<getWordMyPenis $player>> would have never satisfied her!" 40>><br>
<br>
You pull down your boxer shorts to reveal your <<glitchText "giant lovehammer">> ... your <<glitchText "normal sized penis">><br>
<br>
<<printThought $player "Don't lie to yourself!" 40>><br>
<br>
You pull up your pink, frilly sissy maid uniform to reveal crotchless lace panties, within which your <<getWordMyPenis $player>> sits nicely caged, like it's supposed to be. You cannot remember a time where your <<getWordMyPenis $player>> wasn't caged. It is always kept safe and locked since you're not going to use it to pleasure anyone else anyway.<br>
<br>
<<printThought $player "Now I remember. My sole purpose is to serve others. My own pleasure is not of importance." 40>><br>
<br>
This assertion echoes through your head as you fall to your knees, ready to serve all the men and women that appear in front of you, serve them like the little sissy whore you are. Your first customer unzips his pants, to reveal his <<getWordPenis $player>> already glistening with precum. He nods, indicating you to bend over and present your <<getWordAnus $player>>. You do as you are told and bend over, spreading your asscheeks, giving access to your eager and craving <<getWordAnus $player>>. You feel the tip of this giant <<getWordPenis $player>> pressing against your sphincter. With brute force and only his precum as lube he thrusts, pushing his way into your...
<<case 'cum'>>
You're back at the 2nd from the last toilet stall of the Usual Place. The location seems familiar and yet somehow different from your last visit. You're on your knees as you see a gloryhole appear a little bit above your head. And then a second one. And another one, each with a thick cock sticking through. While you're wondering where these gloryholes come from you realise that the door of the room is now a wall sprouting gloryholes of its own, surrounding you and closing you inside the room.
<br><br>
The holes started to leak thick, gooey, hot, strong smelling cum. Drops become a trickle. A trickle becomes a shower, and a shower becomes a torrent. You know what you <<glitchText "have to do">>. You know what you <<glitchText "want to do">>. If you don't want to drown in here.
<br><br>
You start licking the cum off the floor. At first you are tentative but the flow is unceasing so you speed up, licking faster, like it's the best thing you've ever had. Like you were close to dying of thirst, and cum was the only thing capable of saving you. You play with the cum on your tongue, savor its taste, relish its thickness, indulge its texture. You know your reason for being, is to be a cumbucket, a cumwhore. Your stomach is full and your bellybutton pops out and still you continue to lick and lick. Your belly starts to grow larger and larger. Before you realise you've licked every last drop of cum from the toilet floor. Your belly looks like you're 9 months pregnant. But you want more. You crave more. You need more.<br>
<br>
<<printThought $player "Please, I need more cum!" 40>><br>
<br>
And as if your prayers have been answered by a higher force, a giant 12 inch babymaker appears through the gloryhole before you. You try to reach out only to find your hands are tied behind your back. You cannot touch this yummy looking meat hammer. You know what to do. You lick your lips and shuffle forward, moving closer to the head, that is glistening with precum and part your lips. Your tongue seeks out its target with the precision of a surgeon. You are millimetres away from your destination, your destiny. Your purpose. You just need to...
<<case 'plug'>>
In your dreams you are bent over, your ass raised high in the air as someone fucks you. A hand on the back of your head pushes you down, keeps you from even looking back to see who it is that is plowing your ass. It could be a man, a woman, hell, you aren't even sure if it might be multiple people, the cock in your rear occasionally withdrawing fully only to plunge back in feeling slightly different.<br>
<br>
At first you try to struggle, but eventually just surrender to the feeling of the cock going in... and out... in... and out, your perception narrowing until all you can feel is your ass filled and fucked in a never-ending plowing.<br>
<br>
Blinking awake you find that you are holding onto the plug in your rear, rocking it back and forth with one hand in your sleep. Blushing you pull your hand away, the <<=setup.getItemTypeName('plug')>> seating back into your hungry hole. You try to ignore the delicious gaping, attempting not to think about the erotic pressure against your prostate...<br>
<br>
<<printThought $player "I wish someone was fucking me right now..." 40>><br>
<<case 'bondage'>>
/% note, position inspired by bondage_hogtie.gif %/
In your sleep, you dream. In your dreams, you find yourself unable to move. <<if setup.getTotalValue('bondage') < 7>>The feeling of helplessness is scary and you thrash around in your dream state to figure out what is going on.<<else>>You are used to the feeling of being restrained, enjoying the restrictive feeling of being figuratively bound in your own mind you try to figure out how you have been tied.<</if>><br>
<br>
Inspecting your situation you find that you are in a <<if setup.getTotalValue('bondage') > 15>>deliciously tight <<elseif setup.getTotalValue('bondage') > 10>>tight <</if>>hogtie.
<<if setup.getTotalValue('bondage') > 10>>
Your arms are encased in a tight leather armbinder, which is in turn attached by short links to your <<if setup.getTotalValue('heels') > 15>>ballet-boot equipped <<else>>pointed <</if>>and cuffed feet.
<<if setup.getTotalValue('bondage') > 15>>
Making your position even more severe position there is a taut strap running from the crown of your head to your ankles. Pulled very tight the result is that your head is pulled back, forcing you to look forward, your chest raised slightly off the ground. The leather straps that make up your head harness cover your head, a panel gag <<if setup.getTotalValue('penis') > 10>>with an internal pecker gag<<else>>with an internal pad<</if>> dangling ominously from the side of your face.
<</if>>
<<else>>
Your wrists and ankles are individually cuffed and then chained together. Although not painfully tight it is quite sufficient to render you helpless.
<</if>>
You look around as mirrors fade into existence around you, reflecting your image back at you to grant a view of your bound form from every angle.<br>
<br>
The sight of your <<if setup.getTotalValue('feminization') > 10>>feminine <<else>>helpless <</if>>bound form is <<if setup.getTotalValue('bondage') > 15>>extremely arousing <<elseif setup.getTotalValue('bondage') > 10>>arousing <<elseif setup.getTotalValue('bondage') > 5>>intriguing. the longer you stare at yourself, at the way the leather bonds press into your flesh and highlight your form the more curiosity becomes to arousal. <<else>>intimidating. Despite your fear you cannot help but look at yourself, marveling at how just a few pieces of leather is sufficient to render you helpless. The longer you stare the more fear turns to arousal.<</if>><br>
<br>
Straining experimentally against your bonds you find them quite secure, the best you can do is rock a bit and shuffle side to side. The movement causes you to grind against the ground under you, the friction combining with the sights surrounding you to have you very aroused. More and more enjoying your helpless situation your lips part in a soft moan.<br>
<br>
<<if setup.getTotalValue('bondage') > 10>><<printThought $player "Mmmm, being restrained feels so nice...">><<else>><<printThought $player "What, why am I dreaming of bondage?">><</if>>
<br>
In instant you find your opened mouth occupied, the initial separation of your jaw widened as your lips are spread around a gag. Biting down and looking at your reflection you find that your are now wearing
<<switch setup.getTotalValue('bondage')>>
<<case 1 2 3 4 5>>
a basic ball gag, the <<if setup.getTotalValue('feminization') > 10>>bright pink<<else>>classic red<</if>> ball framed by your lips, held in place by a single strap around your head.
<<case 6 7 8 9 10>>
a harness gag, a large bit occupying your mouth while leather straps run over and around your head to secure everything.
<<case 11 12 13 14 15>>
trainer gag holding a large ring gag between your teeth to spread your mouth wide and inviting. Leather straps run up over your head and under your chin for added security, there is no way you'll be spitting this out.
<<case 16 17 18 19 20>>
the panel gag that had hung so portentously from your head harness. Now it is pressed tight over your lips, its internal <<if setup.getTotalValue('penis') > 10>>dong filling your mouth, a squat simulacrum as the real thing you love so much. On reflex you quietly suck on it, wishing it<<if setup.getTotalValue('cum') > 10>>could serve you up some delicious cum.<<else>>was the real thing.<</if>><<else>>pad filling your mouth and stifling any sound you might make.<</if>>
<<default>>ERROR! bondage stat: <<=setup.getTotalValue('bondage')>> out of range!
<</switch>><br>
<br>
<<if setup.getTotalValue('bondage') > 10>><<printThought $player "Mmmm, a gag is just what I needed, being bound is the best.">><<else>><<printThought $player "What happened, how much more restrictive can this get?">><</if>><br>
<br>
The gags appearance utterly miraculous you look around but find no sign of anyone else, it is just you, alone with naught but your reflection. Your brief shock fades into arousal as you can do little save stare at your bound form and grind against the floor.<br>
<br>
<<switch setup.getTotalValue('bondage')>>
<<case 1 2 3 4 5>>
You cower in fear of additional restraints, though this somehow only makes you more aroused. Trying to move across the floor in a futile attempt to escape despite there being nothing around you save the unreachable mirrors.<br>
<br>
It isn't long before your struggles tire you out, though you find your arousal unaffected by your exhaustion.<br>
<br>
<<printThought $player "Why does being tied up make me feel... so good?">><br>
<<case 6 7 8 9 10>>
Despite your restrictive position and the mysterious, invisible force acting to make it moreso you can't help but be aroused by the combination of your restraints and seeing yourself in such.<br>
<br>
<<printThought $player "How can this feel so good? I wonder how this would feel in real life...">><br>
<<case 11 12 13 14 15>>
The gag filling your mouth is like the perfect cherry on your bondage Sunday. You waggle your tongue out past your ring gag spread lips <<if setup.getTotalValue('penis') > 10>>wishing a real cock would appear to thread through your forced-open face-hole.<<else>>enjoying the naughty paradox that is your helpless availability.<</if>><br>
<br>
<<if setup.getTotalValue('whoring') > 10>><<printThought $player "Hmmm, I wonder how a gag like this would be for when I'm working at the glory hole?">><<else>><<printThought $player "Mmmm, this is nice...">><</if>><br>
<<case 16 17 18 19 20>>
You are in heaven, the tight restraints near perfection in their restrictive embrace. Breathing through your nose you let out a gag-muffled moan, your eyes fluttering as you submit to the near totality of your bondage.<br>
<br>
The same invisible force that insert your gag returns again, a steep posture collar appearing around your throat to raise your chin even higher than the tight strap running from ankle to crown is already enforcing.<br>
<br>
<<printThought $player "Thank you.... Oh, I love this...">><br>
<<default>>ERROR! bondage stat: <<=setup.getTotalValue('bondage')>> out of range!
<</switch>><br>
<br>
Almost lost in your bound bliss you nearly don't notice when a blindfold slips over your face, plunging you into total, helpless darkness. Suddenly you hear the unmistakable click, click of stiletto heels approaching...
<<case 'heelslow'>>
You toss fitfully, the throbbing pain in your calves and fire from your arches through your toes, distracting you and keeping you from falling asleep. No matter how you kick the infernal footwear never budge, even clawing at the straps for relief budging them not a bit - you are locked in 'till morning.<br>
<br>
Whimpering in pain you flop around, trying to ignore your body from the waist down and get some sleep...
<<case 'heelsmid'>>
You toss fitfully, the strained ache from your knees down a constant torment. You know by now to even attempt to remove the heels before morning is useless so you don't even try. You swear you can feel your tendons shrinking, your body re-shaping itself around wearing steep footwear.<br>
<br>
Stretching out you turn over and try to sleep as best you can...
<<default>>
Strange dreams plague your sleep.
<<set _rng = random(0,8)>>
<<switch _rng>>
<<case 0>>
But you're unable to remember them in the morning.
<<case 1>>
You think you left your umbrella back at the train station, but a dragon-like creature always prevented you from going back since it's Tuesday, and everyone knows war is on Tuesday!
<<case 2>>
Not knowing where you are you ask a random stranger where you are, before you realise that the person is made of pudding. Of course, you remember, that it is rude to not taste them, but you forgot your spoon at home. "Too bad", you think, while staring at them longingly, unable to taste them.
<<case 3>>
There is a screaming sun on the horizon, right next to the moon, who looks oddly calm about the whole situation. You think about asking him how he keeps his cool, but he simply counters that question with "Did you just assume my gender?" You answer with "Yes." He states that he is just making sure, since it's not Tuesday.
<<case 4>>
You dream about driving. Backwards. It does not go well for you. Again.
<<case 5>>
You dream about driving. There is a good reason why you don't do that anymore.
<<case 6>>
You dream about walking. But you have wheels instead of legs. It does not end well for everyone else. Again.
<<case 7>>
You think dreams have hidden messages. Then you wake up.
<<case 8>>
You enter a long, dark room that resembles your bedroom. The lights don't work and there is an eerie atmosphere lingering. You move forward a few steps but as you turn around the door seems to be far, far away. You pass by a tent made of whipped cream, where your ex girlfriend <<=setup.getNpcName('npc_exgirlfriend', 'first')>> lays.<br>
<br>
"@@.npc_exgirlfriend;Don't go any further, only death awaits those who confront the ghost with the fly!@@"<br>
<br>
Not listening to her you advance further into the dark forest that used to be your bedroom. You see a glowing figure far in the distance, closing in fast.<br>
<br>
"@@.npc_barista;Behold, for I am the Ghost with the fly!@@", the Ghost proclaims, while circled by a single, small fly.
<</switch>>
<<if setup.getItemFromType("plug") != "" && setup.getTotalValue("anal") >= setup.getItemObjFromType("plug").effect.anal.level>>
<br><br>
Your ass so accustomed to being filled your plug no longer impacts your slumber.<<if setup.getTotalValue("anal") < 20>>.. perhaps a sign you could upgrade?<</if>>
<</if>>
<<if setup.getItemFromType("shoes") == "bed_heels" && setup.getTotalValue("heels") >= setup.getItemObjFromType("shoes").heels.difficulty>>
<br><br>
If anyone were watching they would see you sleeping quite adorably. Curled up on your side your feet are harshly pointed by your heels but you are used to it, the severe angle almost comfortable and no longer impacting your slumber.
<</if>>
<</switch>>
<br><br>
[<<moveTo "room_sleep_time" "Continue to sleep..." 0 "<<set $player.cutscene.lockinventory = false>><<setScene>><<set $scene.night_sleep=true>>">>]
</div>/*#
#desc: dreamless sleep + restlessness
#status: FINISHED 0.3.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "...">>
<<if $roomchange==true>>
<<set $player.timebased.triedtosleep+=1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', $fallAsleep.time)>>
<<set $now to setup.sleepMin($player,$now,$fallAsleep.time,true)>>
<</if>>
<<set $player.location to "Sleepless">>
<<include enterroom_hypnosis>>
<<initRoom>>
<<createAnimatedBGR "./video/sleepless.mp4">>
<div id="invframe" class="scrolltext">
You toss and turn sleeplessly in your king size bed, without being able to find any sleep.
<<switch($fallAsleep.reason)>>
<<case 'sissy'>>
You try to fall asleep but your frilly, sissy sleepwear proves a distraction.<br>
<br>
<<printThought $player "Who'd have thought something could be TOO soft to sleep in?">>
<<case 'female'>>
You try to fall asleep but your sleepwear proves a distraction.<br>
<br>
<<printThought $player "This being designed for girls makes it feel weird, after all I'm a dude, right?">>
<<case 'male'>>
You try to fall asleep but your masculine night clothes rub against you in a distracting manner.<br>
<br>
<<printThought $player "These clothes feel strangely rough, how did I never notice this before?">>
<<case 'naked'>>
You try to fall asleep but your nakedness proves to be a distraction.<br>
<br>
<<printThought $player "The sheets are really irritating, I should really dress properly for bed.">>
<<case 'horny'>>
You try to fall asleep but you are just too horny to drift off.
<<case 'cage'>>
The <<=setup.getItemName(setup.getItemFromType('cage'))>> encasing you <<getWordMyPenis $player>> makes it impossible for you to find a comfortable position to sleep in.
<<if $fallAsleep.chance < 33>>
Maybe you should simply try to fall asleep again, you're almost used to it...
<<elseif $fallAsleep.chance < 66>>
Maybe you should think about a different solution, you're still not used to it <<glitchText "as much as you'd like to be...">>
<<elseif !setup.checkItemOwned(setup.getItemObjFromType('cage')['lockable'][1])>>
Maybe giving up the key was a mistake, you're not used to it at all; unfortunately you have little alternative but to lie here and suffer.
<<else>>
Maybe you should take it off over the night, you're not used to it at all. This way you're not getting any sleep at all.
<</if>>
<br><br>
<<printThought $player "If I'm going to sleep like this I need to embrace total submission - or learn to love pain and restraints.">>
<<case 'plug'>>
The <<=setup.getItemName(setup.getItemFromType('plug'))>> in your <<getWordAnus $player>> makes it impossible for you to find any position to sleep in.
<<if $fallAsleep.chance < 33>>
Maybe you should simply try to fall asleep again, you're hardly feeling the plug anymore.
<<elseif $fallAsleep.chance < 66>>
Maybe you should think about a different solution, you're still not used to it <<glitchText "as much as you'd like to be...">>
<<else>>
Maybe you should remove it over the night, you're not used to it at all. This way you're not getting any sleep at all.
<</if>>
<</switch>>
<br><br>
[<<moveTo "room_bedroom" "Stand up again." 0 "<<set $player.cutscene.lockinventory = false>>">>]<br>
[<<moveTo "room_dreams" "Try to fall asleep again." 0>>]
</div>/*#
#desc: spent the entire night tossing and turning
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "...">>
<<if $roomchange==true>>
<<set $player.timebased.triedtosleep+=1>>
<<set $now to setup.sleepClock($player,$now)>>
<</if>>
<<set $player.location to "Bedroom">>
<<include enterroom_hypnosis>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
Your alarm blares and you squint in annoyance.<br>
<br>
<<printThought $player "Morning, already? But I never fell asleep! Maybe I need to do something about my sleeping arrangements...">><br>
<br>
[<<moveTo "room_wake_up" "Get out of bed." 0 "<<set $player.cutscene.lockinventory = false>><<set $scene.night_sleep=false>>">>]
</div>/*#
#desc: attempt to read employment contract
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "contract.pdf">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<if $player.flags.contract.read<=3>>
<<set $readcontractTime = Math.round(Math.random()*1200 + 2400)>>
<<else>>
<<set $readcontractTime = 20*60>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.contract.read == 0>>
You open the attachment of the email from your new boss, <<=setup.getNpcName('npc_manager', 'formal')>>. It starts off like any normal contract with work-time regulation, vacation, how overtime is to be handled, and things like that. But after page three, when the legal bindings for the non-disclosure agreement begins, you're not so sure that this is even written in English. You have trouble grasping even the "simplest" terms after a while, since everything seems to be written in this weird business legalese, using way too many complicated words and bizarrely formal and convoluted syntax. You shake your head. You like your text simple and easy to read, like source code. You suppose this is what you get for sleeping during business classes at school.
<<else>>
You open the cursed document yet another time, even though you really don't want to. Are you sure you want to incur this mental pain again?
<</if>>
<br><br>
<<if $player.timebased.fatigue>100>>
You feel too worn out to read any more now. Maybe when you're more rested.
<<elseif $player.timebased.stress>50>>
This document reminds you too much of work, and you already feel stressed enough. Maybe read it once you feel better?
<<elseif $player.timebased.horny>$player.penis.erection>>
Your <<getWordMyPenis $player>> is jumping up and down with excitement. Not because of the document, but it distracts you enough to make untangling the contract impossible.
<<else>>
[<<moveTo "attachment_read_contract_2" "Force your way through the whole document!" $readcontractTime>>]<br>
<<if $npc_manager.stagevalues[2].femalesecretary != "">>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
[<<moveTo "attachment_read_contract_3" "Focus specifically on trying to find information about uniform requirements." $readcontractTime>>]<br>
<<else>>
<<if setup.getWillpower($player)>0>>
[<<moveTo "attachment_read_contract_3" "The contract is, like, hard, but maybe if you just focus on clothes stuff you can force yourself to read it?" $readcontractTime "<<spendWillpower $player 1>>">>] <<hint $options "Your ditzyness means that this level of focus takes an act of willpower.">><br>
<<else>>
[@@.link_locked;You presently lack the willpower to put aside your ditzy tendencies and focus specifically on researching your uniform requirements.@@]
<</if>>
<</if>>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]<br>
</div>/*#
#desc: read employment contract
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "contract.pdf">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $attachment_read_contract_2_onlineUniversity = false>>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
<<set $player.flags.contract.read += 1>>
<<if setup.getTotalValue('smart')<6>>
<<applyExperience 'smart' 6 'very' $ALONE>>
<<set $player.timebased.stress += Math.max(0,(10-setup.getTotalValue('smart')))>>
<</if>>
<<if setup.getTotalValue('smart')>=10>>
<<set $player.flags.understoodcomplete = true>>
<</if>>
<<if setup.getTotalValue('smart')>=7>>
<<set $player.flags.contract.understoodpartial = true>>
<</if>>
<<if !$player.flags.onlineUniversity >>
<<set $player.flags.onlineUniversity = true>>
<<addPopUpText 'New Link "R&D Online University" added'>>
<<set $attachment_read_contract_2_onlineUniversity = true>>
<<addSearch $computer 'R&D Online University' 'room_online_university_start'>>
<</if>>
<<else>>
<<applyExperience 'bimbofication' 5 'normal' $ALONE>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-setup.getTotalValue('bimbofication'))>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue('bimbofication')>setup.getTotalValue('smart')>>
Wow. Trying to make sense of that mess really made your head hurt. You tried your best to understand the contract, constantly drawing on different resources on the net to clarify things. At least that was your original plan, but it took your mind only a while to drift off and pursue other matters of importance, like cute cat videos and the alizon homepage with many, many things you cannot afford at the moment, but you don't intend to be very petty minded about such matters, and after a while forgot what you were doing in the first place anyway.<br>
<br>
<<printThought $player "Who cares for that stupid document anyway? Let's do something fun!">>
<<elseif setup.getTotalValue('smart')<7>>
<<switch $player.flags.contract.read>>
<<case 1>>
Wow. That really made your head hurt. You tried your best to understand the contract, constantly drawing on different resources on the net to clarify things. And even though you are not even close to understanding the whole document, you've managed to stay focused the whole time and learned many things about company organisation, which might come in handy with your job. Still, the whole ordeal was very stressful for you. It's like this business English is trying to bend the words you're reading, while you're looking at them. It's like a maze with no exit, and after a while your head simply starts to hurt. Maybe you should try this again later.<br>
<br>
<<printThought $player "This is getting me nowhere... Signing this monster was a premature decision!">>
<<case 2>>
Your second session with the document does not lead you anywhere as well. Armed with new knowledge you still gain a devastating defeat at the hand of whoever wrote this infernal piece of paper. Still, you're not about to give up.... yet. One more time, and you're sure, you'll crack it open.<br>
<br>
<<printThought $player "Come on! This is getting me nowhere... What the fuck does indemnification mean? Amends? According to this page it means amends. Why the fuck can't they use the fucking word amends?">>
<<case 3>>
At your third session with the document, you finally cracked it. Your will to continue that is. It's broken, gone, dead. You are unable to understand anything beyond a couple of random paragraphs where they forgot the business encryption. Looking through the document makes you realise one thing. The people who wrote this are way smarter then you are. Maybe than you ever will be. And way more malicious. It's time to change this. The "being smart" part, not the part about being malicious. You tried to play a blackguard once in D&D in high-school. Didn't work out that well for you. Anyway, you could look for an online course to upskill your smarts. Somehow anticipating your needs you notice a banner ad for "R&D Online University" on the side of your screen. You've vaguely heard of it before, it should be a good place to improve your mind and skills.<br>
<br>
<<printThought $player "I really need to up my game to figure out what I've gotten myself into.">>
<<default>>
Reading this more often will only lead to more headaches, but won't give you the answers you seek. Maybe you should spend your time trying to hone your intellect instead of staring at the cursed letters of this infernal document.<br>
<br>
<<printThought $player "I really need to up my game to figure out what I've got myself into.">>
<</switch>>
<<elseif setup.getTotalValue('smart')>=12>>
The efforts you've put into the hours of learning and honing your intelligence have finally paid off. Partially. You're still working on understanding the whole document, but you managed to decrypt at least some sections. From what you can tell, the restriction on what to wear are still in place, at least for male employees. Wait. No, that's not right. The way it's written, it is for male type clothing, but the gender of the employee doesn't actually matter. If you decide to wear a suit, you have to go for the company standard. Female clothing on the other hand is a lot less restrictive. Like barely restrictive at all. You can basically wear whatever you want, as long as it is not too provoking, and the definition of "too provoking" is liberal to say the least. So as long as your breasts are hidden beneath a bra, and that bra is partially covered, you're safe up top. Skirts can be really short, more like bigger belts. Heels can be of any size, as long you're able to "safely" walk in them.<br>
<br>
What you find particularly strange (and concerning) is that the contract goes out of its way to specify that your superior is allowed to overwrite practically any portion of the dress code. Both in a more restrictive or less restrictive manner. As stated in the contract, this can, and should, be used for disciplinary measures "when deemed necessary and appropriate, any concerns should be checked with HR for approval." <br>
<br>
<<printThought $player "Wait, <<=setup.getNpcName('npc_manager', 'formal')>> is in charge of HR! She could approve anything, in theory. Man, I really hope she doesn't order me to work naked...">><br>
<br>
As for the disciplinary measures, they're in here as well. You do not understand everything the document says about them, but it seems like it is <<=setup.getNpcName('npc_manager', 'formal')>> right to invoke them if she deems them necessary. Once again it spells out that "novel" techniques should be cleared with HR... but that hardly matters for your case. Not a lot you can do there, if you want to keep the job.<br>
<br>
A final chapter that catches your attention is the one on "employee development." It seems your superior can arrange for supplemental or re-education courses for the employee depending on which of their skills is in need for improvement or if said skill would benefit the employee's "long-term development plan at the company." But these courses are not for free. If the employee decides to take on this course, they must remain at the company for a minimum period of time... you're unsure how long exactly. It seems to depend on the kind of course. And if the employer-employee relationship is terminated for any reason at all, the company can mandate a "re-purpose of material" until the debts are amortised. Your eyes start to glaze over at that point, seems like you still need to get better at navigating legalese to figure everything out.
<<elseif setup.getTotalValue('smart')>=7>>
Reading... no, rather finally understanding this document makes you realise something. How royally fucked you are right now.
<</if>>
<br><br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div>/*#
#desc: read employment contract
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "contract.pdf">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<if setup.getTotalValue("smart") >= 12>>
<<set $player.flags.uniform_upgrade.fully_understood_contract = true>>
<<if !$npc_manager.flags.can_ask_uniform_stipend>>
<<set $npc_manager.flags.can_ask_uniform_stipend = true>>
<<addNpcTheme 'npc_manager' 'aslut' 'theme_manager_uniform_stipend'
0
'event_uniform_stipend_1'
true
'theme_manager_uniform_stipend_header'
>>
<<gainWillpower $player 1>>
<</if>>
<<set $player.flags.uniform_upgrade.fully_understand_contract = true>>
<<elseif setup.getTotalValue("smart") >= 7>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') || $player.flags.uniform_upgrade.aslut_enrollment_refused>>
<<set $npc_manager.flags.can_ask_uniform_stipend = true>>
<<set $player.timebased.stress += Math.max(0,(10-setup.getTotalValue('smart')))>>
<<elseif !$npc_manager.flags.can_ask_uniform_stipend>>
<<set $npc_manager.flags.can_ask_uniform_stipend = true>>
<<gainWillpower $player 1>>
<<addNpcTheme 'npc_manager' 'aslut' 'theme_manager_uniform_stipend'
0
'event_uniform_stipend_1'
true
'theme_manager_uniform_stipend_header'
>>
<</if>>
<<elseif setup.getTotalValue('smart')<6>>
<<applyExperience 'smart' 5 'normal' $ALONE>>
<<set $player.timebased.stress += Math.max(0,(10-setup.getTotalValue('smart')))>>
<<elseif !$player.flags.onlineUniversity>>
<<set $player.flags.onlineUniversity = true>>
<<addPopUpText 'New Link "R&D Online University" added'>>
<<set $attachment_read_contract_2_onlineUniversity = true>>
<<addSearch $computer 'R&D Online University' 'room_online_university_start'>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.understoodcomplete>>
While you can technically understand the entire contract it's so long and convoluted remembering anything in particular isn't worth it. You're smart enough to know that, when it comes to legalese this dense, if you want to know something specific you need to review the actual text. Now that you have a specific purpose in mind you can really focus in on what's the story with your uniform.
<<elseif $player.flags.contract.understoodpartial>>
You somewhat understand the contract as a whole, but for particulars you need to re-read the text, and that means hunting down the section on uniform requirements.
<<else>>
Reading the contract as a whole is still well beyond your abilities... but perhaps if you focus on just the section on uniform requirements you'll have better luck?
<</if>>
<br><br>
<<if setup.getTotalValue('smart') < setup.getTotalValue('bimbofication')>>
It took an act of will, but you are able to temporarily put aside your desire to think of nothing but sex and other such fun things and attempt to read, and understand, part of the document.<br>
<br>
<</if>>
<<if setup.getTotalValue("smart") >= 12>> /* unqualified success */
Legalese is becoming as easy to read as normal writing or code used to be and you zero right in on the section of the document detailing uniform and dress code requirements. Reading things thoroughly confirms that your "uniform" can be just about anything that your superior decides to require. Reading further you perk up at a clause that states that changes to the "basic" uniform requirements entitle the employee to a compensatory bonus, only for that momentarily excitement to be dashed when you untangle the following clauses that lay out how this is less a perk than another trap.<br>
<br>
The "bonus" is actually legally considered a stipend and must be spent on clothing for work according to managerial specification. Moreover, merely accepting the stipend counts as enrollment in an "Allotment for Sissy Learning and Uniform Transformation" career development programme. Agreeing to such brings automatic consent for a contract extension AND making the employee further liable for any breach of contract so as to require a payback of triple the bonus on top of any other penalties for breach of contract.<br>
<br>
<<if $npc_manager.stage < 3>>
Of course this is all a bit useless to you at present given that all of these "perks" are only available to full-time, non-probationary secretaries but... maybe in the future?
<</if>>
<<elseif setup.getTotalValue("smart") > 7>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') || $player.flags.uniform_upgrade.aslut_enrollment_refused>>
With the added details provided by <<=ps(setup.getNpcName('npc_manager', 'first'))>> explanation of the A-SLUT programme you are able to track down the requisite clause and confirm that everything she described really was part of your "agreement" from the very begining.<br>
<br>
<<printThought $player '<<if setup.getTotalValue("submission") >= 10>>It is so wonderful she thought ahead so that everything <<else>>Everything <</if>>I do brings brings me even deeper into her clutches.'>>
<<else>>
Your studies have paid off. While you still don't understand the entirety of the dense legal document you are at least able to zero in on the section dealing with uniform requirements. Reading methodically you start getting excited; if you are understanding Section II, Subsection 3, Clause b correctly any change from the "basic" uniform entitles the employee to enrollment in a special "career advancement" programme and, more importantly, a monetary bonus. There seems to be some stuff about having to repay some portion if you break contract, plus some tax implications of receiving it, but that shouldn't really matter, the fact is, you're owed money! You fist-pump in excitement, finally you are getting ahead of things; discovering this loophole has you more excited than beating a hard video game boss for the first time!
<</if>>
<<else>>
It takes everything you have just to trace your way to the section of the contract dealing with uniform requirements. Unfortunately the mere equivalent of doing an index lookup is your limit, after that it's all just lawyer-speak. You'll need to better yourself if you're going to puzzle this out. Perhaps spending some time studying online could help?
<</if>>
<br><br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div>/*#
#desc: attempt to read psychiatrist nda
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $readcontractTime = Math.round(Math.random()*600+600)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You open the attachment of the email sent to you by <<=setup.getNpcName('npc_psychiatrist', 'first')>>. It starts like a usual NDA, defining both parties, in this case you the participant and the "VR Neurolinguistic Programming Task Force", lead by <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>. Then the usual follows with declaring that both parties have a mutual goal during the duration of this contract, and that there might be an exchange of confidential information. But what follows is too much for you. A ton of neuroscience buzzwords bombard you along with even more scientific terms you didn't even know exist.<br>
<br>
<<if $player.flags.contract.read>>
<<printThought $player "It's just like that stupid contract all over again!">>
<<else>>
<<printThought $player "What the... why does this have to be so complicated!">>
<</if>>
<br><br>
<<if $player.timebased.fatigue>100>>
You feel too worn out to read it now. Maybe when you're more rested.<br><br>
<<elseif $player.timebased.horny>$player.penis.erection>>
Your <<getWordMyPenis $player>> is jumping up and down with excitement. Not because of the document, but it distracts you enough to make focusing on the complex contract impossible.<br><br>
<<else>>
[<<moveTo "attachment_read_nda_2" "Read it anyway." $readcontractTime>>]<br>
<</if>>
[<<moveTo "attachment_sign_nda" "Sign it and send it back." 60>>]<br>
[<<moveTo "room_computer_email" "Close this Email." 30>>]<br>
</div>/*#
#desc: sign psychiatrist nda without reading
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $npc_psychiatrist.flags.signednda = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You decides it's too much of a hassle to read this document. Too many scientific sounding words, where you have no idea what they could mean after about the middle of page 5. You scroll to the end and put in your digital signature and return it to <<=setup.getNpcName('npc_psychiatrist', 'first')>>.<br>
<br>
<<printThought $player "Well, since I've signed it I could call her and arrange a new appointment. Who knows, maybe it'll be as good for my psyche as she describes it.">><br>
<br>
[<<moveTo "room_computer_email" "Close this Email." 30>>]<br>
</div>/*#
#desc: read psychiatrist nda
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
<<set $attachment_read_nda_2_read = true>>
<<else>>
<<set $attachment_read_nda_2_read = false>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You try to force yourself reading the document from start to finish, but are unable to do so.
<<if $attachment_read_nda_2_read>>
<<if $player.flags.contract.read>>
Unlike a certain contract, this time it is a lack of expertise.
<<else>>
You simply lack the knowledge to understand this.
<</if>>
You haven't taken a psych or other traditional scientific class since freshman GE's.... which is nowhere close to what you would need to understand this thing and it's not like you can simply research this on the Net. This is some pretty serious neuro science ... stuff. You focus so hard on the subject, that after a while the letters seem to blur... Looks like you're at your limit.
<<else>>
You are simply too unfocused to even grasp a little bit of what's going on. After a while you catch yourself just scrolling the document up and down, trying to line up the mouse cursor with points and paragraphs and stuff like that. You let your mind drift, and after a while it the letters seem to blur.
<</if>>
<br><br>
[<<moveTo "attachment_read_nda_3" "Continue." 0>>]<br>
</div>/*#
#desc: psychiatrist nda brainwashing
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Relax... Obey... Be passive... Consent...">>
<<if $roomchange == true>>
<<set $sceneVisibility = $ALONE>>
<<applyExperience 'penis' 5 'insignificant' $ALONE>>
<<applyExperience 'cum' 7 'insignificant' $ALONE>>
<</if>>
<<include enterroom_hypnosis>>
<<initRoom>>
<<set $player.location to "Computer...?">>
<<createAnimatedBGR "./video/hypnosis_nda_01.mp4">>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">Relax...</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.5s;">Obey!</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.0s;">Be passive...</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 1.5s;">Consent!</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.0s;">Stare...</span><br><br>
</span>
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 2.5s;">Accept!</span><br>
</span>
<br>
<span class="text_hypnosis_1"
style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought $player "What's going on?">></span>
<br>
<span class="text_hypnosis_1"
style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought $player "Why can't I look away?" -10>></span>
<br>
<span class="text_hypnosis_1"
style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought $player "It's so hard to focus..." -20>></span>
<br>
<span class="text_hypnosis_1"
style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought $player "Am I going to..." -30>></span>
<br>
<br>
<span id="hypnosis_1_6_continue" style="visibility: hidden;">
[<<moveTo 'attachment_read_nda_4' 'Obey...' 2700>>]
</span>
<<makeVisible 'hypnosis_1_6_continue' 15>>
/%<<videoLoop>>%/
</div>/*#
#desc: wake up after psychiatrist nda brainwashing having signed it
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $npc_psychiatrist.flags.signednda = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You suddenly wake up. Seems like you must have dosed off. You take a closer look at your computer screen. Looks like you've signed and returned the NDA to <<=setup.getNpcName('npc_psychiatrist', 'first')>>.<br>
<br>
<<printThought $player "Strange, I don't recall doing that at all. Maybe that nap messed with my memory. Screw it, I'm not going to read that thing again! Well, since I've signed it I could call her and arrange a new appointment. Who knows, maybe it's as good for my psyche as she describes it.">><br>
<br>
[<<moveTo "room_computer_email" "Close this Email." 30>>]<br>
</div>/*#
#desc: attempt to read psychiatrist nda after having signed it
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $readcontractTime = Math.round(Math.random()*600+600)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You open the attachment of the email sent to you by <<=setup.getNpcName('npc_psychiatrist', 'first')>>. It starts like an usual NDA, defining both parties, in this case you the participant and the "VR Neurolinguistic Programming Task Force", lead by <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>. Then the usual follows with declaring that both parties have a mutual goal during the duration of this contract, and that there might be an exchange of confidential information. But what follows is too much for you. A ton of neuroscience Buzzwords are thrown at you, combined with scientific terms, you didn't even know exist.<br>
<br>
<<if $player.flags.contract.read>>
<<printThought $player "It's just like that stupid contract all over again!">>
<<else>>
<<printThought $player "What the... why does this have to be so complicated!">>
<</if>>
<br><br>
Since you've already signed the document you see no reason to subject yourself any longer to this mental torture.<br>
<br>
[<<moveTo "room_computer_email" "Close this Email." 30>>]<br>
</div>/*#
#desc: play games at home selection screen
#status: FINISHED 0.4.0.0
#*/
<<set _playGames = false>>
<<if (setup.getTotalValue('bimbofication')-setup.getTotalValue('smart')>5)>>
<<set _playGames = true>>
<<elseif !setup.isWorkDay($now)>>
<<set _playGames = true>>
<<elseif ((setup.getUTCDay($now)==5) && (getUTCHours($now)>=$player.work.time_friday.hour)) || ((setup.getUTCDay($now)!=5) && (getUTCHours($now)>=$player.work.time_evening.hour))>>
<<set _playGames = true>>
<<elseif $player.work.sendhome>>
<<set _playGames = true>>
<</if>>
<<set $player.inside = true>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if _playGames>>
<<if $player.work.sendhome>>
<<printThought $player 'Well, since I was sent home I might as well spend some time with my games...'>><br>
<<else>>
<<printThought $player 'So, what should I play today?'>><br>
<</if>>
<br>
[<<link "Play something that requires skill!">>
<<set $player.timebased.stressmulti = 0.2>>
<<set $dTime = {}>>
<<set $dTime.timeMulti = 60>>
<<set $dTime.text = "How long do you wish to play?">>
<<set $dTime.startTime = "60">>
<<set $dTime.changeTime = 10>>
<<set $dTime.minTime = 10>>
<<set $dTime.maxTime = 240>>
<<set $dTime.followup = "room_play_games_skill">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
[<<link "Play something that tests your savvy!">>
<<set $player.timebased.stressmulti = 0.1>>
<<set $dTime = {}>>
<<set $dTime.timeMulti = 60>>
<<set $dTime.text = "How long do you wish to play?">>
<<set $dTime.startTime = "60">>
<<set $dTime.changeTime = 10>>
<<set $dTime.minTime = 10>>
<<set $dTime.maxTime = 240>>
<<set $dTime.followup = "room_play_games_smart">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
[<<link "Play something relaxing!">>
<<set $player.timebased.stressmulti = -0.5>>
<<set $dTime = {}>>
<<set $dTime.timeMulti = 60>>
<<set $dTime.text = "How long do you wish to play?">>
<<set $dTime.startTime = "60">>
<<set $dTime.changeTime = 10>>
<<set $dTime.minTime = 10>>
<<set $dTime.maxTime = 240>>
<<set $dTime.followup = "room_play_games_relax">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<<else>>
<<printThought $player 'I really should make myself ready for work...'>><br>
<</if>>
<br>
[<<moveTo "room_livingroom" "Nope, no playing games today.">>]
</div>/*#
#desc: play hotties game
#status: FINISHED 0.4.0.0
#*/
<<set $player.timebased.stressmulti = 0>>
<<set $player.inside = true>>
<<set $player.flags.hotties_game.times_played += 1>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You start up Heroes of Time: The Infinite Eternal Struggle.
<<if $player.flags.hotties_game.times_played == 1>> /* first time */
The game boots up for the first time to show a quick-cut montage of what you assume are the various selectable player characters. Though sharing an overall artistic style each character is distinct, and you find yourself picking out which ones are tanks, DPS and support. It is only when the actual game logo appears as HOTTIES! that you realise that every single character was.... distinctly feminine.<br>
<br>
Realizing that the somewhat... suggestive logo is an acronym for the mouthful that is Heroes of Time: The Infinite Eternal Struggle you click through to the character select screen, confirming your initial assessment that, while a couple of the characters may have male names the actual appearances ranges from "androgynous" to VERY feminine, though that femininity is spread across a large range of bodytypes.<br>
<<else>>
The familiar HOTTIES! logo scrolls across the screen and you click through to the main menu.<br>
<</if>>
<br>
<<if _TODOfuture >> /* alex available */
Looking at your friends list it appears that <<=setup.getNpcName('npc_technician', 'first')>> is online, and she is already poking you and asking if you want to play together.<br>
<br>
[<<moveTo "room_play_games_hotties_technician" 'Play a game with <<=setup.getNpcName("npc_technician", "first")>>' 7380 "<<set $player.timebased.stressmulti = -0.2>>">>]<br>
<<else>>
Checking your friends list you do not see <<=setup.getNpcName('npc_technician', 'first')>> online.<br>
<br>
[@@.link_locked;<<=setup.getNpcName('npc_technician', 'first')>> isn't online to play with you@@]<br>
<</if>>
[<<moveTo "room_play_games_hotties_pug" "Play with a random pick-up group" 7380 "<<set $player.timebased.stressmulti = 0.3>>">>]
</div>/*#
#desc: play hotties with technician
#status: FINISHED 0.4.0.0
#*/
<<set $player.timebased.stressmulti = 0>>
<<set $player.inside = true>>
<<applyExperience 'gaming' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'smart' 3 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $player.flags.hotties_game.times_played_alex += 1>>
/* _TODOfuture: <<set $player.flags.hotties_game.wins += 1>> */
/* _TODOfuture: <<set $player.flags.hotties_game.wins_alex += 1>> */
<<addNpcTheme 'npc_technician' 'gaming' 'theme_technician_gaming_0'
0
'event_technician_hotties_1'
false
'theme_technician_gaming_header'
>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_technician', 'first')>> team up to play a few rounds of HOTTIES! She is obviously way better than you are but by following her instructions you turn out to make a pretty good team, finishing the session with a positive record including several exciting saves and clutch plays.<br>
<br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
/* _TODOfuture - expand this in future release! */
</div>/*#
#desc: play hotties with randos
#status: FINISHED 0.4.0.0
#*/
<<set $player.timebased.stressmulti = 0>>
<<set $player.inside = true>>
/* _TODOfuture - values */
<<applyExperience 'gaming' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'smart' 3 'normal' $SEEN_STRANGER>>
<<if _TODOfuture>> /* alex was available to play */
/* _TODOfuture - triggered event of her chiding you for not playing with her - event_technician_hotties_1_no */
<</if>>
/* _TODOfuture: <<set $player.flags.hotties_game.wins += 1>> */
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You jump into the public queue to play a few rounds of HOTTIES. Even with the help of matchmaking you feel quite out of your depth playing against far more experienced opponents. Meanwhile teamchat ranges from "tolerable" to "offensive," nobody seeming particularly interested in helping you out or cutting you any slack whenever you make a mistake.<br>
<br>
Though you have sharpened your reflexes a bit in the course of play the overall experience bordered more on tiring than relaxing, you feel like you would have a lot more fun if you had a friend to play alongside.<br>
<br>
[<<moveTo "room_livingroom" "Well, that was stressful">>]
/* _TODOfuture - expand this in future release! healslut, hooo! */
</div>/*#
#desc: play "skill" game
#status: FINISHED 0.4.0.0
#*/
<<set $player.timebased.stressmulti = 0>>
<<set $player.inside = true>>
<<set _xp = Math.ceil(5*($dTime.startTime/60))>>
<<applyExperience 'dexterity' 3 _xp $ALONE>>
<<set $player.timebased.stressmulti = 1>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You start up your Gamestation VI and start the incredible difficult Game "Opaque Souls", where every enemies has the will to live as much as you do and the desire to destroy you in many creative ways. You sometimes simply want to test your skill of throwing the controller through the room, but then you remember it's just a game. And a pretty good one as well, once you calm down and learn its secrets. Focusing and doing your best has you learning a lot about reflexes and micromanagement.<br>
<br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: play "smart" game
#status: FINISHED 0.4.0.0
#*/
<<set $player.timebased.stressmulti = 0>>
<<set $player.inside = true>>
<<set _xp = Math.ceil(5*($dTime.startTime/60))>>
<<applyExperience 'smart' 3 _xp $ALONE>>
<<set $player.timebased.stressmulti = 1>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You start up your Gamestation VI and start up the adventure "Star Quest VII: Return to Roman Numerals." A game of wits where you really need all your gray matter to solve riddles and help Ruthe Wilco to overthrow StarCon, the galactic government and return the golden mob to the centre of the universe before the Great Old Ones return to this side of the plane of existence. Unlike classic adventure games, this one has random generated content, so you have to figure a different way to save the known universe every time. You like the time where you proposed to C'thulhu the best. You feel smarter afterwards.<br>
<br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: play "relaxing" game
#status: FINISHED 0.4.0.0
#*/
<<set $player.timebased.stressmulti = 0>>
<<set $player.inside = true>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Staring up your Gamestation VI, you choose to play "Animal Town Mayor", and simply spend your time relaxing with the strange, but likeable, cast of strange furry characters who chose you, a total stranger and human, to be their mayor.<br>
<br>
[<<moveTo "room_livingroom" "Well, that was relaxing!">>]
</div>/*#
#desc: links for rooms in your flat
#status: FINISHED 0.5.0.0
#*/
<<if $player.location == "Bathroom">>
[Bathroom]
<<else>>
[<<moveTo "room_bathroom" "Bathroom" 20>>]
<</if>>
<<if $player.location == "Bedroom">>
[Bedroom]
<<else>>
[<<moveTo "room_bedroom" "Bedroom" 20>>]
<</if>>
<<if $player.location == "Foyer">>
[Foyer]
<<else>>
[<<moveTo "room_foyer" "Foyer" 20>>]
<</if>>
<<if $player.location == "Living Room">>
[Living Room]
<<else>>
[<<moveTo "room_livingroom" "Living Room" 20>>]
<</if>>
<<if $player.location == "Kitchen">>
[Kitchen]
<<else>>
[<<moveTo "room_kitchen" "Kitchen" 20>>]
<</if>>/*#
#desc: entranceroom to your flat
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange==true>>
/% brute force so that we can always change clothes at home %/
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "This doesn't seem like the time or place to change your clothes.">>
<<setScene true>>
<<set $scene.voluntaryFollowupScene = "room_citymap">>
<</if>>
<<include checkPossibleVoluntary>>
<<set $player.location to "Foyer">>
<<include enterroom>>
<<readyToLeaveHome $player>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You enter the foyer.
<<if $status_flat.atthedoor!="">>
According to your Security System, <<=$status_flat.atthedoor>> is waiting in front of your apartment door.
<</if>>
<br><br>
<<include thoughts_home>>
<<printItemsOnFloor $player.plocation>>
<<include flatLinks>>
<br><br>
<<if $status_flat.atthedoor != "">>
[<<moveTo "room_citymap" "Leave the apartment" 300>>]
<<elseif Math.round($player.timebased.fatigue) >= 100>>
<<if setup.isWorkDay($now) && $now.getUTCHours() < 9>>
You are exhausted but you have work today...<br>
<br>
<<if Math.round($player.timebased.fatigue) >= 150>>
[@@.link_locked;You are all but dead on your feet and short of the apartment being on fire do not have any sort of energy to do much save go to bed.@@]
<<elseif setup.getWillpower($player)>0>>
Despite your need for sleep you think you could force yourself to make it to work...<br>
<br>
[<<moveTo "event_work_exhausted_1" "Grit your teeth and force yourself to go to work." 900 "<<spendWillpower $player 1>>">>]
<<else>>
[@@.link_locked;You are as mentally wiped as you are physically and cannot bring yourself to leave your apartment.@@]
<</if>>
<<else>>
[@@.link_locked;You are too tired to leave the house.@@]
<</if>>
<<elseif $player.readytoleave>>
/% TODOfuture: filter by has leave_warning? %/
<<if setup.checkItemInInventory('black_box')>>
[@@.link_locked;<<=setup.getItemObj('black_box').leave_warning>>@@]
<<elseif setup.checkItemInInventory('bed_heels_box')>>
[@@.link_locked;<<=setup.getItemObj('bed_heels_box').leave_warning>>@@]
<<elseif setup.checkItemInInventory('pink_thigh_highs_box')>>
[@@.link_locked;<<=setup.getItemObj('pink_thigh_highs_box').leave_warning>>@@]
<<elseif setup.checkItemInInventory('pink_satin_corset_box')>>
[@@.link_locked;<<=setup.getItemObj('pink_satin_corset_box').leave_warning>>@@]
<<elseif setup.checkItemInInventory('gold_hoop_earrings_box')>>
[@@.link_locked;<<=setup.getItemObj('gold_hoop_earrings_box').leave_warning>>@@]
<<elseif !$player.flags.firstWorkDayDone && $now.getUTCHours() < 7>>
<<if $player.flags.fem_style.underwear == "money">>
[<<moveTo "event_exgirlfriend_fetchthings_1_alt" "Hmm, might as well head for the mall and attend to this commando situation." 300>>]
<<else>>
[@@.link_locked;There's getting to work early, and there's this... I don't think weirdly loitering in the lobby the morning before my ship is the best impression.@@]
<</if>>
<<else>>
<<if $player.flags.fem_style.unisex == "" && setup.getItemFromType('shirt') == "shirt_stained">>
<<printThought $player "Do I really want to wear this shirt out with such an obvious stain on it?">><br>
<br>
<</if>>
<<if $player.locations.gym>>
<<include calcGymAttire>>
<<if $scene.gymAttire>>
<<if $now.getUTCMinutes() < 50 && $now.getUTCHours() == 6 && $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
[<<moveTo "event_admin_gym_morning_1" 'Text <<=setup.getNpcName("npc_admin", "first")>> to meet up for a morning workout.' 60>>]<br>
<<elseif $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>
[@@.link_locked;It is the weekend, if you want to meet to work out with <<=setup.getNpcName('npc_admin', 'first')>> you should do it before work when he normally goes.@@]<br>
<<elseif $now.getUTCHours() < 6>>
[@@.link_locked;It is too early to text <<=setup.getNpcName('npc_admin', 'first')>> about meeting to work out, he starts at seven am before work.@@]<br>
<<else>>
[@@.link_locked;It is too late to meet <<=setup.getNpcName('npc_admin', 'first')>> at the gym to work out today. He starts his routine at seven am sharp.@@]<br>
<</if>>
[<<moveTo "event_jogging" "Go for a jog" 60>>]
<<else>>
<<if $now.getUTCHours() < 7 && $now.getUTCHours() >= 6 && $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
[@@.link_locked;You are not properly dressed to go for a jog or meet <<=setup.getNpcName('npc_admin', 'first')>> at the gym before work.@@]
<<else>>
[@@.link_locked;You should wear workout attire if you are going to go for a jog.@@]
<</if>>
<</if>>
<br><br>
<</if>>
[<<moveTo "room_citymap" "Leave the apartment" 300>>]
<</if>>
<<else>>
<<if setup.isWorkDay($now) && $now.getUTCHours() < 9 && $player.flags.fem_style.unisex == "">>
<<if setup.analyzeWornTags(['unisex']) == 'unisex'>>
<<if $npc_manager.flags.spill_event>>
<<if (setup.checkItemWorn("shirt_female_office") || setup.checkItemWorn("trousers_female_office") || setup.checkItemWorn("black_flats"))>>
<<if (setup.checkItemWorn("shirt_female_office") && setup.checkItemWorn("trousers_female_office") && setup.checkItemWorn("black_flats"))>>
You consider yourself, wearing the outfit your <<=setup.getNpcName("npc_manager", "title")>> gave you after your "spill." <br>
<br>
<<printThought $player 'I bet <<=setup.getNpcName("npc_manager", "formal")>> would appreciate it if I wore this outfit she gave me to work... but am I ready for the possible consequences if I do?'>>
<<else>>
You consider yourself, wearing pieces of the outfit your <<=setup.getNpcName("npc_manager", "title")>> gave you after your "spill." <br>
<br>
<<printThought $player 'I bet <<=setup.getNpcName("npc_manager", "formal")>> would appreciate it if I wore the full outfit she gave me to work... but am I ready for the possible consequences if I do?'>>
<</if>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'unisex'>>
You consider your unisex attire.<br>
<br>
<<printThought $player 'After the outfit she gave me I bet <<=setup.getNpcName("npc_manager", "formal")>> would appreciate it if I wore something like this to work... but am I ready for the possible consequences of that?'>>
<<else>>
You consider your partial unisex attire.<br>
<br>
<<printThought $player 'I bet <<=setup.getNpcName("npc_manager", "formal")>> would appreciate it if I wore the full outfit she gave me to work... but am I ready for the possible consequences of that?'>>
<</if>>
<br><br>
[<<moveTo "company_lobby" "Head to work" 900>>]
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
You still can't quite wrap your head around voluntarily going out in non-male clothing but... <<=setup.getNpcName("npc_manager", "formal")>> was very clear on your new requirements... maybe if you just go directly to work and ignore everything else you can manage it?<br>
<br>
<<printThought $player "But what happens once I'm there? Do I really want to keep bowing to her whims?">><br>
<br>
[<<moveTo "company_lobby" "Head to work" 900>>]
<</if>>
<<else>>
<<include triggerVoluntary>>
<</if>>
<<else>>
<<include triggerVoluntary>>
<</if>>
<</if>>
</div>/*#
#desc: flat bathroom
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Bathroom">>
<<set $player.inside = true>>
<<set _bathroom_string = "Take a shower.">>
<<set _itemDirty = setup.checkItemDirty()>>
<<set _sextoyDirty = setup.checkSexToyDirty()>>
<<if _itemDirty && !_sextoyDirty>>
<<set _bathroom_string = "Take a shower while you put your clothes into the washer.">>
<<elseif !_itemDirty && _sextoyDirty>>
<<set _bathroom_string = "Clean your sextoys and take a shower afterwards.">>
<<elseif _itemDirty && _sextoyDirty>>
<<set _bathroom_string = "Clean your sextoys and take a shower while you put your clothes into the washer.">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You enter your bathroom.
<<if _itemDirty>0>>
<<if _itemDirty<3>>
As you take a short sniff at your clothes. Smells like some are in dire need of washing.
<<else>>
As you take a short sniff at your clothes. Woah... its about time you do a thorough laundry.
<</if>>
<</if>>
<<if ($player.timebased.dirty < 25)>>
<<if _itemDirty>0>>
And while
<<else>>
While
<</if>>
you still feel clean a shower might make you feel better.
<<elseif ($player.timebased.dirty < 75)>>
<<if _itemDirty>0>>
And it looks
<<else>>
Looks
<</if>>
like you should take a shower, since you're really starting to smell.
<<else>>
<<if _itemDirty>0>>
And it looks
<<else>>
Looks
<</if>>
like you are in desperate need of a thorough cleaning as well.
<</if>>
<<if setup.checkSexToyDirty()>>
<<if _itemDirty>0 || $player.timebased.dirty >= 25>>
As are your sextoys.
<<else>>
Looks like your sextoys also need some cleaning.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_bathroom_shower" _bathroom_string>>]<br>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Bathroom">><<set $return_makeuproom="room_bathroom">><<set $makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $return_makeuproomtext="Return to the Bathroom.">><<set $makeuproom_water=true>>'>>]<br>
<br>
<</if>>
<br>
<<include thoughts_home>>
<<include flatLinks>>
</div>/*#
#desc: your bedroom
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set _dream = false>>
<<if $npc_psychiatrist.hypnosis>0>>
<<set _dream = true>>
<</if>>
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
<<switch $status_flat.bedroom>>
<<case 0>>
Your bedroom is dominated by the King Size Bed in the centre. The mattress is spacious and comfy, but sleeping alone makes it vast and empty and feel quite lonely laying in it each night. Next to the bed there is a small nightstand with your alarm clock. There are some shelves on the wall filled with a fairly large selection of books. A window occupies one wall, concealed with always-drawn curtains, with an expansive Wardrobe big enough for two people on the opposite side of the room.
<<case 1>>
Not yet implemented /%TODOfuture!%/
<<case 2>>
After much work your bedroom now looks like the set for the final scene of an extreme Forced Feminisation Video.<br>
<br>
Pink Wallpaper coats the walls. A large makeup mirror behind a vast pink battle station takes up one side of the facing the window. Trimmed with frilly baby pink curtains the window lets in plenty of natural light, especially since you never draw the curtains. After all, it would be selfish and cruel not to share your wonderful life with the world.<br>
<br>
Standing in one corner is a giant pink wardrobe packed with all your beautiful clothes; a matching pink shoe rack placed next to it showing off your ever-growing collection of sexy heels.<br>
<br>
At the centre of the room is the piece de resistance (or would that be piece de soumission?) - your King Size bed. Though lonely to sleep in alone it has enough space on it to host a veritable orgy. Gone are your old, dull cotton sheets, replaced with pink silk and satin and beneath that? A slick, shiny layer of latex to make for easy cleanup, and that you just love to slide around on. Although concealed from view the frame, too, has been enhanced, packed with all the attachment points a Domme could desire, the pink padded headboard rising high presenting even more options for binding a sissy.<br>
<br>
Next to your bed is a cute nightstand, or more accurately, your vault of sex toys; all your naughty playthings within easy reach. Sitting on top is a cute pink alarm clock with the words Sissy Time, All The Time! surrounding its pink diode display. The alarm chimes with a special musical sting; "Wake up, sissy! Open wide and seize the day!"
<</switch>>
<br><br>
<<include thoughts_home>>
<<printItemsOnFloor $player.plocation>>
<<if getUTCHours($now) gte 18 or getUTCHours($now) lt 6>>
<<if setup.checkSleepWear()>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo')>>
<<if !$currentTasks['bed_heels_photo'].finished>>
<<if setup.getItemFromType("shoes") == "bed_heels">>
[<<moveTo "event_bedroom_bed_heels" "Take a selfie in your bed heels and head to bed." 120>>]<br>
<<elseif setup.checkItemOwned("bed_heels")>>
[<<moveTo "event_bedroom_bed_heels" "Put on your bed heels and take a selfie before slipping into bed." 240 >>]<br>
<<elseif setup.checkItemOwned("bed_heels_box")>>
You remember you were supposed to take a picture of yourself wearing "bed heels" for <<=setup.getNpcName('npc_manager', 'formal')>>.... Which means you should probably unbox the pair you bought.<br>
<br>
<<else>>
You remember you were supposed to take a picture of yourself wearing "bed heels" for <<=setup.getNpcName('npc_manager', 'formal')>>, unfortunately you forgot to buy a pair and now the shops are all closed.<br>
<br>
<</if>>
<<else>>
[<<moveTo "room_bedroom_picture" "Take a sleep selfie before bed." 120>>]<br>
<</if>>
<</if>>
[<<moveTo "room_dreams" "Go to bed." 0>>]<br>
<</if>>
<<set _setId = setup.clothingSetExists('Sleep Clothes')>>
<<if _setId > -1>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && $clothSets[_setId].data.includes("bed_heels")>>
<<if $currentTasks['bed_heels_photo'].finished>>
[<<moveTo "room_bedroom_picture" "Get changed into your sleepwear and take a selfie." 120 "<<useClothSet $player $now _setId>>">>]<br>
<<else>>
[<<moveTo "event_bedroom_bed_heels" "Get changed into your sleepwear and take a selfie as instructed." 120 "<<useClothSet $player $now _setId>>">>]<br>
<</if>>
[<<moveTo "room_dreams" "Get changed into your sleepwear and go to bed." 120 "<<useClothSet $player $now _setId>>">>]
<<else>>
[<<moveTo "room_dreams" "Get changed into your sleepwear and go to bed." 120 "<<useClothSet $player $now _setId>>">>]
<</if>>
<<else>>
[@@.link_locked;Not quite the right outfit to sleep in.@@] <<hint $options "Editing a clothing set called 'Sleep Clothes' will let you 1-button wear that to bed.">>
<</if>>
<br><br>
<</if>>
[<<link "Set Alarmclock">>
<<set $dTimeD = {}>>
<<set $dTimeD.text = "Set Alarm">>
<<set $dTimeD.startHour = fullnumber($player.clock.h)>>
<<set $dTimeD.stepHour = 1>>
<<set $dTimeD.maxHour = 23>>
<<set $dTimeD.startMinute = fullnumber($player.clock.m)>>
<<set $dTimeD.stepMinute = 5>>
<<set $dTimeD.maxMinute = 55>>
<<set $dTimeD.followup = "room_bedroom_setalarmclock">>
<<openDialog "Clock" "dialog_selectDualTime">>
<</link>>]<br>
[<<moveTo "room_bedroom_wardrobe_1" "Open wardrobe" 10>>]<br>
<<if getUTCHours($now) gte 6 and getUTCHours($now) lte 23>>
[<<link "Lie down and rest a bit.">>
<<set $dTimeD = {}>>
<<set $dTimeD.text = "How long?">>
<<set $dTimeD.startHour = "00">>
<<set $dTimeD.stepHour = 1>>
<<set $dTimeD.maxHour = 8>>
<<set $dTimeD.startMinute = "20">>
<<set $dTimeD.stepMinute = 10>>
<<set $dTimeD.maxMinute = 50>>
<<set $dTimeD.followup = "room_bedroom_rest">>
<<set $resting = true>>
<<openDialog "Rest" "dialog_selectDualTime">>
<</link>>]
<</if>>
<br><br>
<<include flatLinks>>
</div>/*#
#desc: set onetime alarm at home
#status: FINISHED 0.4.0.0
#*/
<center>
<<=$dTimeD.text>><br>
<br>
<table>
<tr>
<td>
<<button '<img src="./images/interface/arrow_up_64.png" height="64" width="64">'>>
<<set $dTimeD.startHour = setup.changeTimeValue($dTimeD.startHour,$dTimeD.stepHour,0,$dTimeD.maxHour)>>
<<set _tmp = setup.changeDialogValue($dTimeD.startHour,"#dialogTimeHours")>>
<</button>>
</td>
<td>
<<button '<img src="./images/interface/arrow_up_64.png" height="64" width="64">'>>
<<set $dTimeD.startMinute = setup.changeTimeValue($dTimeD.startMinute,$dTimeD.stepMinute,0,$dTimeD.maxMinute)>>
<<set _tmp = setup.changeDialogValue($dTimeD.startMinute,"#dialogTimeMinutes")>>
<</button>>
</td>
</tr>
<tr>
<td style="text-align:center;height:48px">
<span style="margin: 10px" id="dialogTimeHours"><<=$dTimeD.startHour>></span>h
</td>
<td style="text-align:center;height:48px">
<span style="margin: 10px" id="dialogTimeMinutes"><<=$dTimeD.startMinute>></span>m
</td>
</tr>
<tr>
<td>
<<button '<img src="./images/interface/arrow_down_64.png" height="64" width="64">'>>
<<set $dTimeD.startHour = setup.changeTimeValue($dTimeD.startHour,-1,0,$dTimeD.maxHour)>>
<<set _tmp = setup.changeDialogValue($dTimeD.startHour,"#dialogTimeHours")>>
<</button>>
</td>
<td>
<<button '<img src="./images/interface/arrow_down_64.png" height="64" width="64">'>>
<<set $dTimeD.startMinute = setup.changeTimeValue($dTimeD.startMinute,-10,0,$dTimeD.maxMinute)>>
<<set _tmp = setup.changeDialogValue($dTimeD.startMinute,"#dialogTimeMinutes")>>
<</button>>
</td>
</tr>
</table>
</center>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<moveTo $dTimeD.followup>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: set morning alarm
#status: FINISHED 0.4.0.0
#*/
<<set $player.clock.h = parseInt($dTimeD.startHour,10)>>
<<set $player.clock.m = parseInt($dTimeD.startMinute)>>
<<moveTo "room_bedroom">>/*#
#desc: try to sleep at home
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<if $resting>>
<<set $rest = setup.fallAsleep($player)>>
<<set _tmp = parseInt($dTimeD.startHour)*60+parseInt($dTimeD.startMinute)>>
<<if $rest.reason == "none">>
<<set $now to setup.sleepMin($player,$now,_tmp,true)>>
<<else>>
<<set $now to setup.sleepMin($player,$now,_tmp,false)>>
<</if>>
<<set $resting = false>>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<include enterroom>>
<<initRoom>>
<<if $rest.reason == "none">>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<<else>>
<<createAnimatedBGR "./video/sleepless.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $rest.reason>>
<<case 'none'>>
You lie down and rest for a while.<br>
<<case 'horny'>>
You try to lie down and rest, but you're simply too horny to relax enough to be well rested.
<<case 'plug'>>
You try to lie down and rest, but you can feel your <<=setup.getItemName(setup.getItemFromType('plug'))>> pressing against your <<getWordAnus $player>>. This prevents you from being well rested.
<<case 'cage'>>
You try to lie down and rest, but you can feel the <<=setup.getItemName(setup.getItemFromType('cage'))>> encasing your <<getWordMyPenis $player>>. This prevents you from being well rested.
<</switch>>
<br><br>
[<<moveTo "room_bedroom" "Get up again" 0>>]
</div>/*#
#desc: your wardrobe
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Wardrobe">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.wardrobeopened eq false>>
You open the Wardrobe. There's a lot of empty space now that <<=setup.getNpcName('npc_exgirlfriend', 'first')>> moved out and took all her belongings with her.<br>
<br>
<<printThought $player "Just great. Even the absence of things reminds me of how hollow my existence has become. I really need to do something that fills that void.">><br>
<<set $player.flags.wardrobeopened to true>>
<<else>>
You open the Wardrobe. You can put things from your inventory in here rather than carrying them all across creation.<br>
<<include thoughts_home>>
<</if>>
<br><br>
<<printWardrobe $player>><br>
<br>
[<<moveTo "room_bedroom" "Return to the Bedroom." 1>>]
</div>/*#
#desc: flat living room
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Your living room is quite spacious. It contains a large and comfortable couch and two armchairs. On the wall across from the couch is your relative new 4k HDTV and a collection of current console systems, like the new <<=$player.flags.faultcompany>> VR System or the Pony Game station VI. There is a quite large bookshelf on the far side of the room, containing your favourite books, mangas, comics, games, movies and series. There are several large gaps since <<=setup.getNpcName('npc_exgirlfriend', 'first')>> took her books when she left. Next to the book shelf is a small computer table with a desktop workstation on it, a quite well equipped gaming system you put together yourself. And then there's <<=setup.getNpcName('npc_chuck', 'custom', 'Chuck the plant')>>,
<<if $player.othertimebased.chuck_water<5>>
who hasn't been watered since the dawn of time.
<<elseif $player.othertimebased.chuck_water<50>>
who looks like he needed to be watered again.
<<else>>
who looks pretty happy for a plant.
<</if>>
<br><br>
<<include thoughts_home>>
<<if $player.timebased.horny >= 25>>
<<if $player.timebased.fatigue>100>>
[@@.link_locked;You are too worn out to masturbate right now.@@]<br>
<<else>>
[<<moveTo "room_masturbate" "Masturbate">>]<br>
<</if>>
<<else>>
[@@.link_locked;You are not horny enough to masturbate right now.@@]<br>
<</if>>
[<<moveTo "room_computer" "Use your Computer" 30>>]<br>
[<<moveTo "room_water_chuck" "Water Chuck the Plant." 300>>]<br>
<<if $player.timebased.fatigue>100>>
[@@.link_locked;You are too exhausted to play games.@@]<br>
<<else>>
[<<moveTo "room_play_games" "Play some games.">>]<br>
<</if>>
<br>
<<include flatLinks>>
</div>/*#
#desc: use computer at home
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You've booted up your computer. It's a few years old, so it won't run the most bleeding edge games, but it's still a good system.
<<if setup.computerHasUpgrade($computer, 'webcam')>>
A webcam sits on the top of your primary monitor.
<</if>>
<br><br>
<<if !($currentTasks.hasOwnProperty('task_uniform_upgrade') || $player.flags.uniform_upgrade.fully_understood_contract || $player.flags.uniform_upgrade.aslut_enrollment_refused) && $npc_manager.stagevalues[2].femalesecretary != "">>
<<printThought $player "In light of all these uniform changes, maybe I should look into my contract some more? <<=setup.getNpcName('npc_manager', 'formal')>> e-mailed it to me back when I first started.">><br>
<br>
<</if>>
[<<moveTo "room_computer_email" "Check your Emails." 0>>]<br>
[<<moveTo "room_computer_surfing" "Surf the web." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: check email at home
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<printEmail $computer>>
<br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: read an email (javascript to display email)
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<printEmailContent $computer $readEmailNumber>>
<br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]<br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: surf the web at home
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
What will you search for on the internet?<br>
<<printSearch $computer>>
<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: flat kitchen
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
You enter your kitchen.
<<if ($player.flags.coffee.lastcoffee==null) || (setup.minDiff($now,$player.flags.coffee.lastcoffee)>60)>>
For some reason you think a coffee would be nice right now.
<<if setup.dayDiff($now,$player.flags.coffee.lastcoffee)>0>>
It feels like eons, since you could last enjoy your coffee in peace.
<</if>>
<br><br>
[<<moveTo "room_kitchen_coffee" "Drink a nice, hot Coffee." 60>>]<br>
<br>
<</if>>
<<include thoughts_home>>
<<include flatLinks>>
</div>/*#
#desc: have coffee at home
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $player.flags.coffee.lastcoffee=$now>>
<<set $player.timebased.stress = Math.max(0,$player.timebased.stress-2)>>
<</if>>
<<set _tmpTime = 240+Math.random()*240>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/coffee_01.mp4">>
<div id="invframe" class="scrolltext">
You sit down for a moment and ignore everything that happened to you lately to simply enjoy a nice cup of steaming hot coffee. For a short while all your worries seem to disappear.<br>
<br>
[<<moveTo "room_kitchen" "Finish your coffee" _tmpTime>>]
</div><<set $now = setup.sleepClock($player,$now)>>
/%<<checkTaskEvents>>%/
<<moveTo "room_wake_up">>/*#
#desc: wake up to your alarm clock
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Wow. Maybe I dreamt of changing clothes.">>
<<if $roomchange==true>>
<<if $scene.night_sleep>>
/%<<set $now = setup.sleepClock($player,$now)>>%/
<</if>>
<<if $scene.dream.wetdream>>
<<set $player.timebased.horny=0>>
<</if>>
<<if setup.getItemFromType("shoes") == "bed_heels">>
<<set $scene.shoes = 'bed_heels'>>
<<set $scene.thresholdUnlock = !setup.hasThreshold('heels', 'wearing_heels', 'advanced')>>
<<if $scene.thresholdUnlock>>
<<set _x = setup.setThreshold('heels', 'wearing_heels', 'advanced', true)>>
<<else>>
<<applyExperience 'heels' 15 'very' $EXPOSED>>
<</if>>
<<if $inventory['bed_heels'].status.lock>>
<<manipulateItem $player $now 'bed_heels' 'lock' true>>
<</if>>
<<if setup.getTotalValue("heels") < setup.getItemObjFromType('shoes').heels.difficulty>>
<<removeItem $player $now 'bed_heels' true>>
<<else>>
<<if !$player.flags.uniform_upgrade.conquer_bed_heels>>
<<set $player.flags.uniform_upgrade.conquer_bed_heels = true>>
<<set $scene.conquerbedheels = true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
<<if $status_flat.bedroom == 2>>
Your alarm chimes merrily; a sing-song feminine voice calling out "Wake up, sissy! Open wide and seize the day!," its optimistic message burrowing into your mind.<br>
<br>
Letting the alarm finish its happy message you hit the button on top, switching things over to a recording of "Sissy that Walk" to accompany you as you swing out of bed and get ready for the day.
<<else>>
The noise of your alarm clock has woken you up.
<</if>>
<<if $scene.dream.wetdream>>
As you start to stretch out of bed, you feel something warm, wet around your groin area. Looks like you've had a wet dream.
<</if>>
<br><br>
<<if $scene.shoes == "bed_heels">>
<<if $scene.thresholdUnlock>>
You feet ache from your first night locked in the diabolical bed heels and you remove them with relief, taking a minute to massage your sore arches and cramped calves. Putting them away in the wardrobe you are not looking forward to the evening when you will be expected to wear them again...<br>
<br>
Putting that aside for now you try to ignore the lingering ache... even as you find that you are feeling more natural walking on the balls of your feet...<br>
<br>
<<elseif setup.getTotalValue("heels") < setup.getItemObj($scene.shoes).heels.difficulty>>
You slept badly. Once the alarm sounds you eagerly sit up, stripping off the now-unlocked bed heels before even silencing the alarm.<br>
<br>
Tossing the torturous implements into your wardrobe you take a moment to stretch and attempt to massage some life into your calves and toes before getting out of bed.<br>
<br>
<<if setup.getTotalValue("heels") <= 7>>
You barely touch the ground before you collapse to the floor, your legs crumpling under you. Pulling yourself backup onto the bed it takes a second try to force your foot flat and manage to stand normally.
<<elseif setup.getTotalValue("heels") <= 10>>
Your feet slowly flatten as you put your weight onto them. Your heels seem to not quite want to touch the floor. Your calves feel tight, your toes squashed and your arches on fire but the sensations slowly fade as you take a few springy steps.
<<else>>
Your feet are, for a moment, stuck in the arched position in which they have been bound all night. Starting with just your toes and the balls of your feet on the floor you slowly flatten, only to find that it's actually more painful to force your feet flat that it was to perch in a steep arch. <<if setup.getTotalValue("heels") >= 10 && setup.getTotalValue("foot") >= 10>>Excited<<elseif setup.getTotalValue("feminization") >= 10>>Wondering<<else>>Somewhat scared<</if>> if you might be losing the ability to walk in flats you take a few more steps, toe-walking the whole way to clear your head.
<</if>>
<br><br>
<<elseif $scene.conquerbedheels>>
Waking to the sound of your alarm you roll to the side and and start to step out of bed. Not realizing what you've done you've been standing in your heels with ease for a few seconds when you hear the sound of the lock releasing. Feeling yourself slide out you quickly jump backwards, falling onto your butt on the bed as the heels slip off your feet.<br>
<br>
<<printThought $player "Wait, what just happened?">><br>
<br>
Still a bit shocked you reach your feet back over the bed. Once more the balls of your feet touch down with your feet still in the same pointed position forced by the steep heels. Adding weight changes little, your heels remain high and unsupported, your calves taut, but pain free.<br>
<br>
You take a few experimental steps, surprised at how easy it is to toe walk, as well as appreciating the odd perspective provided by your suddenly raised height. Experimentally you start to lower your feet flat, only for pain to explode through your contracted calf muscles. Reflexively returning to the "comfortable" arched position you realise that you're probably stuck wearing at least some sort of high-heel shoe if you don't want to be in pain.<br>
<br>
<</if>>
<</if>>
[<<moveTo "room_bedroom" "Start your day" 0 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: take a shower
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Bathroom">>
<<if $roomchange == true>>
<<set $bathroom = {}>>
<<set $bathroom.makeup = false>>
<<set $bathroom.clothes = false>>
<<set $bathroom.cage = false>>
<<set $bathroom.cageItem = "">>
<<set $bathroom.toys = false>>
<<set $bathroom.time = 15>>
<<if setup.checkSexToyDirty()>>
<<set $bathroom.toys = true>>
<<set $bathroom.time += setup.cleanSexToys()>>
<</if>>
<<if setup.checkItemDirty()>>
<<set $bathroom.clothes = true>>
<<set $bathroom.time += 10>>
<<washClothes>>
<</if>>
<<set _tmpHorny = $player.timebased.hornymulti>>
<<set $player.timebased.hornymulti = -2>>
<<set $player.timebased.hornymulti = _tmpHorny>>
<<set $player.timebased.dirty = 0>>
<<set $bathroom.cageItem = setup.getItemTypeName('cage')>>
<<if $bathroom.cageItem!="">>
<<set _cage_id = setup.getItemFromType('cage')>>
<<changeItemStatus _cage_id 'cumsoaked' '["remove"]'>>
<<changeItemStatus _cage_id 'dirty' '["remove"]'>>
<<changeItemStatus _cage_id 'piss' '["remove"]'>>
<<changeItemStatus _cage_id 'sweaty' '["remove"]'>>
<</if>>
<<if $player.makeup.template!="">>
<<set $bathroom.makeup = true>>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<<set $bathroom.time += 5>>
<</if>>
<<if !setup.checkNaked()>>
<<if setup.getItemFromType('shirt') == "shirt_stained">>
<<set $bathroom.stained_shirt = true>>
/% some stains never come out %/
<<changeItemStatus "shirt_stained" 'dirty' '["set",50]'>>
<</if>>
<<removeAllClothing $player $now>>
<<set $bathroom.clothes = true>>
<</if>>
<<if Math.round($player.timebased.fatigue) > 25>>
<<set $now = setup.sleepMin($player,$now,$bathroom.time,true)>>
<<else>>
<<set $now = setup.advanceDate($player, $now, 'seconds', $bathroom.time*60)>>
<</if>>
<</if>>
<<include enterroom_locked>>
<<createAnimatedBGR "./video/shower_scene.mp4">>
<div id="invframe" class="scrolltext">
<<if $bathroom.clothes>>
You start by removing your clothes and put them in the washer, running the automatic setting.
<<else>>
You start by removing your clothes and putting them on the side.
<</if>>
<<if $bathroom.toys>>
Then you take your time, thoroughly cleaning your "toys."
<</if>>
<<if $bathroom.makeup>>
After removing the remains of your makeup, you
<<else>>
Then you
<</if>>
take a long, <<if Math.round($player.timebased.fatigue) > 25>>rejuvenating<<else>>nice<</if>> shower.
<<if $bathroom.cageItem!="">>
You do your best to clean your <<=$bathroom.cageItem>> while still wearing it.
<</if>>
<br><br>
<<if $bathroom.stained_shirt>>
Taking your clothes out of the wash you are dismayed to discovered that the bright red stain on your shirt remains, the cleaning having hardly even dulled it.<br>
<br>
<<printThought $player "Crap, it looks like this is a permanent stain. There's no way <<=setup.getNpcName('npc_manager', 'formal')>> will accept this as meeting requirements. I'll need to wear something else if I don't want to get in trouble...">><br>
<br>
<</if>>
<<include thoughts_home>>
[<<moveTo "room_bathroom" "Return to the Bathroom" 1>>]
</div>/*#
#desc: masturbate at home, root
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<setScene>>
<<set $scene.masturbate_style = "">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You think about, what might be the best way to release some stress.
<<include thoughts_home>>
<<if (setup.checkSlotFree(['penis']) == true) || setup.checkPenisFreeandChastized()>>
[<<link "Watch some porn on the internet">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.1>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 20)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<goto room_masturbate_porn>><</link>>]<br>
<<else>>
[@@.link_locked;Watch some porn on the Internet - You have to free your <<getWordMyPenis $player>> first@@]<br>
<</if>>
<<if (!setup.checkSlotFree(['penis']) && (setup.getTotalValue('humiliation')>=3) && !setup.checkPenisFreeandChastized())>>
[<<link "Masturbate through your clothing.">>
<<set $scene.masturbate_style = "clothed">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.2>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 25)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<goto room_masturbate_porn>><</link>>]<br>
<</if>>
<<if $player.flags.masturbation.plug>>
<<if setup.isItemTypeEquipped('plug')>>
[<<link "Lets plug and play!">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.2>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 25)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<goto room_masturbate_plug>><</link>>]<br>
<<else>>
[@@.link_locked;If you aren't plugged in, how can you play?@@]<<hint $options "You need to be wearing an anal plug for this.">><br>
<</if>>
<</if>>
<<if setup.checkItemOwned('basic_dildo')>>
<<if !$player.flags.masturbation.dildo>>
[<<moveTo "room_masturbate_dildo_first" "Masturbate with a dildo." 360 "<<set $scene.dildo = 'basic_dildo'>>">>]<br>
<<else>>
[<<moveTo "room_masturbate_dildo" "Pound your ass with a dildo again." 360 "<<set $scene.dildo = 'basic_dildo'>>">>]<br>
<</if>>
<</if>>
[<<link "Do something else">><<goto room_livingroom>><</link>>]
</div>/*#
#desc: masturbate to porn at home
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $sceneVisibility = $ALONE>>
<<set $scene.caged = setup.getItemFromType('cage')!="">>
<<set $scene.plugged = setup.getItemFromType('plug')!="">>
<<set $scene.clothing = setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','female'])>>
/%<<set $scene.femClothing = setup.checkVisibleClothingTag('female')> 40>>
<<if $scene.femClothing>>
<<if setup.checkVisibleClothingTag('sissy')> 40>>
<<set $scene.clothingstyle = 'sissy'>>
<<elseif setup.checkVisibleClothingTag('cute')> 40>>
<<set $scene.clothingstyle = 'cute'>>
<<elseif setup.checkVisibleClothingTag('bold')> 40>>
<<set $scene.clothingstyle = 'bold'>>
<<else>>
<<set $scene.clothingstyle = 'female'>>
<</if>>
<</if>>%/
/%<<set $scene.cum = setup.canPlayerCum($player,1)>>%/
/%Masturbation per hand has no value. Either it works or not. It's always 0 or 100%, independent of any external values%/
<<set _tmp = ['masturbation_hand',0]>>
<<set $scene.cum = setup.canPlayerCum($player,[_tmp])>>
<<if $scene.masturbate_style=="clothed">>
<<set $scene.cloth_penis_top = setup.checkTopBodySlot('penis','top')>>
<<set $scene.cloth_penis_bottom = setup.checkTopBodySlot('penis','bottom')>>
<<if $scene.caged>>
<<if $scene.cum>>
<<changeItemStatus $scene.cloth_penis_bottom 'cumsoaked' '["set",100]'>>
<<else>>
<<changeItemStatus $scene.cloth_penis_bottom 'cumsoaked' '["add",10]'>>
<</if>>
<<applyExperience 'bimbofication' 9 'normal' $ALONE>>
<<applyExperience 'humiliation' 4 'little' $ALONE>>
<<else>>
<<if setup.getTotalValue('cum')==0>>
<<setThreshold 'cum' 'masturbation' 'jizz_in_panties' true>>
<<else>>
<<applyExperience 'cum' 2 'insignificant' $ALONE>>
<</if>>
<<changeItemStatus $scene.cloth_penis_bottom 'cumsoaked' '["set",100]'>>
<<if $scene.femClothing==true>>
<<applyExperience 'bimbofication' 9 'little' $ALONE>>
<</if>>
<<applyExperience 'humiliation' 4 'little' $ALONE>>
<</if>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/scene_porn_hetero_01.mp4">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue('humiliation')<3>>
You're pretty rusty on that whole porn business, since it was actually the plan to remain virgin until marriage, not that that worked out all that well. Thanks to modern technology and search engines it only takes you a few minutes to find some stimulating material.
<<else>>
It only takes you a few minutes to find some stimulating material.
<</if>>
A classic tale as old as time, Mario the plumber has to fix some pipes, but gets delayed by a pink-haired bimbo bombshell.
<<if $scene.caged>>
You soon realise the error in your thinking. Rubbing your <<getWordMyPenis $player>>
<<if $scene.masturbate_style=="clothed">>
through your <<=setup.getItemName($scene.cloth_penis_top)>>
<</if>>
<<if $scene.femClothing>>
while being dressed up
<<switch $scene.clothing>>
<<case 'sissy'>>
like a total sissy
<<case 'cute'>>
in cute, sissylike clothing
<<case 'bold'>>
in hot lingerie
<<case 'fetish'>>
in fetishistic attire
<<case 'modest'>>
in modest feminine attire
<<case 'female'>>
in female attire
<</switch>>
whilst locked up in your <<=setup.getItemTypeName('cage')>> only makes you hornier. Your <<getWordMyPenis $player>> expands, only to be crushed from all directions at once by the cage.
<<if $scene.cum>>
You soon give up, frustrated, unable to release anything besides a few drops of precum. If you only had another way to release yourself.
<<else>>
You manage to stimulate your <<getWordMyPenis $player>> enough to release a constant flow of cum right into your <<=setup.getItemName($scene.cloth_penis_bottom)>>, but without a proper orgasm you remain way too horny.
<</if>>
<br><br>
<<if Math.random()*4 <= $npc_manager.stage>>
Stewing in your own horny frustration you don't notice that the video has ended until you glance up to see a totally different scene starts to play out...<br>
<br>
[<<moveTo "room_masturbate_porn_special" "Keep watching." 180 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]
[<<moveTo "room_livingroom" "Give up in frustration." 0 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]
<<else>>
[<<moveTo "room_livingroom" "Give up in frustration." 0 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]
<</if>>
<<else>>
while it is locked up in your <<=setup.getItemTypeName('cage')>> only makes you hornier. Your <<getWordMyPenis $player>> expands, only to be crushed from all directions at once by the cage.
<<if $scene.cum>>
You soon give up, frustrated, unable to release anything besides a few drops of precum. If you only had another way to release yourself.
<<else>>
You manage to stimulate your <<getWordMyPenis $player>> enough to release a constant flow of cum right into your hand, but without a proper orgasm you remain way to horny.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Give up in frustration." 0 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]
<</if>>
<<else>>
<<if $scene.masturbate_style=="">>
<<if $scene.femClothing>>
You stroke your <<getWordMyPenis $player>>
<<if $player.handjobvirginity != "" || $player.analvirginity != "" || $player.blowvirginity != "">>
while dreaming getting pounded yourself by Mario's energetic and well endowed <<getWordPenis $player>>.
<<else>>
as you marvel at the energy Mario displays while pounding the pink-haired bimbo with his mighty <<getWordPenis $player>>. But seeing how you're dressed for your spanking session, you're unsure if you might prefer to be the Bimbo.
<</if>>
<<if $scene.cum>>
<<if $scene.plugged>>
Your other hand searches your <<=setup.getItemTypeName('plug')>> and moves it up and down a little bit, stimulating your <<getWordAnus $player>>.
<<elseif setup.getTotalValue('submission')>0>>
You take a finger of your other hand in your mouth, lubing it with spit amd then you start to finger your <<getWordAnus $player>> in the same rhythm as Mario fucks the Bimbo.
<</if>>
It only takes you a short while before you cum.
<br><br>
<<printThought $player "Aah... so much cum...">>
<<else>>
<<if $scene.plugged>>
Even though your other hand searches your <<=setup.getItemTypeName('plug')>> and moves it up and down a little bit, stimulating your <<getWordAnus $player>> you are unable to reach an orgasm.
<<elseif setup.getTotalValue('submission')>0>>
Even though you take a finger of your other hand in your mouth, lubing it with spit and start to finger your <<getWordAnus $player>> in the same rhythm as Mario fucks the Bimbo, you're still unable to reach an orgasm.
<</if>>
<<if $scene.caged>>
Looks like you need to find some other ways to relieve yourself sissy!
<<else>>
Looks like you need to find some other ways to relieve yourself.
<</if>>
<br><br>
<<printThought $player "Aah... I want to cum so badly!">>
<</if>>
<<else>>
You work your <<getWordMyPenis $player>> as Mario fucks the pink-haired bimbo in the pussy and the anus like there is no tomorrow.
<<if $scene.cum>>
You fantasize how it would feel to fuck a babe like that yourself and come within a few minutes.<br>
<br>
<<printThought $player "Wow. I really needed to get that out of my system...">>
<<else>>
Maybe you're simply not into porn like this, or you're getting used to relieve yourself by other means, but even after a lengthy beating, besides a few drops of precum, you're still unable to cum like you're used to be.<br>
<br>
<<printThought $player "I need to find another way to relieve myself.">>
<</if>>
<</if>>
<br><br>
<<elseif $scene.masturbate_style=="clothed">>
<<if ! $scene.femClothing>>
You start rubbing along your <<getWordMyPenis $player>> through your clothes. Watching Mario almost gets irrelevant as you awe the feeling of your <<getWordMyPenis $player>> being caressed by the fabric of your <<=setup.getItemName($scene.cloth_penis_bottom)>>.
<<if $scene.cum>>
You fantasize how it would feel to fuck a babe like that yourself and fill your underwear with <<getWordCum $player>> in a few minutes.
<<else>>
You fantasize how it would feel to fuck a babe like that yourself. But that does not seem to do the trick. Even after a lengthy session you're still unable to relieve yourself. Maybe you need a different kind of stimulation now.<br>
<br>
<<printThought $player "I need to find another way to relieve myself.">>
<</if>>
<<else>>
<<if setup.getTotalValue('feminization')<4>>
Realizing that your are still wearing female undergarment, you start rubbing your <<getWordMyPenis $player>>
<<else>>
Enjoying your attire while masturbating, you start rubbing your <<getWordMyPenis $player>>
<</if>>
through your <<=setup.getItemName($scene.cloth_penis_top)>> until your precum makes them sticky.
<<if setup.getTotalValue('submission')>=3>>
<<if setup.checkItemTypeWorn('bra')>>
In the meantime your other hand is twisting and pinching your nipples through your <<=setup.getItemTypeName('bra')>>, until they are throbbing and hurt, like Mario does with the pink-haired bimbo in the movie.
<<else>>
In the meantime your other hand is twisting and pinching your nipples until they are throbbing and hurt, like Mario does with the pink-haired bimbo in the movie.
<</if>>
<</if>>
<<if !$scene.plugged>>
For a short moment, you wonder how it would feel to be fucked by Mario,
<<if $scene.cum>>
the thought the final thing you need to spray a load of <<getWordCum $player>> into your undergarments, like the slut you are.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. I am not turning into a Bimbo slut, like in the movies, am I?">>
<<else>>
but you're unable to cum, even after a lengthy session. Maybe you need a different kind of stimulation now.<br>
<br>
<<printThought $player "I need to find another way to relieve myself.">>
<</if>>
<<else>>
<<if $scene.cum>>
Having your <<getWordAnus $player>> plugged with the <<=setup.getItemTypeName('plug')>> you wonder how it would feel being fucked into submission by a real cock, like a submissive little slut. This feeling of total submission makes your <<getWordMyPenis $player>> shoot a giant load of <<getWordCum $player>> into your <<=setup.getItemName($scene.cloth_penis_bottom)>>.<br>
<br>
<<printThought $player "I want to feel some manmeat in my <<getWordAnus $player>>!" 40>><br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. I am not turning into a Bimbo slut like in the movies, am I?">>
<<else>>
Having your <<getWordAnus $player>> plugged with the <<=setup.getItemName(_plug)>> you wonder how it would feel being fucked into submission by a real cock, like a submissive little slut. But even this feeling of total submission is not enough to makes you cum. Maybe you need a different kind of stimulation now.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, I need something to fuck my <<getWordAnus $player>>!">>
<</if>>
<</if>>
<</if>>
<br><br>
<</if>>
<<if $scene.cum && (setup.getTotalValue('cum')>0) || (setup.getTotalValue('humiliation')>=3) >>
It would be a shame to waste all that <<getWordCum $player>> you've just careless squirted around, don't you think?<br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<set $player.timebased.horny = 5>><<set $scene.from_porn=true>>">>]<br>
[<<moveTo "room_livingroom" "Do something else." 0 "<<set $player.timebased.horny = 0>>">>]
<<else>>
<<if $scene.cum>>
[<<moveTo "room_livingroom" "Continue" 0 "<<set $player.timebased.horny = 0>>">>]
<<else>>
[<<moveTo "room_livingroom" "Continue" 0 "<<set $player.timebased.horny += 10>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: masturbate at home with anal plug
#status: FINISHED 0.4.0.0
#*/
/* NOTE: it is assumed that you're already plugged to get this scene */
<<if $roomchange==true>>
<<setScene>>
<<if ndef $scene.chosenLocation>>
<<set $scene.chosenLocation = "room_livingroom">>
<</if>>
<<set $scene.horny = $player.timebased.horny>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<<set $scene.legsId = setup.getItemFromType('legwear')>>
<<if setup.isItemTypeEquipped("cage")>>
<<set $scene.cum = setup.canPlayerCum($player,setup.getTotalValue('anal'))>>
<<else>>
<<set $scene.cum = true>>
<</if>>
<<if $scene.cum>>
<<set $player.timebased.horny = 0>>
<<else>>
<<set $player.timebased.horny = setup.changeHorny($player,10)>>
<</if>>
<<applyExperience 'anal' $scene.plugObj.effect.anal.level 'very' $ALONE>>
<</if>>
<<include enterroom_hypnosis>>
<<initRoom>>
<<createAnimatedBGR "./video/masturbation_plug_01.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.horny>50>>
Your horny mind fixates on the <<=$scene.plugObj.name>> in your ass.
<<elseif $scene.horny>25>>
The embers of your arousal soon roar into a proper fire as you think about, and feel, the <<=$scene.plugObj.name>> in your ass.
<<else>>
Your thoughts turned towards the <<=$scene.plugObj.name>> in your ass you soon feel your arousal rising.
<</if>>
<<if setup.isItemTypeEquipped("panties")>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
Pulling off your pants and <<=setup.getItemObjFromType("panties").name>>
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.getItemFromType("dress") != "">>
Flipping up your skirt you pull off your <<=setup.getItemObjFromType("panties").name>>
<<else>>
Removing your <<=setup.getItemObj($scene.legsId).name>> and your <<=setup.getItemObjFromType("panties").name>>
<</if>>
<<else>>
Shimmying out of your <<=setup.getItemObjFromType("panties").name>>
<</if>>
you reach around behind to finger your plug.
<<else>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
Pulling off your pants to reveal your lack of undergarments
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.getItemFromType("dress") != "" || setup.getItemFromType("strapless_dress") != "">>
Flipping up your skirts to reveal your lack of undergarments
<<else>>
Removing your <<=setup.getItemObj($scene.legsId).name>>
<</if>>
<<else>>
Already <<if setup.getItemFromType("dress") != "" || setup.getItemFromType("shirt") != "" || setup.getItemFromType("strapless_dress") != "">>half <</if>>naked
<</if>>
you reach around behind to finger your plug.
<</if>>
<br><br>
<<if setup.isItemTypeEquipped("cage")>>
Wiggling the plug has your poor, caged <<getWordMyPenis $player>> straining with excitement. Ignoring your out of reach <<getWordMyPenis $player>> you focus on your rear, clenching around your "intruder" and wiggling it with your finger.<br>
<br>
<<if $scene.cum>>
Walking over to a mirror you turn around, admiring the view and spreading your cheeks to show off your occupant. Moaning with lust you barely even consider your caged member, obsessed with your rear as you clench and hump. The steady teasing of your hole and drumming against your prostate builds and builds until, with a gasp and a shudder you cum, your boijuices leaking out of your cage like tears of joy.<br>
<br>
<<if (setup.getTotalValue("cum") > 0) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips while you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming at your feet you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis $player>> means.
<</if>>
<<else>>
Try as you might you just can't reach relief, the <<=$scene.plugObj.name>> in your ass wonderful and stimulating but somehow not enough to get you off. Your caged <<getWordMyPenis $player>> weeping a few scant drops of pre cum is your only reward before you give up in still-horny frustration. Reaching around behind, your spread your cheeks, focusing on the <<=$scene.plugObj.name>> inside of you, milking it, imagining that it was bigger, deeper. You moan with frustrated lust as, despite your clenching and wiggling and humping the relief of an orgasm remains as locked away as your poor <<getWordMyPenis $player>>.
<</if>>
<<else>>
You try to make a game of it, avoiding touching your very erect <<getWordMyPenis $player>> as you focus on your rear companion. The pleasure of the <<=$scene.plugObj.name>> stretching your hole and probing your prostate slowly becomes too much. Spreading your ass in front of a mirror to admire the plug peeking out you hump the air and finally grab yourself, the mere touch of your hand around your <<getWordMyPenis $player>> is the final straw and you spurt with joy.<br>
<br>
<<if (setup.getTotalValue("cum") > 0) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips while you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming at your feet you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis $player>> means.
<</if>>
<</if>>
<br><br>
Panting with exertion you pull yourself back together. The deed done
<<if setup.isItemTypeEquipped("panties")>>
and the plug is still nestled in your bum you pull on your panties<<if $scene.legsId != "">> and then the rest of your clothes<</if>>.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("skirt")) || setup.getItemFromType("dress") != "" || setup.getItemFromType("strapless_dress") != "">>
you let your skirt fall back into place. Smoothing it over your <<if setup.getItemFromType("cage")>> securely caged <<getWordMyPenis $player>> and the fun bonus you still have stuffed behind<<else>>thighs and bum and the "secret" hidden betwixt your cheeks<</if>>.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("pants"))>>
you pull up your pants, the plug still safely occupying your bum.
<<elseif setup.getItemFromType('shirt') != "">>
you remain pantsless, continuing to shirtcock it with the plug still in your ass<<if setup.getItemFromType("cage")>> and your <<getWordMyPenis $player>> securely caged<</if>>.
<<else>>
you remain as bare as whence you started, the plug yet inside you<<if setup.getItemFromType("cage")>> and your <<getWordMyPenis $player>> securely caged<</if>>.
<</if>>
<br><br>
<<if $scene.cum && (setup.getTotalValue('cum')>0) && (setup.getTotalValue('humiliation')>=3)>>
<<printThought $player "It would be a shame to waste all that <<getWordCum $player>> you've just careless squirted around...">><br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<set $player.timebased.horny = setup.changeHorny($player,5)>>">>]<br>
[<<moveTo $scene.chosenLocation "Do something else." 0 "<<unset $scene>>">>]
<<else>>
[<<moveTo $scene.chosenLocation "Continue" 0 "<<unset $scene>>">>]
<</if>>
</div>/*#
#desc: lick up cum after masturbating at home
#status: FINISHED 0.4.0.0
#*/
<<set _femClothing = false>>
<<if setup.checkWornListTag(['female'],'and')==true>>
<<set _femClothing = true>>
<</if>>
<<set _firsttime = false>>
<<set _otherbefore = false>>
<<if $roomchange==true>>
<<set $sceneVisibility = $ALONE>>
<<if $player.swalloeddowncum == false>>
<<set $player.swalloeddowncum = true>>
<<set _firsttime = true>>
<<if $player.swallowedothercum == true>>
<<set _otherbefore = true>>
<</if>>
<</if>>
<<if $scene.masturbate_style=="clothed">>
<<set _c1 = setup.checkTopBodySlot('penis','bottom')>>
<<set _i1 = setup.getItemName(_c1)>>
<<set _panties = setup.getItemFromType('panties')>>
<<changeItemStatus _c1 'cumsoaked' '["set",50]'>>
<<applyExperience 'cum' 11 'insignificant' $ALONE>>
<<else>>
<<applyExperience 'cum' 12 'insignificant' $ALONE>>
<</if>>
<</if>>
<<include enterroom_hypnosis>>
<<initRoom>>
<<if setup.getTotalValue('cum')<5>>
<<createAnimatedBGR "./video/swallow_cum_1.mp4">>
<<else>>
<<createAnimatedBGR "./video/lick_cum.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<if _otherbefore>>
Your curiosity got the better of you. You've already tasted the <<getWordCum $player>> of another man loins, and now you want to compare it to your own.
<<elseif _firsttime>>
<<printThought $player "What the hell am I doing?">><br>
<br>
You're confused. Why do you want to taste your own <<getWordCum $player>> right now? You're into girls! But are you? So much has happened lately, leaving nagging doubts in your mind.
<<else>>
Licking your own cum has already become like a ritual after masturbating. You're almost as eager to lick up your <<getWordCum $player>> afterwards as you were to climax in the first place!
<</if>>
<<if $scene.masturbate_style=="">>
You start licking at your fingers, like you're tasting cookie dough. You sprayed quite a load into your hand.
<<elseif $scene.masturbate_style=="clothed">>
You take off your <<=_i1>> and start licking the <<getWordCum $player>> off it, like you're licking cookie dough from a bowl. You sprayed quite a load in your <<=_i1>>.
<</if>>
It is viscous and gooey, and has a strong, unique and yet not unpleasant smell.
<<if setup.getTotalValue('cum')<5>>
Just a little dip of your tongue should be enough to evaluate its taste. Just a little dip, nothing more, you say to yourself.<br>
<br>
<<printThought $player "I am just going to take a little taste... solely to satisfy... my curiosity, and not, because I absolutely love the ... flavour!">><br>
<br>
Before you can even think about what just happened, you've already enjoyed slurping up the whole load.
<<else>>
You know you won't be satisfied with just a little bit so you swallow it all like the good little cumslut you are. You've accepted the fact that you love the taste of cum on your tongue bathing all your taste buds in it.
<</if>>
You let it roll around your tongue, like you're tasting a fine glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')<5>>
<<printThought $player "Oh no. What have I done? This is so much unlike me!">>
<<else>>
<<printThought $player "I love the taste of cum so much!">>
<</if>>
<br><br>
<<if setup.getTotalValue('cum')>=5>>
Oh no, it seems some of the <<getWordCum $player>> has spilled on the floor. For a second you hesitate, but your desires guide your tongue towards the floor and you start licking it like a cat lapping up spilt milk. You lick and lick until there's nothing left of it. Only your saliva on the floor remains as evidence of your kinky deed.<br>
<br>
<<if setup.getTotalValue('cum')<10>>
<<printThought $player "Oh no. I am such a naughty cumwhore! I am not getting addicted, am I?">><br>
<<else>>
<<printThought $player "Oh <<getWordGod $player>>, this tastes so good. I need more!">><br><br>
<</if>>
<br><br>
<</if>>
<<if $scene && $scene.chosenLocation>>
[<<moveTo $scene.chosenLocation "Continue" 0 "<<unset $scene>>">>]
<<else>>
<<if $scene && $scene.from_porn>>
<<if Math.random()*3 <= $npc_manager.stage>>
As you finish swallowing your <<getWordCum $player>> you look up to realise that the video you were watching has come to an end and another, different scene has started to auto-play.<br>
<br>
[<<moveTo "room_masturbate_porn_special" "Keep watching." 180 "<<set $player.timebased.horny = 5>>">>]<br>
[<<moveTo "room_livingroom" "Turn off the video and do something else." 0 "<<set $player.timebased.horny = 0>>">>]
<<else>>
[<<moveTo "room_livingroom" "Continue" 0>>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Continue" 0>>]
<</if>>
<</if>>
</div>/*#
#desc: masturbate at home with dildo the first time
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $player.flags.masturbation.dildo = true>>
<<set $scene.horny = $player.timebased.horny>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<set $scene.cum = false>>
<<if $scene.plugID != "">>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<</if>>
<<set $scene.legsId = setup.getItemFromType('legwear')>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<set _tmp = ['anal',_dildoSize]>>
<<set _sizeArr = [_tmp]>>
<<if setup.canPlayerCum($player, _sizeArr)>>
<<set $scene.cum = true>>
<<set $player.timebased.horny = 0>>
<<set _panties = setup.getItemFromType('panties')>>
<<if _panties != "">>
<<changeItemStatus _panties 'cumsoaked' '["set",50]'>>
<</if>>
<<else>>
<<set _X = setup.gainHorny($player,_sizeArr)>>
<</if>>
<<applyExperience 'anal' _dildoSize 'normal' $ALONE>>
<</if>>
<<include enterroom_hypnosis>>
<<initRoom>>
<<if setup.isItemTypeEquipped("cage")>>
<<createAnimatedBGR "./video/masturbate_dildo_chastity_01.mp4">>
<<else>>
<<createAnimatedBGR "./video/lolatrap_masturbate_01.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
Retrieving the dildo you take a few moments to admire it, the thick, long phallus almost intimidating as you contemplate how it will feel in your ass.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
Even for an experienced butt-slut like yourself this feels somehow different.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
You may not be a novice to "back door" play but this seems different.
<<else>>
For a novice such as yourself this is intimidating and different from any of your prior experience.
<</if>>
<</if>>
Unlike your other anal experiences you are totally alone. Just you and a surprisingly realistic dildo... that is soon going to be plunging deep into your rear hole.<br>
<br>
<<if $scene.plugID != "">>
Your heart beats fast as you put the dildo down, stare at the phallus laid out before you as you start off by carefully "clearing the way" by removing the <<=$scene.plugObj.name>> from your rear.
<<if $scene.horny>50>>
You're so horny even this sensation is somewhat overwhelming and you take a moment to catch your breath as you shudder and gasp.
<<elseif $scene.horny>25>>
The act of sliding the plug out of your rear has you gasp in shock, your rear hole quivering as it recovers from the sudden emptiness.
<<else>>
You gasp slightly as you slide the plug out of your ass, arousal rising as you stare at the dildo that will soon be replacing it.
<</if>>
<<else>>
Your heart races as you lay out the dildo in front of you and prepare to use it.
<<if $scene.horny>50>>
You're so horny you can already imagine its thick girth sliding into your hungry hole and you hurry in anticipation.
<<elseif $scene.horny>25>>
The embers of horniness flare to life as you anticipate how it will feel to have the phallic object sliding into you.
<<else>>
Even though you weren't feeling particularly horny the sight of the dildo, the knowledge that it will soon be entering you, can't help but send you pulse racing.
<</if>>
<</if>>
<br><br>
Taking a deep breath you
<<if setup.getItemFromType("panties") != "">>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
pull off your pants and <<=setup.getItemObjFromType("panties").name>>,
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.getItemFromType("dress") != "" || setup.getItemFromType("strapless_dress") != "">>
flip up your skirt and pull off your <<=setup.getItemObjFromType("panties").name>>,
<<else>>
remove your <<=setup.getItemObj($scene.legsId).name>> and your <<=setup.getItemObjFromType("panties").name>>,
<</if>>
<<else>>
shimmying out of your <<=setup.getItemObjFromType("panties").name>>,
<</if>>
slathering the dildo in lube before grasping it in one hand and positioning it against your hole.
<<else>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
pull off your pants to reveal your lack of undergarments
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.getItemFromType("dress") != "" || setup.getItemFromType("strapless_dress") != "">>
flip up your skirt to reveal your lack of undergarments
<<else>>
remove your <<=setup.getItemObj($scene.legsId).name>>,
<</if>>
<<else>>
are already <<if setup.getItemFromType("dress") != "" || setup.getItemFromType("shirt") != "" || setup.getItemFromType("strapless_dress") != "">>half <</if>>naked and
<</if>>
slathering the dildo in lube before grasping it in one hand and positioning it against your hole.
<</if>>
<br><br>
Biting your lip you slide the dildo between your cheeks, the slippery shaft gliding over your quivering hole as you stroke, stroke, and then angle it to press the tip into you. You let out a low moan as the dildo enters you. This is it, you're doing it, you bought a dildo and now you're fucking yourself with it...<br>
<br>
<<if setup.getItemFromType("cage") != "">>
Moaning you slump to your side, working the slippery fake cock in and out of your ass as your caged <<getWordMyPenis $player>> strains with excitement. Ignoring your out of reach <<getWordMyPenis $player>> you focus on going deeper, working more and more of the artificial cock into your ass as you buck and moan.<br>
<br>
Eyes rolled back in pleasure your arm moves of its own volition, pumping the dildo in and out of your ass as you whimper and gasp, the fact that you're violating yourself while helplessly caged making you an aroused, gibbering mess.
<<if $scene.cum>>
With each stroke your prostate blossoms with forbidden pleasure, the fact that your <<getWordMyPenis $player>> is locked up and out of reach fading away - you are a sissy, this is better. This is all that you deserve, all that you want. Pulses of cock-drunk submissive pleasure course through your body, pushing you over the edge as you shudder and leak through your cage.<br>
<br>
<<if (setup.getTotalValue("cum") > 5) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips as you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming at your feet you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis $player>> means.
<</if>>
<<else>>
Try as you might you just can't reach relief, even as you slam yourself up and down, pounding the dildo into your hole without mercy. Your legs finally giving out you flop to the floor, the dildo plunging all the way into you as a single tear of pre-cum escapes from your caged <<getWordMyPenis $player>>, your orgasm remaining as locked away as your poor <<getWordMyPenis $player>>.
<</if>>
<<else>>
With a moan you slump to the side, one hand grasping your hard <<getWordMyPenis $player>> as the other works the dildo into your ass. Rocking your hips you work yourself from both directions, pushing the dildo further inside of you as you stroke your cock. Fantasizing that your hand is a portal to your ass you imagine fucking yourself, your pace increasing as you figuratively pound your sissy slut ass.<br>
<br>
Prostate buzzing, penis quivering you cum, spurting as hard as you ever have at the intense, overwhelming stimulation. Releasing the grasp on your <<getWordMyPenis $player>> you slowly pump the dildo back and forth in your ass. You stare in awe as you continue to spurt and "milk" every last drop out of your tight balls.<br>
<br>
<<if (setup.getTotalValue("cum") > 5) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips while you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming in front of you you quickly wipe yourself clean and try to ignore what being able to achieve release in such a depraved manner means.
<</if>>
<</if>>
<br><br>
Panting with exertion you pull yourself back together, loosening your grip and letting the dildo slide out of your ass.<br>
<br>
The deed done
<<if $scene.plugID != "">>
you solve the "problem" of your sudden emptiness by sliding the <<=$scene.plugObj.name>> back into your hole before
<</if>>
<<if setup.isItemTypeEquipped("panties")>>
you pull on your panties<<if $scene.legsId != "">> and then the rest of your clothes<</if>>.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("skirt")) || setup.getItemFromType("dress") != "" || setup.getItemFromType("strapless_dress") != "">>
you let your skirt fall back into place. You smooth it over your <<if setup.getItemFromType("cage")>> securely caged self<<else>>thighs and bum<</if>> as you carefully rise to your feet.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("pants"))>>
you pull up your pants.
<<elseif setup.getItemFromType('shirt') != "">>
you remain pantsless, continuing to shirtcock it<<if setup.getItemFromType("cage")>>with your <<getWordMyPenis $player>> securely caged<</if>>.
<<else>>
you remain as bare as whence you started, <<if setup.getItemFromType("cage")>> your <<getWordMyPenis $player>> securely caged<</if>>.
<</if>>
<br><br>
<<if $scene.cum && (setup.getTotalValue('cum')>0) && (setup.getTotalValue('humiliation')>=3)>>
<<printThought $player "It would be a shame to waste all that <<getWordCum $player>> you've just careless squirted around...">><br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<set $player.timebased.horny = setup.changeHorny($player,5)>>">>]<br>
[<<moveTo "room_livingroom" "Do something else." 600>>]
<<else>>
[<<moveTo "room_livingroom" "Continue" 600>>]
<</if>>
</div>/*#
#desc: masturbate at home with dildo (repeatable)
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<setScene>>
<<set $scene.horny = $player.timebased.horny>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<if $scene.plugID != "">>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<</if>>
<<set $scene.legsId = setup.getItemFromType('legwear')>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<set _tmp = ['anal',_dildoSize]>>
<<set _sizeArr = [_tmp]>>
<<set $scene.cum = setup.canPlayerCum($player, _sizeArr)>>
<<if $scene.cum>>
<<set $player.timebased.horny = 0>>
<<else>>
<<set _X = setup.gainHorny($player,_sizeArr)>>
<</if>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<applyExperience 'anal' _dildoSize 'normal' $ALONE>>
<</if>>
<<include enterroom_hypnosis>>
<<initRoom>>
<<if setup.isItemTypeEquipped("cage")>>
<<createAnimatedBGR "./video/masturbate_dildo_chastity_01.mp4">>
<<else>>
<<createAnimatedBGR "./video/lolatrap_masturbate_01.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.plugID != "">>
Heart racing as you glance at the <<=setup.getItemObj($scene.dildo).name>> laid out before you you start off by carefully removing the <<=$scene.plugObj.name>> from your rear.
<<if $scene.horny>50>>
You're so horny even this sensation is somewhat overwhelming and you take a moment to catch your breath as you shudder and gasp.
<<elseif $scene.horny>25>>
The act of sliding the plug out of your rear has you gasp in shock, your rear hole quivering as it recovers from its sudden emptiness.
<<else>>
You gasp slightly as you slide the plug out of your ass, arousal rising as you stare at the dildo that will soon be replacing it.
<</if>>
<<else>>
Your heart races as you lay out the <<=setup.getItemObj($scene.dildo).name>> in front of you and get ready to use it.
<<if $scene.horny>50>>
You're so horny you can already imagine its thick girth sliding into your hungry hole and you hurry in anticipation.
<<elseif $scene.horny>25>>
The embers of horniness flare to life as you anticipate how it will feel to have the phallic object sliding into you.
<<else>>
Even though you aren't feeling particularly horny the sight of it, the knowledge that it will soon be entering you, can't help but send you pulse racing.
<</if>>
<</if>>
<<if setup.isItemTypeEquipped("panties")>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
Pulling off your pants and <<=setup.getItemObjFromType("panties").name>>
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.getItemFromType("dress") != "" || setup.getItemFromType("strapless_dress") != "">>
Flipping up your skirt you pull off your <<=setup.getItemObjFromType("panties").name>>
<<else>>
Removing your <<=setup.getItemObj($scene.legsId).name>> and your <<=setup.getItemObjFromType("panties").name>>
<</if>>
<<else>>
Shimmying out of your <<=setup.getItemObjFromType("panties").name>>
<</if>>
you slather the dildo in lube before grasping it in one hand and positioning it against your hole.
<<else>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
Pulling off your pants to reveal your lack of undergarments
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.getItemFromType("dress") != "" || setup.getItemFromType("strapless_dress") != "">>
Flipping up your skirts to reveal your lack of undergarments
<<else>>
Removing your <<=setup.getItemObj($scene.legsId).name>>
<</if>>
<<else>>
Already <<if setup.getItemFromType("dress") != "" || setup.getItemFromType("shirt") != "" || setup.getItemFromType("strapless_dress") != "">>half <</if>>naked
<</if>>
you slather the dildo in lube before grasping it in one hand and positioning it against your hole.
<</if>>
<br><br>
<<if setup.isItemTypeEquipped("cage")>>
Easing the dildo into your ass your caged <<getWordMyPenis $player>> strains with excitement. Ignoring your out of reach <<getWordMyPenis $player>> you focus on your rear, working the dildo deeper and deeper into your hole.<br>
<br>
Leaving the halfway buried in your ass you go hands free, squatting deep and bouncing up and down, fucking yourself right there on the floor.
<<if $scene.cum>>
Building closer and closer to orgasm you slam down, pounding your prostate with glee, all thoughts of your caged <<getWordMyPenis $player>> forgotten in favour of the deliriously wonderful pleasure of taking it from behind. Though you might have wished to enjoy things a bit longer you soon cum, leaking out of your cage to form a pool as you slump to the floor, the dildo fully buried in your ass as the final drops of joy escape your cage.<br>
<br>
<<if (setup.getTotalValue("cum") > 5) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips as you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming at your feet you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis $player>> means.
<</if>>
<<else>>
Try as you might you just can't reach relief, even as you slam yourself up and down, pounding the dildo into your hole without mercy. Your legs finally giving out you flop to the floor, the dildo plunging all the way into you as as single tear of pre cum escapes from your caged caged <<getWordMyPenis $player>>, your orgasm remaining as locked away as your poor <<getWordMyPenis $player>>.
<</if>>
<<else>>
You try to make a game of it, avoiding touching your very erect <<getWordMyPenis $player>> as you work the dildo into your rear and then shift to go hands free. Placing the dildo on the floor you squat deep, letting the weight of your body force you down, down down onto the dildo. Overcome with excitement you continue to roll your hips and finally grasp your <<getWordMyPenis $player>>, your mere light touch the final straw and you spurt with joy.<br>
<br>
<<if (setup.getTotalValue("cum") > 5) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips while you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming in front of you you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis $player>> means.
<</if>>
<</if>>
<br><br>
Panting with exertion you pull yourself back together and slowly rise off the dildo. Arcing as it follows you up it finally pops free, skittering off across the floor as it escapes your rear.<br>
<br>
The deed done
<<if $scene.plugID != "">>
you solve the "problem" of your sudden emptiness by sliding the <<=$scene.plugObj.name>> back into your hole before
<</if>>
<<if setup.isItemTypeEquipped("panties")>>
you pull on your panties<<if $scene.legsId != "">> and then the rest of your clothes<</if>>.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("skirt")) || setup.getItemFromType("dress") != "" || setup.getItemFromType("strapless_dress") != "">>
you let your skirt fall back into place. You smooth it over your <<if setup.getItemFromType("cage")>> securely caged self<<else>>thighs and bum<</if>> as you carefully rise to your feet.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("pants"))>>
you pull up your pants.
<<elseif setup.getItemFromType('shirt') != "">>
you remain pantsless, continuing to shirtcock it<<if setup.getItemFromType("cage")>>with your <<getWordMyPenis $player>> securely caged<</if>>.
<<else>>
you remain as bare as whence you started, <<if setup.getItemFromType("cage")>> your <<getWordMyPenis $player>> securely caged<</if>>.
<</if>>
<br><br>
<<if $scene.cum && (setup.getTotalValue('cum')>0) && (setup.getTotalValue('humiliation')>=3)>>
<<printThought $player "It would be a shame to waste all that <<getWordCum $player>> you've just careless squirted around...">><br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<set $player.timebased.horny = setup.changeHorny($player,5)>>">>]<br>
[<<moveTo "room_livingroom" "Do something else." 600>>]
<<else>>
[<<moveTo "room_livingroom" "Continue" 600 >>]
<</if>>
</div>/*#
#desc: porn auto-plays a scene to match your max fetish
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $scene.top_fetish = setup.getMaxFetish($player, $fetish)>>
<<applyExperience $scene.top_fetish 10 'very' $ALONE>>
<<set $scene.horny = 0>>
<</if>>
<<include enterroom_hypnosis>>
<<initRoom>>
/% TODOfuture <<createAnimatedBGR $scene.image>>%/
<div id="invframe" class="scrolltext">
You watch as a new, far more extreme scene begins to play out, the auto-play feature having taken quite a turn from the run of the mill bimbo/plumber video you were just watching. A part of you wants to turn away and yet you find yourself unable to look away, transfixed at the extreme porn playing out on your computer screen.<br>
<br>
<<switch $scene.top_fetish>>
<<case 'penis'>>
/* porn_penis.jpg */
Your screen is covered in cocks. At the centre is a single overworked feminine face, her mouth distended as she tries to blow two men at once, another pair of cocks on either side of her head, one in each hand with another couple poking in from off-screen.<br>
<br>
Mascara streaked as she tries to handle the plethora of penis she's obviously straining and yet you can't help but think she's enjoying it. Perhaps even more disturbing is that you find yourself feeling jealous, imagining what it would be like to be servicing so many delicious cocks...
<<case 'cum'>>
/* porn_cum.jpg */
You watch as a woman is painted with cum. The men "gifting" her with such bounty never visible on screen you only barely even see the cocks themselves, the entire focus on her pretty face, her eyes blissfully closed, lips slightly parted as she is rewarded with load after load splashing across her features.<br>
<br>
The sight of all that cum makes you thirsty, especially whenever her tongue darts out to catch a drop trickling down over her lips. Despite drips and drinks her face is steadily covered in a thin, milky film and you can't help but fantasize what it would be like to be her... or maybe to be there to lick her clean...
<<case 'piss'>>
You watch as a girl kneels on the floor of a shower, a circle of men and women surrounding her and unleashing golden streams across her body.<br>
<br>
Moaning with arousal she opens her mouth to drink anything she can, her fingers scrubbing her hair as if she was in a proper shower, amber streams trickling down her naked body. Something about her enthusiasm draws you in as you wonder what it would feel like to be so completely degraded... and yet love every moment of it.
<<case 'bestiality'>>
<<if $fetish.bestiality_hard && setup.getTotalValue("bestiality") > 8>>
You watch as a naked woman walks through a stables and up to a large, muscular stallion.<br>
<br>
Your heart pounds in your chest as you realise where things are going, the woman dropping to her knees and crawling under the large horse, reaching out to caress his cock, sucking and stroking it to mammoth, fear-inducing size before turing around.<br>
<br>
Forced to rise up onto her tip-toes she glances at the camera before guiding the cock into her from behind, moaning and gasping as it works into her only to pitch forward as the stallion becomes overcome with impatience and lurches forward.<br>
<br>
Catching herself with both hands she remains with her hips high in the air as the stallion commences to fuck her, the massive horse-wang looking like it could break her in half with every stroke.<br>
<br>
You are both horrified and fascinated by the scene playing out before you, transfixed as you imagine what she could be feeling... even as the ahegao expression on her face gives you a very strong idea.
<<else>>
You watch as a pair of women step into frame. Each is naked save for a leather strap-on harness, one woman "equipped" with what looks like a canine cock complete with thick knot, the other bearing an even larger equine dong. Striding forward they approach a naked figure already bent over a frame, ass exposed, a caged <<getWordPenis $player>> dangling below, driving home what the focus of the scene to come will be.<br>
<br>
The dog-cock equipped woman goes first, plunging into the waiting hole as her partner in crime circles around front, theatrically stroking her oversized horse-cock as she has the bound figure suck on the tip. Moans escape past the artificial equine penis as the dog-girl knots herself, grinding and humping with vigour before finally pulling free with a pop.<br>
<br>
Giving the ass a hard, loud slap as she leaves it gaping and quivering the dog-cock woman steps aside as her partner circles back around. You can't help but be amazed as you watch the long, thick equine member slowly slide into the gaping ass until all of its more than foot-long length has sunk into the bent-over figure and she commences to thrust in and out.
<</if>>
<<case 'bdsm'>>
You watch a video of a sissy maid being instructed by her domineering Mistress. Despite being hobbled and forced to use a feather duster attached to her gag to clean the maid is mercilessly hounded, her buttocks tasting crop and hand and paddle as her slightest error is met by her Mistress' swift reprisal.<br>
<br>
Despite sympathising with the poor maid you can't help but put yourself in her high-heel shoes, thinking how much better and more obedient you would be than she is... while also thinking that a few errors here or there well... punishment is part of the fun...
<<case 'bondage'>>
You watch as the camera pans over a bound figure. Already strapped and restrained to start hands reach out from off-screen to cinch each buckle tighter, reducing the trembling figure to almost complete immobility. The face-covering hood that they wear masking their gender you stare in awe as the camera lingers on their face, a pair of lips wrapped around an oversized gag their only visible flesh, a soft moan escaping their throat as drool trickles down past the gag.<br>
<br>
You can't help but fantasize about how it would feel to be so completely, utterly restrained...
<<case 'foot'>>
You find yourself in a POV scene staring at a cute pair of high-heel adorned feet. After a slow, luxurious camera pan that gives you a view of the heavenly heals from every angle you watch as your "hands" reach out from the screen. Perfectly shot so as to allow you to pretend that you're "in the moment" the hands gently remove the heels and peel down the pantyhose beneath before massaging and lotioning each foot in turn.<br>
<br>
Watching in case you might learn a new foot massage trick you would still be transfixed by the beauty of the feet, from their smooth heels to their cute toes, wishing that it really was your hands reaching out to caress them...
<<default>>
ERROR, unknown fetish: <<=$scene.top_fetish>>
<</switch>>
<br><br>
<<if setup.getItemFromType("cage") != "">>
Without thinking your hand has snaked back down between your legs, groping your caged <<getWordMyPenis $player>> as you moan and gasp, transfixed by the video in front of you.<br>
<br>
<<if $scene.cum>>
For as unsatisfying as your earlier orgasm was this time you cum like gangbusters, leaking your joyous juices out through your cage as the video reaches its climax, moaning along as your cramped <<getWordMyPenis $player>> strains and cries within its prison.
<<else>>
The cage may have prevented you from experiencing relief earlier but it seems like this new, intense video has more than done the trick as your caged <<getWordMyPenis $player>> strains and cries with joy, your <<getWordCum $player>> leaking out through the cage.
<</if>>
<br><br>
Panting with exertion as the video comes to a close you quickly close the browser window before another video can queue up.
<<else>>
Without noticing you've started stroking yourself again, your <<getWordMyPenis $player>> even harder than it was before you came the first time. Caught up in the moment you're beating off with everything you've got as you stare with rapt attention at the intense porn scene served up by some perverted algorithm.<br>
<br>
As the scene reaches its crescendo you cum, spurting all over your monitor as a final highlight to the pornographic display.<br>
<br>
Utterly spend and suddenly embarrassed you quickly close the browser window before another video can queue up. You wipe the monitor clean and hurriedly get up from your computer.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Do something else." 600>>]
</div>/*#
#desc: online university root
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Online University">>
<<set $player.inside = true>>
<<if $roomchange == true>>
<<set $room_online_university_start_firsttime = false>>
<<if !$player.flags.onlineUniversity>>
<<set $player.flags.onlineUniversity = true>>
<<set $room_online_university_start_firsttime = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $room_online_university_start_firsttime>>
This is your first time visiting the online University Homepage. Everything a real university has, including some pricey fees, all a mere mouseclick away. Skimming through their range of courses you're astounded by the versatility of this page. Coding, Cooking, Theology, Psychology, Bio Engineering and Cybernetics, just to name a few. You're searching for something that might help you with your current job and make a find with the "Company Management Course." Hmm... looks like the Level 0 Course is free of charge. Nice. You create a user account and log in.<br>
<br>
<</if>>
You're greeted by a synthesized voice: "@@.npc_ai;Welcome
<<if !$room_online_university_start_firsttime>>
back
<</if>>
<<=$player.call>> <<=$player.last_name>>, to the simulated halls of the Online University. Knowledge awaits. Each course is a Unit of 60 Minutes with a virtual Professor or industry subject-matter expert depending on the course. A VR Unit would maximize the efficiency of instruction but is not needed for low level Courses. Please select your course.@@"<br>
<br>
[<<moveTo "room_online_university_course_smart_1" "Company Management" 60>>]<br>
<br>
[<<moveTo "room_computer_surfing" "Return to your search engine." 0>>]<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: online university "smart" root
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Online University">>
<<set $player.inside = true>>
<<if $roomchange == true>>
<<set $onlineUniversity_smartLevel = 0>>
<<set $_room_online_university_course_smart_level = 0>>
<<if setup.getTotalValue('smart')>=10>>
<<set $_room_online_university_course_smart_level = 3>>
<<elseif setup.getTotalValue('smart')>=8>>
<<set $_room_online_university_course_smart_level = 2>>
<<elseif setup.getTotalValue('smart')>=6>>
<<set $_room_online_university_course_smart_level = 1>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/online_learning.mp4">>
<div id="invframe" class="scrolltext">
<<switch $onlineUniversity_smartLevel>>
<<case 0>>
"@@.npc_ai;Welcome to Company Management 1-0-1. You are currently at Level <<=$_room_online_university_course_smart_level>>. Your options are the following:@@"<br>
<br>
Level 0: (free of charge): <br>
This course will be free of charge and covers basic knowledge and business English.<br>
<br>
<<if $_room_online_university_course_smart_level>=1>>
Level 1: (10 Credits/hour): <br>
This course focuses its studies on a wide range of business, economics, law and management subjects in the ever changing landscape of middle management.<br>
<br>
<</if>>
<<if $_room_online_university_course_smart_level>=2>>
Level 2: (25 Credits/hour): <br>
From here on the in depth studies of how to work efficiently using different tools to bend laws to your will be discussed. Theoretically of course. R&D University would never recommend to bend a law to your will.<br>
<br>
<</if>>
<<if $_room_online_university_course_smart_level>=3>>
Level 3: (50 Credits/hour): <br>
And if you thought the last course was morally questionable, oh boi, you're in for a ride.<br>
<br>
<</if>>
<br>
<<if $player.timebased.fatigue<100>>
[<<link "Beginner course 0 (free, min 1 hour)">>
<<set $onlineUniversity_smartLevel=0>>
<<set $dTime = {}>>
<<set $dTime.timeMulti = 3600>>
<<set $dTime.text = "How long do you wish to study?">>
<<set $dTime.startTime = "01">>
<<set $dTime.changeTime = 1>>
<<set $dTime.minTime = 1>>
<<set $dTime.maxTime = setup.calcMaxTimeTraining($player,'smart',6,10)>>
<<set $dTime.followup = "room_online_university_course_smart_2">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<<if $_room_online_university_course_smart_level>=1>>
[<<link "Advanced Course (10 Credits/hour, min 1 hour)">>
<<set $onlineUniversity_smartLevel=1>>
<<set $dTime = {}>>
<<set $dTime.timeMulti = 3600>>
<<set $dTime.text = "How long do you wish to study?">>
<<set $dTime.startTime = "01">>
<<set $dTime.changeTime = 1>>
<<set $dTime.minTime = 1>>
<<set $dTime.maxTime = setup.calcMaxTimeTraining($player,'smart',8,10)>>
<<set $dTime.followup = "room_online_university_course_smart_2">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<</if>>
<<if $_room_online_university_course_smart_level>=2>>
[<<link "Professional Course (25 Credits/hour, min 1 hour)">>
<<set $onlineUniversity_smartLevel=2>>
<<set $dTime = {}>>
<<set $dTime.timeMulti = 3600>>
<<set $dTime.text = "How long do you wish to study?">>
<<set $dTime.startTime = "01">>
<<set $dTime.changeTime = 1>>
<<set $dTime.minTime = 1>>
<<set $dTime.maxTime = setup.calcMaxTimeTraining($player,'smart',10,10)>>
<<set $dTime.followup = "room_online_university_course_smart_2">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<</if>>
<<if $_room_online_university_course_smart_level>=3>>
[<<link "Quantum Course (50 Credits/hour, min 1 hour)">>
<<set $onlineUniversity_smartLevel=3>>
<<set $dTime = {}>>
<<set $dTime.timeMulti = 3600>>
<<set $dTime.text = "How long do you wish to study?">>
<<set $dTime.startTime = "01">>
<<set $dTime.changeTime = 1>>
<<set $dTime.minTime = 1>>
<<set $dTime.maxTime = setup.calcMaxTimeTraining($player,'smart',12,10)>>
<<set $dTime.followup = "room_online_university_course_smart_2">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<</if>>
<<else>>
[@@.link_locked;You're too worn out to learn anything right now@@]
<</if>>
<</switch>>
<br><br>
[<<moveTo "room_online_university_start" "Return to the online University Start page." 0>>]<br>
[<<moveTo "room_computer_surfing" "Return to your search engine." 0>>]<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: pop-up to choose time to spend studying at online university
#status: FINISHED 0.4.0.0
#*/
<<set $dialogtime = 1>>
<<=$dTime.text>><br>
<center>
<<button "-">>
<<set $dTime.startTime = setup.changeTimeValue($dTime.startTime,-$dTime.changeTime,$dTime.minTime,$dTime.maxTime)>>
<<set _tmp = setup.changeDialogValue($dTime.startTime,"#dialogTime")>>
<</button>>
<span id="dialogTime"><<=$dTime.startTime>></span>
<<button "+">>
<<set $dTime.startTime = setup.changeTimeValue($dTime.startTime,$dTime.changeTime,$dTime.minTime,$dTime.maxTime)>>
<<set _tmp = setup.changeDialogValue($dTime.startTime,"#dialogTime")>>
<</button>>
</center>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<set _tmpTime = $dTime.startTime*$dTime.timeMulti>>
<<moveToDialog $dTime.followup _tmpTime >>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: take online university "smart" class
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Online University">>
<<set $player.inside = true>>
<<if $roomchange == true>>
/%<<set $now to setup.advanceDate($player, $now, 'hours', $dTime.startTime)>>%/
<<switch $onlineUniversity_smartLevel>>
<<case 0>>
<<set _xp = 10*$dTime.startTime>>
<<applyExperience 'smart' 6 _xp $ALONE>>
<<set $player.timebased.stress += $dTime.startTime*Math.max(0,setup.calcStressStudy(setup.getTotalValue('smart'),6))>>
<<case 1>>
<<setThreshold 'smart' 'online_university' 'beginner' true>>
<<set _xp = 10*$dTime.startTime>>
<<applyExperience 'smart' 8 _xp $ALONE>>
<<set $player.timebased.stress += $dTime.startTime*Math.max(0,setup.calcStressStudy(setup.getTotalValue('smart'),8))>>
<<set $player.money.total -= (10*$dTime.startTime)>>
<<case 2>>
<<setThreshold 'smart' 'online_university' 'advanced' true>>
<<set _xp = 10*$dTime.startTime>>
<<applyExperience 'smart' 10 _xp $ALONE>>
<<set $player.timebased.stress += $dTime.startTime*Math.max(0,setup.calcStressStudy(setup.getTotalValue('smart'),10))>>
<<set $player.money.total -= (25*$dTime.startTime)>>
<<case 3>>
<<setThreshold 'smart' 'online_university' 'expert' true>>
<<set _xp = 10*$dTime.startTime>>
<<applyExperience 'smart' 12 _xp $ALONE>>
<<set $player.timebased.stress += $dTime.startTime*Math.max(0,setup.calcStressStudy(setup.getTotalValue('smart'),12))>>
<<set $player.money.total -= (50*$dTime.startTime)>>
<</switch>>
<</if>>
<<include enterroom>>
/%<<include enterroom_locked>%/
<<initRoom>>
<<createAnimatedBGR "./video/online_learning.mp4">>
<div id="invframe" class="scrolltext">
<<switch $onlineUniversity_smartLevel>>
<<case 0>>
This lesson focuses on general economics, business English and how to read contracts. Your general understanding of the subject matter rises.
<<case 1>>
This lesson focuses its studies on a wide range of business, economics, legal and management subjects in the ever changing landscape of middle management. Your general understanding of the subject matter rises significantly.
<<case 3>>
This lesson is very complicated, focusing on contract law, project planning, advanced statistical techniques and other things you would need to master to succeed at the highest levels of corporate advancement.
<</switch>>
<br><br>
[<<moveTo "room_online_university_course_smart_1" "Return to the course page." 0>>]<br>
[<<moveTo "room_online_university_start" "Return to the online University Start page." 0>>]<br>
[<<moveTo "room_computer_surfing" "Return to your search engine." 0>>]<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: search for online makeup tutorial
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Youtube">>
<<set $player.inside = true>>
<<if $roomchange == true>>
<<set $room_online_makeup_tutorial_start_firsttime = false>>
<<if !$player.flags.onlineMakeup>>
<<set $player.flags.onlineMakeup = true>>
<<set $room_online_makeup_tutorial_start_firsttime = true>>
<<setThreshold 'makeup' 'online_makeup' 'beginner_tutorial' true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01_makeup.png">>
<div id="invframe" class="scrolltext">
<<if $room_online_makeup_tutorial_start_firsttime>>
You start to search the internet for makeup tutorials. It does not take you very long to find a ton of them on Youtube. Ranging from beginner to advanced techniques. Perhaps even more significant is that many are intended for male to female. Looks like there are a lot of people interested in things like this, according to the video hit numbers. These tutorials seem easy enough for you. You need a handful of makeup articles and a makeup mirror or a good HD Webcam. Working with a mirror would be preferred, since they illuminate your face up in the right way without grilling your eyes.<br>
<br>
<<if setup.checkItemInInventory('makeup_mirror')>>
<<printThought $player "Should be easy enough with this makeup mirror.">>
<<elseif setup.computerHasUpgrade($computer, 'webcam')>>
<<printThought $player "Lucky! I just recently bought a really good Webcam.">>
<<elseif setup.checkItemInInventory('webcam')>>
<<printThought $player "I bought this Webcam, but it's useless until I install it!">>
<<else>>
<<printThought $player "I need to figure out a way to see myself...">>
<</if>>
<<else>>
You search your links for a makeup tutorial fitting your current level.<br>
<br>
<<if !(setup.checkItemInInventory('makeup_basic')||setup.checkItemInInventory('makeup_advanced')||setup.checkItemInInventory('makeup_expert'))>>
You need some makeup material to work with.<br>
<br>
<<printThought $player "Hmm, didn't <<=setup.getNpcName('npc_exgirlfriend', 'first')>> leave some stuff behind when she moved out?">><br>
<br>
<</if>>
<<if !setup.checkItemInInventory('makeup_mirror') && !setup.computerHasUpgrade($computer, 'webcam')>>
You need some way to see what you're doing, an HD webcam or, preferably, a makeup mirror.<br>
<br>
<<if !setup.computerHasUpgrade($computer, 'webcam') && setup.checkItemInInventory('webcam')>>
<<printThought $player "I bought this nice Webcam, but it's useless until I install it!">>
<</if>>
<</if>>
<</if>>
<br><br>
<<if (setup.checkItemInInventory('makeup_basic')||setup.checkItemInInventory('makeup_advanced'))||setup.checkItemInInventory('makeup_expert') && (setup.computerHasUpgrade($computer, 'webcam') || setup.checkItemInInventory('makeup_mirror'))>>
<br><br>
<<if $player.timebased.fatigue<=100>>
[<<moveTo "room_online_makeup_tutorial_course_1" "Basic makeup Tutorial (1 hour)" 3600>>]<br>
<<if setup.getTotalValue('makeup')<2>>
[@@.link_locked;I don't feel quite ready for the next tutorial... Maybe after I have more practice!@@]<br>
<<elseif setup.getTotalValue('makeup')>=2>>
[<<moveTo 'room_online_makeup_tutorial_course_2' 'Do the "Normal Makeup" tutorial (1 hour)' 3600>>]<br>
<</if>>
<<else>>
[@@.link_locked;You're too tired to do any tutorials@@]<br>
<</if>>
<<else>>
[@@.link_locked;You're unable to do the tutorials right now, since you're missing some things.@@]<<hint $options "To do makeup you need a way to see your reflection or the like, plus a makeup kit... didn't <<=setup.getNpcName('npc_exgirlfriend', 'first')>> leave something like that behind somewhere when she moved out?">> <br>
<</if>>
<br><br>
[<<moveTo "room_computer_surfing" "Return to your search engine." 0>>]<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: watch basic online makeup tutorial
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Youtube">>
<<set $player.inside = true>>
<<if $roomchange == true>>
<<setScene>>
<<set $scene.way = ''>>
<<if setup.checkItemInInventory('makeup_mirror')>>
<<applyExperience 'makeup' 2 'normal' $INCOGNITO>>
<<set $scene.way = 'mirror'>>
<<elseif setup.computerHasUpgrade($computer, 'webcam')>>
<<applyExperience 'makeup' 2 'little' $INCOGNITO>>
<<set $scene.way = 'webcam'>>
<</if>>
<<unlockMakeup $player 'nomakeupmakeup'>>
<<set $player.makeup.template = 'nomakeupmakeup'>>
<<set $player.makeup.messed = 0>>
<<updateBonusStats $player>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01_makeup.png">>
<div id="invframe" class="scrolltext">
This tutorial starts with the basics of makeup,
<<if setup.getTotalValue('makeup')<=1>>
which is great since you're totally new to this.
<<else>>
which is a good way to hone your below average makeup skills.
<</if>>
It focuses on 3 things. Upping your eyebrow skills, upping your eyeliner skills and the most basic contouring. You learn that your eyebrows alone can pretty much decide between a feminine or masculine facial structure. There are about a million different ways to do your eyebrows, but they all got one basic thing in common: no girl walks around with bushy eyebrows... according to the girl in the tutorial. Shave it, pluck it, shape it, just bring it under control. The second thing she goes into detail is eyeliner. According to her eyeliner changes your facial appearance more then any other makeup application. Lastly she talks about contouring, since male and female faces normally differ a lot in structure. Luckily for you, your face does have a feminine touch, so that's something you can work with. The general gist is to get rid of your "squareness" by applying makeup to make your features more round, triangular and feminine. The easiest way to do this is to work on your jawline and your nose with different makeup colours.
<<switch $scene.way>>
<<case 'webcam'>>
Using a webcam as a mirror is a less-than-perfect solution, but it works.<br>
<br>
<<printThought $player "Maybe I should get myself makeup mirror. The slight lag is bugging me.">><br>
<br>
<<case 'mirror'>>
You put your portable makeup mirror next to your computer and try to replicate the techniques shown in the video with varying results.<br>
<br>
<<printThought $player "Is... is that really me? I can look like this?">><br>
<br>
<</switch>>
Thanks to the tutorials step by step nature, you manage to pull off what is shown in the video; the infamous "no makeup" makeup.<br>
<br>
<<if setup.getTotalValue('feminization')>3>>
<<printThought $player "I don't think anyone is going to notice this one. Maybe I can go outside with this. And it kinda shaves 5 years away from my face. Nice.">><br>
<br>
<<else>>
<<printThought $player "I don't think anyone would notice this, though I still don't think I want to go outside with makeup on.">><br>
<br>
<</if>>
[<<moveTo "room_online_makeup_tutorial_start" "Return to the makeup tutorials." 0>>]<br>
<br>
[<<moveTo "room_computer_surfing" "Return to your search engine." 0>>]<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: watch intermediate online makeup tutorial
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Youtube">>
<<set $player.inside = true>>
<<if $roomchange == true>>
<<setScene>>
<<set $scene.way = ''>>
<<if setup.checkItemInInventory('makeup_mirror')>>
<<applyExperience 'makeup' 6 'normal' $INCOGNITO>>
<<set $scene.way = 'mirror'>>
<<elseif setup.computerHasUpgrade($computer, 'webcam')>>
<<applyExperience 'makeup' 6 'little' $INCOGNITO>>
<<set $scene.way = 'webcam'>>
<</if>>
<<unlockMakeup $player 'normalmakeup'>>
<<set $player.makeup.template = 'normalmakeup'>>
<<set $player.makeup.messed = 0>>
<<updateBonusStats $player>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01_makeup.png">>
<div id="invframe" class="scrolltext">
This tutorial assumes that you have certain knowledge about makeup. You go slowly through this tutorial, trying to follow everything step by step. Applying the skills you already learned you manage to do this without any problems and learn the make up template "normal makeup." <br>
<br>
<<switch $scene.way>>
<<case 'webcam'>>
Using a webcam as a mirror is a less-than-perfect solution, but it works.<br>
<br>
<<printThought $player "The lag is still very distracting. But the result is nothing to sneeze at!">><br>
<br>
<<case 'mirror'>>
You put your portable makeup mirror next to your computer and try to replicate the techniques shown in the video with varying results.<br>
<br>
<<printThought $player "Wow....Is... is that really me? I can look like this?">><br>
<br>
<</switch>>
[<<moveTo "room_online_makeup_tutorial_start" "Return to the makeup tutorials." 0>>]<br>
<br><br>
[<<moveTo "room_computer_surfing" "Return to your search engine." 0>>]<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div><<setScene>>
<<set $scene.from_hub = true>>
<<set $scene.shoes = setup.getItemObjFromType("shoes")>>
<<if $scene.shoes.hasOwnProperty("heels")>>
<<set $scene.heelsDiff = setup.getTotalValue("heels") - $scene.shoes.heels.difficulty>>
<<if $scene.heelsDiff >= 0>>
Though you are by now quite capable in walking in <<=$scene.shoes.name>> it may yet be prudent to get a ride rather than walk far in them.
<<elseif $scene.heelsDiff < -2>>
You are barely even standing in your heels without falling, walking to your destination seems like an exhaustingly bad idea that is liable to take forever.
<<else>>
You're a bit unsteady in your current heels which will greatly increase your travel time. Maybe it would be better to spring for a ride rather than try to walk to your destination... unless you really want the practice?
<</if>>
<br><br>
<</if>>/*#
#desc: city location select
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Inner City">>
<<include enterroom>>
<<set $player.inside = false>>
<<if ( (getUTCHours($now)>=6) && (getUTCHours($now) <= 20) )>>
<<set _tmpImage = "./images/locations/city_skyline.png">>
<<else>>
<<set _tmpImage = "./images/locations/city_skyline_night.png">>
<</if>>
<<if !$currentTasks.hasOwnProperty("manager_morning_inspection_task") && $npc_manager.stage > 1>>
<<if !$currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<set $scene.dest = "room_citymap">>
<<moveTo "debug_island">>
<</if>>
<</if>>
<<initRoom>>
<<createBGR _tmpImage>>
<div id="invframe" class="scrolltext">
Where do you want to go next?<br>
<br>
<<include travelHeader>><br>
<<printTravel "room_foyer" "Home" 600>><br>
<<if Math.round($player.timebased.fatigue) >= 100>>
[@@.link_locked;You are too exhausted to do anything but head directly home.@@]
<<elseif !setup.checkOutsideDecency($player)>>
[@@.link_locked;You are no comfortable being out and about in your current outfit and decide you should head directly home to change.@@]
<<else>>
<<printTravel "company_lobby" "Work" 600>><br>
<<printTravel "room_mall" "Mall" 600>>
<<if $player.flags.fem_style.underwear == "money" && $player.flags.commando>>
<<hint $options "I'm not employed in a special forces unit so I need to buy some new underwear before I head to work.">>
<</if>>
<br>
<<if $player.locations.psychiatrist>>
<<set _str = "Office of <<=$npc_psychiatrist.call>> <<=$npc_psychiatrist.last_name>>">>
<<printTravel "room_psychiatrist_lobby" _str 600>><br>
<</if>>
<<if $player.locations.theusualplace>>
<<printTravel "room_usual_place_outside" "Outside of the Usual Place." 600>><br>
<</if>>
<<printTravel "room_student_quarter" "The Student Quarter" 600>><br>
<<if $player.locations.gym>>
<<printTravel "room_gym_lobby" '<<printShopName "gym" true>>' 600>><br>
<</if>>
<</if>>
</div>/*#
#desc: use a rideshare to get around the city
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Inside an Automated Taxi Cab">>
<<include enterroom>>
<<set $player.inside = false>>
<<if $roomchange==true>>
<<setScene>>
<<set $player.money.total -= $scene.price>>
<</if>>
<<initRoom>>
<<createBGR "./images/locations/TODO_taxi_interior.png">>
<div id="invframe" class="scrolltext">
/%TODOfuture: enhance this + random events allow riding when negative cash for bimbo + alternate payment? %/
You hail an automated cab and sit down for a swift, stress-free and uneventful trip to your destination.<br>
<br>
After depositing the price of the fare you are allowed to step out of the vehicle and it speeds away.<br>
<br>
[<<moveTo $scene.destination "Arrive at your destination." 0 "<<set $scene.rideshare = true>>">>]
</div>/*#
#desc: city location student quarters
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Student Quarter">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/city_student_quarter.png">>
<div id="invframe" class="scrolltext">
The Student Quarters are in their usual perpetual twilight beneath the downtown plate built above it. Even with artificial light the smog is thick enough to make it difficult to figure out what time of day it is. Not that it matters, since this part of town is busy no matter the hour.<br>
<br>
<<if $player.locations.home_technician>>
[<<moveTo "room_hallway_technician" "Visit The Technomancer's Cave" 300>>]<br>
<</if>>
<<if $player.locations.bodyshop>>
<<if $player.flags.bodyshop.discovered>>
[<<moveTo "room_bodyshop_exterior" "Visit the bodyshop" 300>>]<br>
<<elseif $player.flags.bodyshop.unlock_source == "technician">>
[<<moveTo "room_bodyshop_alleyway" 'The alleyway <<=setup.getNpcName("npc_technician", "first")>> told you about.' 300>>]<br>
<<elseif $player.flags.bodyshop.unlock_source == "female">>
[<<moveTo "room_bodyshop_alleyway" "A strange alleyway" 300>>]<br>
<<else>>
[<<moveTo "room_bodyshop_alleyway" "A strange alleyway" 300>>]<br>
<</if>>
<</if>>
<br>
[<<moveTo "room_citymap" "Return to the inner city" 300>>]
</div>/*#
#desc: hallway in front of the technicians apartment
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_hallway_technician')>>
<<set $player.location to "Trenner Hosing Inc Building 23, Floor 255">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/city_student_quarter_hallway.png">>
<div id="invframe" class="scrolltext">
The monolithic structure of these giant housing blocks makes you thankful that you managed to get an flat in the inner city. These gigantic maze-like buildings are the pinnacle of structural and civil engineering, but also of uncontrolled and unmonitored capitalistic sprawl.<br>
<br>
You think you've reached <<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment but, then again, every floor looks the same in here.<br>
<br>
<<if _nextdate == null>>
[@@.link_locked;You knock but it would appear that nobody is h-me.@@]
<<elseif setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondstoDate($now,_nextdate)>>
<<if _tmpSeconds > 600>>
You're pretty early for the game and it looks like <<=setup.getNpcName('npc_technician', 'first')>> isn't home yet.<br>
<br>
[<<moveTo "room_hallway_rpg_wait" "Wait around for her to return." 0>>]
<<else>>
[<<moveTo "room_hallway_technician" "Ring the Bell." _tmpSeconds>>]
<</if>>
<</if>>
<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter" 300>>]
</div>/*#
#desc: wait outside technicians apartment before game
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_hallway_technician')>>
<<set $player.location to "Trenner Hosing Inc Building 23, Floor 255">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/city_student_quarter_hallway.png">>
<div id="invframe" class="scrolltext">
Unfortunately you get chased out of the hallway by some over-enthusiastic hall monitor, but you manage to find a lounge down on a different floor to hang out. Waiting until it's time to game you hurry back up to <<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.<br>
<br>
<<set _tmpSeconds = setup.secondstoDate($now,setup.checkTaskLocationTime('room_hallway_technician'))>>
[<<moveTo "room_hallway_technician" "Ring the Bell." _tmpSeconds>>]
</div>/*#
#desc: outside apparel store
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<initJquery>>
<<if $roomchange==true>>
<<if !$player.flags.firstWorkDayShopvisit && ($player.flags.fem_style.underwear == "") && ($now.getUTCDate()==29) && ($now.getUTCMonth()==5) && ($now.getUTCHours()<12)>>
<<set $player.flags.firstWorkDayShopvisit = true>>
<<initRoom>>
<<moveTo "event_general_storevisit_1_1">>
<</if>>
<<set $scene.discountprice = setup.getItemObj('red_formal_dress').price*.2>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_fashion_store.png">>
<div id="invframe" class="scrolltext">
<<if ($now.getUTCDate()==28) && ($now.getUTCMonth()==5)>>
You find a sign posted on the door of the store. It reads "The <<printShopName 'mall_apparel_store'>> is currently closed while we re-organize to better serve your needs! Please come back tomorrow!" <br>
<br>
<<elseif ($now.getUTCDate()==29) && ($now.getUTCMonth()==5) && ($now.getUTCHours()<12)>>
You find a sign posted on the door of the store. It reads "We are terribly sorry, but the inventory took longer then expected. The <<printShopName 'mall_apparel_store'>> will be open after midday today. Thank you for your understanding. Please come back this afternoon!".<br>
<br>
<<elseif $currentTasks.hasOwnProperty("party_dress") && !($currentTasks["party_dress"].finished || setup.checkItemOwned("red_formal_dress"))>>
Looking through the normal clothing you don't find anything that would really be "formal party" appropriate; about to give up when you round a corner and find yourself facing a mannikin dressed in a gorgeous sexy red dress.<br>
<br>
<<printThought $player "This would be perfect for the party!, And it even comes with matching shoes!">><br>
<br>
To your further shock there's a sign noting that the whole outfit is on 80% markdown clearance for only <<=$scene.discountprice>> credits!<br>
<br>
<<if ($player.money.total-$scene.discountprice)>=($player.money.maxcredit*-1)>>
[<<moveTo "purchase_formal_party_dress" "Buy it." 30>>]
<<else>>
[@@.link_locked;You do not have the funds to afford even the discounted price.@@]
<</if>>
<br><br>
<<else>>
You enter the <<printShopName 'mall_apparel_store'>>, a general apparel store. At the entrance of the store is the Female Section, with quite the selection of different clothes and undergarments. Nothing too fancy or unusual.
<<if setup.getTotalValue('feminization')>=10>>
You could wear most of these clothes outside, though you kind of think they're a bit too boring for your taste.
<<elseif setup.getTotalValue('feminization')>=3>>
You'd like to check a few of these items out, maybe to wear them underneath your normal clothes ... or at home.
<</if>>
On the far end of the store is the male section, which is less than half the size of the female section.
<<if setup.getTotalValue('feminization')>=10>>
Not, that you're interested in these kinds of clothes anymore.
<<else>>
Talking about inequality.
<</if>>
There are some <<moveTo room_mall_apparel_store_changing_booths "changing booths" 30>> spread through the store.<br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<set _daysTo = setup.daystoDate($now, setup.getTaskDueDate('task_uniform_upgrade'))>>
Mindful of your uniform upgrade assignment due <<if _daysTo == 1>>in 1 day<<elseif _daysTo == 0>>today<<else>>in <<=_daysTo>> days<</if>> you look around the boutique but
<<if setup.getTotalValue("feminization") >= 10>>
you already know they don't stock the sort of thing <<if setup.getTotalValue("submission") <= 10>>you need<<else>>your Mistress desires<</if>>.
<<else>>
looking high and low doesn't turn up anything that you think would pass muster with your <<=setup.getNpcName('npc_manager', 'title')>>.
<</if>>
<br><br>
<</if>>
<<printShop 'room_mall_apparel_store' 'mall_apparel_store' $shopStatus>>
<br><br>
<<include thoughts_current>>
<</if>>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: apparel store changing booths
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include checkPossibleVoluntary>>
<<if $roomchange==true>>
<<set $scene.voluntaryFollowupScene = "room_mall_apparel_store">>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
You're currently inside the changing booth of <<printShopName 'mall_apparel_store'>>.<br>
<br>
<<include glanceVoluntary>>
<<include thoughts_current>><br>
<br>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_mall_apparel_store" "Return to <<printShopName 'mall_apparel_store'>>." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
[@@.link_locked;You're not going to leave the changing booth dressed like this.@@]
<</if>>
<<include triggerVoluntary>>
</div>/*#
#desc: purchase + change into red party dress
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<initJquery>>
<<if $roomchange==true>>
<<removeEverythingButUnderwear $player $now>>
<<set $player.money.total -= $scene.discountprice>>
<<addItem "red_formal_dress">>
<<wearItem $player $now "red_formal_dress" true>>
<<addItem "red_formal_heels">>
<<wearItem $player $now "red_formal_heels" true>>
<<set $scene.makeup = setup.getCurrentMakeup($player)>>
<</if>>
<<set _tmpVal = setup.checkOutsideDecency($player)>>
<<set $player.location to "<<printShopName 'mall_apparel_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
Taking the dress and matching heels up to the front your heart races as you purchase them, scarcely believing you got such a deal as you rush for the changing room.<br>
<br>
Slipping out of your clothes you take a deep breath and put on the dress, avoiding looking into the mirror until you've finished slipping on the matching high-heel shoes.<br>
<br>
Looking at your reflection your jaw almost drops - you look gorgeous.
<<if setup.getCurrentMakeup($player) != "">>
<<if $player.makeup.messed > 25>>
The only flaw the fact that your makeup is showing the day's wear.
<<else>>
Your makeup taking the elegant look of your dress and heels and pushing you over the top to perfect formal feminine beauty.
<</if>>
<<else>>
The only real flaw your lack of makeup.
<</if>>
<br><br>
<<if setup.getTotalValue("heels") < .5 * setup.getItemObj('red_formal_heels').heels.difficulty>>
You wobble a bit atop the heels - they are going to take up most of your focus to walk in properly... here's hoping the party has some chairs.
<<elseif setup.getTotalValue("heels") < setup.getItemObj('red_formal_heels').heels.difficulty>>
Taking a few experimental steps proves that the heels definitely require focus, but you should be able to handle it if you take things slow and careful.
<<else>>
You give a confident twirl, the dress floating out away from your legs as you delicately balance atop the steep heels.
<</if>>
<br><br>
The "outfit" part of preparing for the party sporting a big old check you marshal your thoughts -
<<if !setup.checkTaskReason("party_dress","playerClean")>>
you really need to wash up before the party, you kind of stink.
<<else>>
<<if setup.checkTaskReason('party_dress','fancyMakeup')>>
<<if $player.makeup.messed > 25>>
you think your makeup style is good, but it's showing a bit of wear, you should fix that.
<<else>>
you think you're ready for the party.
<</if>>
<<else>>
You just need to apply some "appropriate" makeup and you should be ready for the party.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_mall_apparel_store" "Return to <<printShopName 'mall_apparel_store'>>." 30>>]
</div>/*#
#desc: discover "new" barbershop, greeted by barber
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $player.locations.beautyparlor = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barber', 'first'))>> Barber Shop for Men?">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_barbershop.png">>
<div id="invframe" class="scrolltext">
Ah, yes, walking through the mall towards your barbershop of choice you fondly remember <<=ps(setup.getNpcName('npc_barber', 'first'))>> Barber Shop for Men. And running your hand through your chaotic hair it seems like another visit has been long overdue. It must have been ages since you've last visited <<=setup.getNpcName('npc_barber', 'first')>>. But even with all those strange changes in your life lately you can still count on <<=setup.getNpcName('npc_barber', 'first')>> being the same as always. Caught up in your thoughts you enter the location. Something seems to be off. Some of your senses send the wrong kind of information to your brain. The smell is supposed to be a mixture of cut hair, beard oil and manliness, but currently it's more like a sweet fragrance, like the embrace of a beautiful woman and kittens playing on the floor mixed with cotton candy and happiness. Gone is the dimly lit atmosphere of a manly retreat where you could be alone together and talk about politics and sport ~ though it's not like you ever cared for either of these things ~ and replaced it with upbeat music and friendly chatter about who knows what. This does not seem right. You finally snap out of your thoughts of the past back into reality and take a step outside.<br>
<br>
<<printThought $player "No, this can't be right. But still, this is definitely the right location...">><br>
<br>
You read "Dye Me Crazy: Beauty Parlor" in a girly pink font over the storefront. Checking the shops to either side confirms that yes, this is the right location. Damn it, it looks like <<=ps(setup.getNpcName('npc_barber', 'first'))>> Barber Shop for Men is no more. Well, fuck. You're about to give up and leave in search of a new place where you can cut your hair when you suddenly hear a recognizable yet strangely unfamiliar voice behind you.<br>
<br>
"@@.npc_barber;Like, oh my god!
<<if $player.flags.fem_style.name != "">>
<<=$player.original_first_name>>
<<else>>
<<=$player.first_name>>
<</if>>
darling, is that you?@@", bursts out from behind you loud like a horn as two trunk-like arms with fingers like ... really big fingers ... or like slightly smaller trunks ... look not everything has to be an allegory for something ... grab you from behind.<br>
<br>
[<<moveTo "room_mall_manlystan1" "Turn around." 300>>]
</div>/*#
#desc: "meet" barber
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
Hulking at roughly two meters and 4 centimeters, you simply let it happen. Given the size difference there's not much you can do at the moment so you just wait until <<=setup.getNpcName('npc_barber', 'first')>> puts you down and starts to blush.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "male" "unisex">>
"@@.npc_barber;Oh my god, I'm so sorry. It seems like I've messed up and lost it for a moment, without even considering if you'd be repulsed by unwanted physical contact. It's just I thought I lost you as a valued customer when I changed this place. But my psychiatrist told me to be true to my feelings, so that's what I try to do now. Then again I should consider others' feelings as well. Ah, life gets so complicated!@@"<br>
<br>
He really seems to be in an emotional predicament. You assure him that it's alright. Maybe to be a little less forceful next time, but it's okay.
<<if $player.flags.fem_style.name != "">>
You also explain, that you now have a different name.
<</if>>
<<case "female">>
"@@.npc_barber;Oh my goodness. You look amazing with a capital A!@@"<br>
<br>
He abruptly stops and takes his hands off you.<br>
<br>
"@@.npc_barber;Oh, I am so sorry. It seems like I've messed up and lost it for a moment, without even considering if you'd be repulsed by unwanted physical contact. But I was so happy to still realise it was you, even though you've changed quite a bit. Oh, who am I to talk about change, amirite?@@"<br>
<br>
You assure him that it's alright. Maybe to be a little less forceful next time, but it's okay.
<<if $player.flags.fem_style.name != "">>
You also explain, that you now have a different name.
<</if>>
<</switch>>
<br><br>
"@@.npc_barber;It's just, I'm so goddamn happy when one of my old clients shows up. Most of them disappeared for good when I changed the place a few months ago.@@"<br>
<br>
<<printThought $player "Oh, I guess it has been a few months since I've been here last.">><br>
<br>
You assure him that it has nothing to do with the changes, you simply did not find time for the barber lately.<br>
<br>
"@@.npc_barber;Darling, that is something someone can hardly overlook. Your hair is like a piece of modern art: in dire need of an explanation. But your prayers have been answered! I'm always up for a challenge. You know what? If you let me work on that canvas you call hair without worrying too much of what might end up on your head, I'll give you one treatment for free. Or you could simply order what's on the menu. Don't worry about the hair length. Despite everything else the goddess of business has been kind to me lately, so I bought myself one of these fancy Nanorobotic hives that can extend your hair length and volume to a level needed for any haircut. The future sure is fancy darling! So, what do you say? For old times sake?@@", he says while extending his hand.<br>
<br>
[<<moveTo "room_mall_manlystan2" "Shake his hand and accept the offer." 300>>]<br>
[<<moveTo "room_mall_beautyparlor" "Decline the offer but take him up on his suggestion to look at the menu." 300>>]<br>
</div>/*#
#desc: shake hands with barber, accept offer of hairstyling
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
/%<<changeHair $player "pixiecut" "blonde">>%/
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
You feel bad for <<=setup.getNpcName('npc_barber', 'first')>>, since it seems like he lost most of his patrons due his transition, so you agree to be his canvas. As he hears your answer his mood seems to lighten up a lot.<br>
<br>
"@@.npc_barber;Oh, this is going to be awesome! Follow me inside "Dye Me Crazy," a beauty parlor where everyone can aspire to be anything!@@", <<=setup.getNpcName('npc_barber', 'first')>> puts a washbasin behind your head and starts to rinse your hair.<br>
<br>
"@@.npc_barber;You have to take better care of your hair, darling. Too many men your age can start balding since they do not tend to their hair's needs in time. Well, not that baldness would be a problem in the age of nanotechnology, but why spend that much if you don't have to? I'm not going to radically change your hair length right now, but maybe you want to try another colour? These new colours are pure magic, I simply massage them into your pericranium and your hair will keep the new colour for years. You don't have to be afraid to wash it either and you can simply come here if you want to change the colour. So, what should it be?@@"<br>
<br>
[<<moveTo 'room_mall_manlystan3' "No, let's stick with brown." 600 '<<set $room_mall_manlystan3_color="brown">>'>>]<br>
<<if (setup.getTotalValue('feminization')>0) || (setup.getTotalValue('bimbofication')>1)>>
[<<moveTo 'room_mall_manlystan3' "Maybe something complete different? Let's try blonde?" 600 '<<set $room_mall_manlystan3_color="blonde">>'>>"]<br>
<</if>>
[<<moveTo 'room_mall_manlystan3' "I want to look mystical and mysterious. Let's go with black!" 600 '<<set $room_mall_manlystan3_color="black">>'>>]<br>
<<if (setup.getTotalValue('feminization')>1) || (setup.getTotalValue('bimbofication')>2)>>
[<<moveTo 'room_mall_manlystan3' "Hmm... I always wanted to be a redhead..." 600 '<<set $room_mall_manlystan3_color="red">>'>>]<br>
<</if>>
<<if (setup.getTotalValue('feminization')>3) || (setup.getTotalValue('bimbofication')>4)>>
[<<moveTo 'room_mall_manlystan3' "Hmm... maybe a little bit punky? Let's go with pink." 600 '<<set $room_mall_manlystan3_color="pink">>'>>]<br>
<</if>>
</div>/*#
#desc: barber styles and colours your hair first time
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<set _x = setup.removeStress($player,5)>>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "male" "unisex">>
<<changeHair $player "pixiecut" $room_mall_manlystan3_color>>
<<case "female">>
<<changeHair $player "shoulderlength" $room_mall_manlystan3_color>>
<</switch>>
<<if setup.getTotalValue('feminization')<3>>
<<applyExperience 'humiliation' 2 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
<<switch $room_mall_manlystan3_color>>
<<case 'brown'>>
"@@.npc_barber;Even though you're sticking with what you already have I'm still going to massage something for your skin and hair into that head of yours, okay? So just lie back and relax@@", <<=setup.getNpcName('npc_barber', 'first')>> explains, while kneading your head with his strong, yet gentle hands.
<<default>>
"@@.npc_barber;Well then lie back and relax while I massage this new colour into that messy hair of yours.@@", <<=setup.getNpcName('npc_barber', 'first')>> explains, while kneading your head with his strong, yet gentle hands.
<</switch>>
You're getting really sleepy while relaxing. His hands are pure magic and help you to undo some of the stress you've piled up lately, and after a while of trying to stay awake you doze off. You awaken to a big hand shaking your shoulder.<br>
<br>
"@@.npc_barber;Wake up, <<=$player.first_name>>. We're done, darling. Rise and smell the ashes!@@"<br>
<br>
You open your eyes to inspect what <<=setup.getNpcName('npc_barber', 'first')>> did to your messy hair. You're startled for a short moment, as you realise that your <<=$room_mall_manlystan3_color>> hair
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "male" "unisex">>
has been cut into a rather feminine pixie cut hair style.
<<case "female">>
is now shoulder long with a really feminine cut. He didn't lie when he said longer hair is possible, but this... this is almost magic!
<</switch>>
<br><br>
<<if setup.getTotalValue('feminization')<3>>
<<set _tmpText = "Oh god. This looks way too girly.">>
<<if $room_mall_manlystan3_color == 'pink'>>
<<set _tmpText += " And why did I choose the pink, of all colors??">>
<</if>>
<<printThought $player _tmpText>><br>
<br>
<<=setup.getNpcName('npc_barber', 'first')>> notices the distress your new hair seems to cause you.<br>
<br>
"@@.npc_barber;If it's not to your liking we can change it back to the way it was...@@"<br>
<br>
Remembering how happy <<=setup.getNpcName('npc_barber', 'first')>> was seeing you again you assure him it's just what you've always wanted. You just need a little time to adjust to it. You decide to keep this haircut for the time being.
<<else>>
<<printThought $player "Oh my. I did not know I could look this cute.">><br>
<br>
"@@.npc_barber;So you like it? Thank heavens, I was afraid you might find it a touch too girly. These unisex cuts are all the craze though at the moment.@@"<br>
<br>
You thank him for his time and effort.
<</if>>
<br><br>
[<<moveTo "room_mall_beautyparlor" "Continue" 300>>]
</div>/*#
#desc: visit mall beauty parlor
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
You enter the "Dye Me Crazy" beauty parlor. As usual <<=setup.getNpcName('npc_barber', 'first')>> greets you with a smile from ear to ear and a heartfelt hug.<br>
<br>
<<if !$npc_barber.flags.makeup_options && setup.getCurrentMakeup($player) != "">>
Taking a step back he looks at your face, seeming to notice your makeup for the first time.<br>
<br>
[<<moveTo "room_mall_beautyparlor_makeup_intro" "Continue." 30>>]
<<elseif setup.getCurrentMakeup($player) == "ultimatebimbo" && $player.makeup.unlocked.moviestar != true>>
<<=setup.getNpcName('npc_barber', 'first')>> looks at you with wide-eyed horror.<br>
<br>
"@@.npc_barber;Oh no! Were you, like, assaulted by a bunch of slutty clowns or something? Your makeup it's just... I don't even have the words! Please, if you want to go heavy let me help, I can give you a look that will be, classy and beautiful. You'll look like you were painted by a great artist, instead of troweled over by a bricklayer.@@"<br>
<br>
You find yourself being shuffled towards a chair by the insistently enthusiastic stylist.<br>
<br>
[<<moveTo "room_mall_beautyparlor_makeup_unlock_moviestar" "Continue." 30>>]
<<else>>
<<if setup.getCurrentMakeup($player) == "ultimatebimbo">>
<<=setup.getNpcName('npc_barber', 'first')>> looks at your makeup and shakes his head, obviously disappointed at your garish choice.<br>
<br>
<<elseif $player.makeup.messed > 25>>
<<=setup.getNpcName('npc_barber', 'first')>> looks at your makeup with mild horror, clearly put off by how ruined it has become from wear.<br>
<br>
<<printThought $player "Hmm, I guess I really should fix things up...">><br>
<br>
<</if>>
"@@.npc_barber;<<=$player.first_name>> darling, what can I do for you?@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<set _daysTo = setup.daystoDate($now, setup.getTaskDueDate('task_uniform_upgrade'))>>
Mindful of your uniform assignment due <<if _daysTo == 1>>in 1 day<<elseif _daysTo == 0>>today<<else>>in <<=_daysTo>> days<</if>> you consider changing your hair.
<<if $player.flags.uniform_upgrade.fully_understood_contract>>
You recall from the contract, however, that hair, being part of your body, is covered by a different section and not technically considered a portion of your "uniform."
<<else>>
You're starting to consider if one of the new 'do's would qualify when the shopkeeper swings by.<br>
<br>
"@@.npc_barber;Thinkin' about a new haircut? I tell you, there's nothing like it, it's totally different than just changing your outfit.@@"<br>
<br>
His comment makes you realise that hair isn't technically clothing. Knowing how rule-based everything seems to be you're willing to bet that means it wouldn't qualify as a uniform "upgrade."
<</if>>
Not wanting to get in trouble due to another loophole you decide you should probably look somewhere else to find a suitable uniform upgrade.<br>
<br>
<</if>>
<<if $npc_barber.flags.makeup_options>>
[<<moveTo "room_mall_beautyparlor_haircut" "Get a haircut." 30>>]
[<<moveTo "room_mall_beautyparlor_makeup_1" 'Have <<=setup.getNpcName("npc_barber", "first")>> do your makeup.' 0>>]
<<else>>
<<include haircut_menu>>
<<if $player.flags.fem_style.makeup != "">>
<br><br>
[<<moveTo "room_mall_beautyparlor_makeup_intro_alt" "Ask him about makeup." 30>>]
<</if>>
<</if>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
</div>/*#
#desc: beauty parlor haircut
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
"@@.npc_barber;Considering a haircut<<=$player.first_name>>? Splendid, what are you thinking?@@"<br>
<br>
<<include haircut_menu>><br>
<br>
[<<moveTo "room_mall_beautyparlor" "Style something else." 30>>]
</div>/*#
#desc: beauty parlor haircut options
#status: RELEASED 0.6.0.0
#*/
You ponder your options. Your hair is currently <<=$player.hair.color>> and
<<switch $player.hair.length>>
<<case 0>>very short in length.
<<case 1>>short in length.
<<case 2>>reaches the top of your shoulders.
<<case 3>>reaches just under your shoulder-blades.
<<case 4>>reaches your hips with ease.
<<case 5>>reaches your ankles, so you have to watch out not to trip over it.
<</switch>><br>
<br>
<<getHairCut $player>>/*#
#desc: choose colour for haircut
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
"@@.npc_barber;Very well. And what colour would you like?@@"<br>
<br>
<<getHairColor $player $haircuttime $haircutcost $haircutstyle>>
<br>
[<<moveTo "room_mall_beautyparlor" "You've changed your mind." 0>>]
</div>/*#
#desc: choose hairstyle
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $player.money.total -= $haircutcost>>
<<changeHair $player $haircutstyle $haircutcolor>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
"@@.npc_barber;And we're done! How do you like it?@@"<br>
<br>
[<<moveTo "room_mall_beautyparlor" "Continue." 0>>]
</div>/*#
#desc: abort hairstyle choice for being too feminine
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
You take a closer look at the <<=$haircutstyle>>.<br>
<br>
<<printThought $player $haircutthought>><br>
<br>
[<<moveTo "room_mall_beautyparlor" "Continue to check the menu." 0>>]
</div>/*#
#desc: stan introduces you to makeup options
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $npc_barber.flags.makeup_options = true>>
<<set $scene.makeup = setup.getCurrentMakeup($player)>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barber', 'first')>> examines your makeup.<br>
<br>
<<if $player.makeup.permanent == "">>
<<if $player.makeup.messed >= 50>>
"@@.npc_barber;Oh my, your makeup is such a mess! You should really get something done before you leave.@@"
<<else>>
<<if $player.makeup.messed >= 25>>
"@@.npc_barber;Hmm, your makeup is showing a bit of wear, we could always refresh it... or go with something totally different!@@"
<<else>>
"@@.npc_barber;Your makeup is looking in good condition, very competently done. Were you thinking of trying something different?@@"
<</if>>
<</if>>
<<elseif $player.makeup.template != "">>
<<if $player.makeup.messed >= 50>>
"@@.npc_barber;Oh my, your makeup is such a mess! You should really get something done... or strip it off and go with the permanent makeup I can see peeking out.@@"
<<else>>
<<if $player.makeup.messed >= 25>>
"@@.npc_barber;Hmm, your makeup is showing a bit of wear, and the permanent underlayer is peeking through. Should either remove or refresh for sure.@@"
<<else>>
"@@.npc_barber;Your makeup is looking in good condition, were you thinking of trying something different?@@"
<</if>>
<</if>>
<<else>>
"@@.npc_barber;My my, is that permanent makeup? Well know that I can put something over top, as well as having the equipment to replace it with something else entirely, just name the style and its yours permanently!@@"
<</if>>
<br><br>
<<switch $scene.makeup>>
<<case "nomakeupmakeup">>
"@@.npc_barber;What you have now is quite subdued, but I think you could pull of something a bit bolder, don't you think?@@"
<<case "normalmakeup">>
"@@.npc_barber;That look is quite nice on you. Very feminine... but I think we can push it a bit further, don't you think?@@"
<<case "expertmakeup">>
"@@.npc_barber;A very bold look, I like it... but it's maybe a bit much for everyday wear.@@"
<<case "moviestar">>
"@@.npc_barber;This style is utterly stunning on you... though I will note the maintenance can be a bit of a burden.@@"
<<case "ultimatebimbo">>
"@@.npc_barber;This... why would you do this to your lovely face? Oh, this is just...@@" He shudders.
<<case "sissy_doll">>
"@@.npc_barber;I have to say, on most people that much makeup would be a bit much but you just look so adorably cute!@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<br><br>
"@@.npc_barber;So... what are you think of? Your face is a canvas of near infinite possibility...@@"<br>
<br>
[<<moveTo "room_mall_beautyparlor_makeup_1" "View your options." 0>>]
</div>/*#
#desc: ask stan about makeup
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $npc_barber.flags.makeup_options = true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_barber', 'first')>> if the parlor also offers makeup services?<br>
<br>
"@@.npc_barber;Of course my dear! Oh, you would just look lovely with a bit of blush and lipstick... Not that you are not adorable already but, well... one can never be too beautiful, right?@@"<br>
<br>
[<<moveTo "room_mall_beautyparlor_makeup_1" "View your options." 0>>]
</div>/*#
#desc: stan gives you moviestar makeup
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $player.makeup.template = 'moviestar'>>
<<set $player.makeup.messed = 0>>
<<set $npc_barber.flags.moviestarunlock = true>>
<<if setup.getTotalValue("makeup") == 20>>
<<set $scene.unlockedmoviestar = true>>
<<unlockMakeup $player 'moviestar'>>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barber', 'first')>> helps you up into the chair and takes a deep breath.<br>
<br>
"@@.npc_barber;Now just relax and let the magic happen!@@"<br>
<br>
<<if $scene.unlockedmoviestar>>
With all your experience doing your makeup you find you're actually able to follow along as <<=setup.getNpcName('npc_barber', 'first')>> gives you a movie-star quality makeover. By the time you step out of the chair with your dazzling new look you're pretty sure you could reproduce the look on your own...
<<else>>
He carefully cleans your face before deploying a dizzying array of creams, paints, mascara and some things you don't even recognise, your face transforming from you into... well, still you but like the special edition high definition post-production version of yourself.<br>
<br>
<<printThought $player "Wow, how can he remember all that? I can barely imaging being skilled enough to do all that...">>
<</if>>
<br><br>
"@@.npc_barber;There we go!@@" He states with pride before helping you off the chair.<br>
<br>
[<<moveTo "room_mall_beautyparlor" "Continue." 0>>]
</div>/*#
#desc: beauty parlor makeup selection
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
"@@.npc_barber;Looking for some professional makeup? Well you have come to the right place, just tell me what style you have in mind. Once you find something you like note that we can also make it permanent with state of the art nanobots. It certainly makes the morning routine faster! And you can always style over it to mix things up.@@"<br>
<br>
<<printSalonMakeup $player>><br>
<br>
[<<moveTo "room_mall_beautyparlor" "Style something else." 30>>]
</div>/*#
#desc: beauty parlor makeup application
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $player.makeup.messed = 0>>
<<if $scene.permanent>>
<<set $player.makeup.template = ''>>
<<set $player.makeup.permanent = $scene.style>>
<<else>>
<<set $player.makeup.template = $scene.style>>
<</if>>
<<set $player.money.total -= $scene.price>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlor">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_beautyparlor.png" "./images/characters/npc_barber.png">>
<div id="invframe" class="scrolltext">
<<if $scene.permanent>>
Nodding at your selection <<=setup.getNpcName('npc_barber', 'first')>> takes you over to a machine, first showing you a render of how you will look with the new style and then holding up the smooth, hard mask that will clean your face and apply the nanites for your new "permanent" style.<br>
<br>
<<switch $scene.style>>
<<case "" ''>>
"@@.npc_barber;Ready to start over with a blank slate? Remember that once you settle on a new style to hurry on back, having it permanently applied is just so much more convenient.@@"
<<case "nomakeupmakeup">>
"@@.npc_barber;A nice subtle default? A good choice, if a bit conservative.@@"
<<case "normalmakeup">>
"@@.npc_barber;A fine basic choice, though I think with your face you can afford to be a bit more daring - you'd make anything look good!@@"
<<case "expertmakeup">>
"@@.npc_barber;This is definitely a bold choice to make permanent, but I think it suits you.@@"
<<case "moviestar">>
"@@.npc_barber;Getting something this powerful is certainly a statement, you are going to turn so many heads!@@"
<<case "ultimatebimbo">>
<<=setup.getNpcName('npc_barber', 'first')>> sighs and shakes his head. "@@.npc_barber;I know they say the customer is always right but... well this seems like such a tragedy to paint over your lovely features with something so garish.@@"
<<case "sissy_doll">>
"@@.npc_barber;You know, normally I would recommend against something like this but on you it somehow fits, you are going to look so cute!@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.style>>
<</switch>>
<br><br>
The mask is slightly warm as it presses tight against your skin, and you feel an odd tingle as the nanites work their magic. Barely a minute or two later and the mask is gently removed and you stare out at your new appearance, in awe at the efficient power of technology.
<<else>>
Confirming your choice <<=setup.getNpcName('npc_barber', 'first')>> helps you into a chair and begins mixing colours in his expansive, professional makeup kit.<br>
<br>
<<switch $scene.style>>
<<case "" ''>>
"@@.npc_barber;Time to start over? Not that I'm complaining but this is quite simple to do, you really should learn to remove makeup yourself sometime...@@"
<<case "nomakeupmakeup">>
"@@.npc_barber;A simple look, but I will also admit a bit of a basic one for my skills. You could easily learn to do this by watching some online videos or such.@@"
<<case "normalmakeup">>
"@@.npc_barber;A nice basic look, well let's get to it then.@@"
<<case "expertmakeup">>
"@@.npc_barber;A bold look, but I think it will suit you.@@"
<<case "moviestar">>
"@@.npc_barber;Alright my dear, just sit back and I'll soon have you looking like the belle of the ball...@@"
<<case "ultimatebimbo">>
"@@.npc_barber;Tell me the truth, is this on a dare? The customer is always right, they say, but... well it is such a shame to paint over your lovely features like this.@@"
<<case "sissy_doll">>
"@@.npc_barber;Oh my, are you going to a party or something? This is such a cute look but... mmm, a bit much for day to day I would say...@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.style>>
<</switch>>
<br><br>
Working remarkably fast you are soon looking in the mirror at your new lovely face, thanking him for the expert work and rising to your feet.
<</if>>
<br><br>
[<<moveTo "room_mall_beautyparlor" "Style something else." 30>>]<br>
[<<moveTo "room_mall" "Leave the beauty parlor." 30>>]
</div>/*#
#desc: outside mall cafe
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You enter the Maid Cafe NewType IV.
<<if _nextdate == null>>
You're not scheduled to meet anyone here today. Of course you could just stay to soak up the atmosphere and
<<if setup.getTotalValue('feminization') < 2>>oogle
<<elseif setup.getTotalValue('feminization') < 4>>check out
<<elseif setup.getTotalValue('feminization') < 8>>admire
<<elseif setup.getTotalValue('feminization') < 15>>jealously admire
<<else>>fantasize becoming one of
<</if>>
the oh-so-cute waitress/maids while you relish a steaming hot cup of coffee goodness.<br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
[<<moveTo "room_mall_cafe_ask_uniform_upgrade" 'Order a coffee and ask <<=setup.getNpcName("npc_maid", "first")>> for suggestions on how to "upgrade" your uniform.' 60>>]<br>
<</if>>
<<elseif setup.compareDay($now,_nextdate)>>
You have plans to meet somebody here today at <<=setup.shortTime(_nextdate)>>.
<</if>>
<br><br>
<<include thoughts_current>>
<<if _nextdate == null>>
<<elseif setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondstoDate($now,_nextdate)>>
[<<moveTo "room_mall_cafe" "Wait." _tmpSeconds>>]<br>
<</if>>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: goto store first day as secretary to buy underwear
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'humiliation' 6 'normal' $SEEN_STRANGER>>
<</if>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set _tmpImage = "./images/locations/mall_outside.png">>
<<set _open = true>>
<<else>>
<<set _tmpImage = "./images/locations/mall_outside_night.png">>
<<set _open = false>>
<</if>>
<<set $player.location to "The Mall">>
<<include enterroom>>
<<initRoom>>
<<createBGR _tmpImage>>
<div id="invframe" class="scrolltext">
<<if getUTCHours($now)<6>>
You look around but it seems that it's way too early for anyone to be around.<br>
<br>
[<<moveTo "room_citymap" "Back to city centre" 300>>]
<<else>>
You think you finally found a solution that will not send you into hot water. Well, at least not too much. You have no idea how well your new Boss <<=setup.getNpcName('npc_manager', 'formal')>> will react to arriving late for work... on your very first work day. But the thought of going into work commando was simply too much so you decided to bet everything on a single roll of the dice and wait until the mall opened so you could finally buy some underwear before heading to work. You bet everything on this plan but now, as you read the sign on the door of <<printShopName 'mall_apparel_store'>> you swiftly realise that you have already lost.<br>
<br>
<<printThought $player "Oh, you have got to be kidding me!">><br>
<br>
The sign reads: "We are terribly sorry, but inventory has taken longer then expected. The <<printShopName 'mall_apparel_store'>> will be open after midday today. Thank you for your understanding. Please come back later today!" Your heart sinks. This is it. You have lost. Not only will you be late for work, but you're stuck going to work commando.<br>
<br>
<<printThought $player "No! I am not giving up this time! There has to be a solution! If they're taking inventory then someone has to be around here to help me out.">><br>
<br>
And as if Fortunas heart-warming smile graces you at that precise moment a frustrated looking female shopkeeper comes out of the shop for a smoke break. She greets you with a "How may I help you sir", though it is pretty apparent that she does not want to talk to you during her 5 minutes regulated union break. You start to plead, that all you need is some underwear, which gets you a confused look.<br>
<br>
Blowing out a sighing puff of smoke she explains to you that they are doing an inventory making now is pretty much the worst time to ask for anything. Desperate you take out a few credsticks, underlining your argument, that you're willing to pay more then the usual price in an attempt to bribe her... which actually seems to work.<br>
<br>
"Look, I can't give you anything from the official inventory, since it is all accounted for and the cashier system is disabled. But we found some unindexed boxes back in the warehouse and have no idea where they came from or who it ordered. I can get you a box labeled "underwear" for ... 40 creds, okay? No one will miss these, and you get what you wanted. But for all that's holy, do not start to change here, please... sir." <br>
<br>
<<printThought $player "I'd best make my choice now if I want to make it to work on time">><br>
<br>
[<<moveTo "event_general_storevisit_1_2" "Accept her offer." 120>>]<br>
[<<moveTo "room_citymap" "Decline her offer and leave." 120>>]
<</if>>
</div>/*#
#desc: accept offer of underwear from store clerk first day as secretary
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $player.money.total -= 40>>
<<addItem "black_fishnet_stockings">>
<<addItem "lace_garter">>
<<addItem "black_lace_thong">>
<<addItem "black_lace_bra">>
<</if>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set _tmpImage = "./images/locations/mall_outside.png">>
<<set _open = true>>
<<else>>
<<set _tmpImage = "./images/locations/mall_outside_night.png">>
<<set _open = false>>
<</if>>
<<set $player.location to "The Mall">>
<<include enterroom>>
<<initRoom>>
<<createBGR _tmpImage>>
<div id="invframe" class="scrolltext">
Handing over the credits you try to calm down as she places her smouldering cigarette down and heads back into the store.<br>
<br>
Reappearing a couple minutes later she hands you the box. "Here you go, one box of write-off underwear, enjoy!" <br>
<br>
Taking a final drag of her cigarette she stomps it out and turns to head back in just as you open the box to find... a black wad of fabric. Thinking there has been some mistake you pull things apart to find what appears to be a 4-piece set of black lace garters, thong, bra and fishnets...<br>
<br>
<<printThought $player "What, no, this can't be right, they're so skimpy, and feminine!">><br>
<br>
You try to catch her attention but she just looks back with a smirk. "Sorry, no returns and my break's over anyway. Now get out of here and do NOT change into these in public!" <br>
<br>
You continue to object but it falls on deaf ears as the door locks and you are left holding your box of bold, sexy lingerie...<br>
<br>
<<printThought $player "Shit, could that have gone any worse? And now I'm out of options, it's either wear these or go to work commando...">><br>
<br>
[<<moveTo "event_general_storevisit_1_3" "Find some place private to put them on." 300>>]<br>
[<<moveTo "company_lobby" "Just go to work commando." 300 "<<set $player.flags.fem_style.underwear = ''>><<set $player.flags.commando = true>>">>]
</div>/*#
#desc: put on underwear from store clerk first day as secretary
#status: STUB 0.5.0.0
#*/
<<if $roomchange==true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.flags.commando = false>>
<<setThreshold 'feminization' 'money' 'mall_panties' true>>
<<wearItem $player $now "black_fishnet_stockings" true>>
<<wearItem $player $now "lace_garter" true>>
<<wearItem $player $now "black_lace_thong" true>>
<</if>>
<<set $player.location to "Mall Male Toilet">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
Fortuitously there is a nearby public restroom open and you duck inside a stall and start taking off your clothes.<br>
<br>
You take a moment to examine your new purchase before just sighing and slipping them on. You skip the bra, of course, but for some reason opt to wear all three of the other items when you discover that the fishnets just don't stay up properly without the garters.<br>
<br>
<<printThought $player "Maybe that's why they were getting rid of them? Wearing these feels weird tho... not bad?">><br>
<br>
The thong on the other hand... Cramming your <<getWordMyPenis $player>> in place behind the skimpy scrap of fabric is one thing but you haven't even finished pulling your pants back up when it starts creeping into your crack.<br>
<br>
Ignoring the wedgie situation you are surprised at how comfortable everything is, the mix of lace and fishnet feeling quite nice against your skin. Different from your usual fare you are reminded of the feminine presence with nearly your every movement. Whatever other feelings you are harboring your <<getWordMyPenis $player>> seems to enjoy its soft new home, especially compared to rubbing against the rough insides of your pants. For some reason you decide to shove the bra into your pocket as you get ready to leave the mall bathroom.<br>
<br>
<<printThought $player "It's just for today. I can swing by after work and buy some proper boxers and socks once that dumb inventory is finished.">><br>
<br>
Mustering your courage you head out of the bathroom. While there's nobody around, and all of your "new" clothes are hidden anyway, you still can't help but feel embarrassed and watched as you head for the office.<br>
<br>
[<<moveTo "company_lobby" "Head to work." 300 "<<set $player.cutscene.lockinventory = true>>">>]
</div>/*#
#desc: lingerie shop
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<if ($player.llocation!="room_mall_lingerie_shop_changing_booth" && ($player.llocation!="room_mall_lingerie_shop"))>>
<<set $player.counter.visit_lingerie_store+=1>>
<</if>>
<<if ($player.llocation == "room_mall_lingerie_shop_changing_booth") && !$npc_shopkeeper.flags.firstmet && setup.wearItemFromShop('mall_lingerie_shop')>>
<<moveTo "event_shopkeeper_01_1">>
<</if>>
<<set $scene.bespokeAvailable = true>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$player.flags.uniform_upgrade.aslut_1_complete>>
<<for _i range $npc_shopkeeper.bespokeItems>>
<<set _box = _i + "_box">>
<<if !setup.checkItemOwned(_i) && !setup.checkItemOwned(_box)>>
<<continue>>
<<elseif !$npc_manager.flags.uniform_upgrade.item_comments[_i]>>
<<set $scene.bespokeAvailable = false>>
<<break>>
<</if>>
<</for>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png">>
<div id="invframe" class="scrolltext">
<<if !$npc_shopkeeper.flags.firstmet>>
<<if setup.getTotalValue('feminization')<5>>
You enter <<printShopName 'mall_lingerie_shop' true>>. Theres no denying it, all articles of clothing here are made for woman, and you're non. This makes you kind of uncomfortable. The salesladies seem to notice and ask you, if you're need some help and what the measurements of your girlfriend are, or if you're shopping for ...yourself.
<<else>>
You enter <<printShopName 'mall_lingerie_shop' true>>. Theres no denying it, all articles of clothing here are looking really good. Maybe you should try on a few of them... for scientific purposes of course. The salesladies seem to notice and ask you, if you're need some help and what the measurements of your girlfriend are, or if you're shopping for ...yourself.
<</if>>
<<else>>
You enter <<printShopName 'mall_lingerie_shop'>>, <<=ps(setup.getNpcName('npc_shopkeeper', 'first'))>> lingerie shop. You're surrounded by cute and sexy articles of clothing for feminine beings to wear underneath their regular clothing... or on their own for other more daring occasions. You're interested in the articles they're offering here, but your curiosity goes not unnoticed. You blush as a saleslady asks you if you'd like to try a certain piece on.
<</if>>
<<if setup.getTotalValue('feminization')<3>>
There are some changing booths spread through the store, but you see no reason to enter them.
<<elseif !$npc_shopkeeper.flags.firstmet && (setup.getTotalValue('feminization')<5)>>
There are some <<moveTo room_mall_lingerie_shop_changing_booth "changing booths" 30>> spread through the store. Some of them are in the back of the store, so you could sneak into them when nobody is looking to try something on.
<<else>>
There are some <<moveTo room_mall_lingerie_shop_changing_booth "changing booths" 30>> spread through the store.
<</if>>
<br><br>
<<printShop 'room_mall_lingerie_shop' 'mall_lingerie_shop' $shopStatus>>
<br>
<br>
<<include thoughts_current>>
<br><br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade')>>
<<if !$currentTasks['task_uniform_upgrade'].finished>>
<<if (setup.checkItemOwned("gold_hoop_earrings") || setup.checkItemOwned("pink_thigh_highs") || setup.checkItemOwned("pink_satin_corset"))>>
You consider the bespoke offerings but decide you should wait to see how <<=setup.getNpcName('npc_manager', 'first')>> reacts to what you have already purchased.
<<else>>
You look around the "normal" section of the lingerie shop but nothing catches your eye. You just know that <<=setup.getNpcName('npc_manager', 'formal')>> is expecting something more...
<<if setup.getTotalValue("humiliation") >= 10>>
publicly visible
<<else>>
embarrassing
<</if>> and extreme.
<<if setup.getTotalValue("feminization") >= 15>>
Your heart racing in excited anticipation you
<<else>>
You are slightly scared but you see no other choice but to
<</if>>
check out the fetish section.<br>
<</if>>
<<elseif $scene.bespokeAvailable>>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Ask about bespoke items." 30>>]
<<else>>
<<printThought $player 'Hmm, probably best to see what <<=setup.getNpcName("npc_manager", "formal")>> thinks of my last purchase before buying another pricey bespoke item.'>>
<</if>>
<br><br>
<</if>>
<<if setup.getTotalValue('feminization')>5>>
[<<moveTo "room_mall_lingerie_shop_fetish" "Enter the Fetish Section" 30>>]<br>
<<else>>
[@@.link_locked;You see no reason to enter the fetish Section@@]<br>
<</if>>
[<<moveTo "room_mall" "Return to the mall." 30>>]<br>
</div>/*#
#desc: lingerie shop fetish section
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<if ($player.llocation!="room_mall_lingerie_shop_changing_booth" && ($player.llocation!="room_mall_lingerie_shop_fetish"))>>
<<set $player.counter.visit_lingerie_store+=1>>
<</if>>
<<if ($player.llocation == "room_mall_lingerie_shop_changing_booth") && !$npc_shopkeeper.flags.firstmet && setup.wearItemFromShop('mall_lingerie_shop')>>
<<moveTo "event_shopkeeper_01_1">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png">>
<div id="invframe" class="scrolltext">
You enter the fetish section of Tease me, Please me. Here is where all the fetish stuff is collected that other kinky stuff would call kinky stuff.
<<if !$npc_shopkeeper.flags.firstmet && (setup.getTotalValue('feminization')<5)>>
There are some <<moveTo room_mall_lingerie_shop_changing_booth "changing booths" 30>> spread through the store. Some of them are in the back of the store, so you could sneak into them when nobody is looking to try some of the articles on.
<<else>>
There are some <<moveTo room_mall_lingerie_shop_changing_booth "changing booths" 30>> spread through the store.
<</if>>
<br><br>
<<printShop 'room_mall_lingerie_shop_fetish' 'mall_lingerie_shop_fetish' $shopStatus>><br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
You haven't been in the fetish section for more than a minute when, as if by shopkeeper magic <<=setup.getNpcName('npc_shopkeeper', 'first')>> appears.<br>
<br>
"@@.npc_shopkeeper;Hello, looking for a little something, something to take things to another level?@@"<br>
<br>
<<printThought $player "Woah, where did she come from? And that comment is kind of eerily prescient...">><br>
<br>
A little surprised you nod.<br>
<br>
<<if setup.getTotalValue("feminization") < 10>>
[<<moveTo "room_mall_lingerie_shop_outfit_upgrade_shy" "Blurt out that you're looking for something for a friend." 1>>]<br>
<</if>>
[<<moveTo "room_mall_lingerie_shop_outfit_upgrade" "Tell her you are looking for something to really improve your outfit." 1>>]<br>
<<elseif $currentTasks.hasOwnProperty('bed_heels_photo') && !setup.checkItemOwned('bed_heels')>>
Thinking about your latest manager-assigned task and how <<=setup.getNpcName('npc_shopkeeper', 'first')>> helped you previously you consider asking her if she can get you some so-called "bed heels." <br>
<br>
[<<moveTo "room_mall_lingerie_shop_bed_heels" "Ask if they sell bed heels." 30>>]<br>
<<else>>
<<include thoughts_current>><br>
<br>
<</if>>
[<<moveTo "room_mall_lingerie_shop" "Return to the entrance." 30>>]<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: lingerie shop changing booth
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include checkPossibleVoluntary>>
<<if $roomchange==true>>
<<set $scene.voluntaryFollowupScene = "room_mall_lingerie_shop">>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set _tmpVal = setup.checkOutsideDecency($player)>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
You enter the changing booth of <<printShopName 'mall_lingerie_shop' false>>.<br>
<br>
<<include glanceVoluntary>>
<<include thoughts_current>>
<<printItemsOnFloor $player.plocation>>
<<if _tmpVal>>
[<<moveTo "room_mall_lingerie_shop" 'Return to <<printShopName "mall_lingerie_shop" false>>' 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
[@@.link_locked;You're not going to leave the changing booth dressed like this.@@]
<</if>>
<<include triggerVoluntary>>
</div>/*#
#desc: shopkeeper "ambushes" you coming out of changing room
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $npc_shopkeeper.flags.firstmet = true>>
<<storeVisual $player $npc_shopkeeper>>
<<if $roomchange==true>>
<<gainWillpower $player 1>>
<<createAvatar $player>>
<<set $npc_shopkeeper.profile = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<div id="invframe" class="scrolltext">
You prepare to exit the changing booth after changing some of your underwear. You don't want to be seen by anyone so you take a small peek out of the door. Looks like the coast is clear so you make your move.<br>
<br>
As you exit the changing booth, you almost run into a tall black woman. Even without her impossible high stilettos, she would be a lot taller than you, but on those high heels she towers over you like a sexy black mountain.<br>
<br>
"@@.npc_shopkeeper;Well, well, well, Darling!@@", her voice is a lot louder than most people you're used to talk to, with the possible exception of when <<=setup.getNpcName('npc_manager', 'formal')>> switches into full-bore dominant mode, "@@.npc_shopkeeper;Look what the cat dragged in. Well honey, what are you supposed to be? Walking around here, all small and stealthy. Like a little mouse. My girls over there@@", she points into the direction of the sales personal, "@@.npc_shopkeeper;Well, my girls over there, they told me all about you, buying some of my wonderful lingerie. My store, that is. My actual lingerie well... I don't think it'd fit you, and it isn't available, anyway; at least not to the public.@@"<br>
<br>
No matter how small you try to become, somehow you're still the centre of attention in the store. All eyes are focused upon you and the black lady. Your face turns red with shame and you ponder your options. Run away? But you've done nothing wrong, well, legally wrong. How do you always get stuck in situations like this?<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
"@@.npc_shopkeeper;Ah, look at you! Buying your first bit of lingerie! Oh, I am so proud of you, girl why, to think of the first time I saw you so cute, but looking so nervous... Well, let me just congratulate you on the courage to blossom into this wonderful woman, and to encourage you to keep shopping for more fun things! And I don't just say that because I own the place!@@"<br>
<br>
You blush at the compliment as she laughs at her own joke in that inviting way only certain people can ever pull off properly.
<<case 'unisex'>>
"@@.npc_shopkeeper;So, finally making a purchase of a little something, something? Ah, how wonderful, I just know you will love it, and look amazing in it! Perhaps a sign of things to come?@@" She smiles as you blush, "@@.npc_shopkeeper;oh, don't be embarrassed! You are simply lovely, but I remember seeing you once before and, well... you've come a long way, girlfriend, but I expect your journey has many twists and turns remaining! Well, wherever you end up you can rest assured that the things you buy in my store will never let you down! Quality, comfortable things for all who enjoy a a bit of femininity underneath, that's why I opened this shop and that's the only products I stock!@@"
<<case 'male'>>
"@@.npc_shopkeeper;Now see,@@" she turns back to you, "@@.npc_shopkeeper;I've told my girls that, if you really bought these for your "girlfriend"@@" and puts the word "girlfriend" under air quotes, "@@.npc_shopkeeper;why do you lurk around in the back of the store hmm? Maybe a stalker? Maybe some pervert? And I said girls, I said girls NO! That man is no stalker. That man is no pervert... at least no more perverted then the average customer.@@"<br>
<br>
You still have no idea what is going on and you continue to focus on checking if you might have suddenly developed powers of invisibility.<br>
<br>
"@@.npc_shopkeeper;Now look here, honey. I've seen you buying some of my merchandise. Then you leave for the changing booth and when you come back the merch is suddenly gone? And you try to sneak out, prowling like a common thief, just because you think someone can see you? Come on! Everyone can see you. There's no shame in that. Be proud. Fritz over there@@", she points into the direction of a beautiful woman on the other side of the store, "@@.npc_shopkeeper;who goes now with the fancy name of Francine has been a regular of mine for years.@@"<br>
<br>
You hear a slight "Sup" from the other side of the store, you suppose it's from Fritz or Francine. As you look around you realise that, after the initial outburst, no one is really paying attention to you anymore, everyone returning to their routines.
<<default>>
Error: unexpected worn tags, expecting male, female or unisex
<</switch>>
<br><br>
"@@.npc_shopkeeper;The name is <<=setup.getNpcName('npc_shopkeeper', 'first')>>, honey. <<=setup.getNpcName('npc_shopkeeper', 'full')>>. And as long as you're paying, you're welcome to check out whatever you like. And if somebody gives you a hard time over this, well, I may be a lady, but when I'm mad, I'm an evil sarcastic demon bitch from hell, that'll make someone wish they'd never been born!@@"<br>
<br>
She gives you a soft pat on the back. Well, sort of; it's neither soft nor on your back, precisely. Other games might call this her special move and you need a few seconds to catch your breath. She holds her hand out for you as she continues. "@@.npc_shopkeeper;Now that we're all friends, how about in the future you enter my humble abode as a valued customer, and not like some skulking suspect.@@"<br>
<br>
Even though she is very loud and commanding, <<=setup.getNpcName('npc_shopkeeper', 'first')>> seems to mean well. You shake her hand in agreement. She moves her head closer to you and starts to whisper, "@@.npc_shopkeeper;Unless you're some kind of ninja. Than that's totally okay...@@"<br>
<br>
What she said makes sense. Even though circumstances forced you into this strange behaviour, you still came here by your own free will and bought some of her merchandise with your own money. Her encouragement strengthens your will to move on!<br>
<br>
[<<moveTo "room_mall_lingerie_shop" "Continue." 30>>]
</div>/*#
#desc: talk to shopkeeper about finding butt plug in changing room
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<addItem "analplug_beginner">>
<<deleteItem $player $now 'analplug_small_box'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_shopkeeper', 'first')>> about the box you've found in the changing booth, and how another customer might have forgotten it.<br>
<br>
"@@.npc_shopkeeper;You sure are an honest soul honey. Nah, these are my little gifts to mah customers. We're branching out soon, since I've managed to get a hold of another store location here in the mall, so we're opening up a little, frisky sextoy shop with all the little toys and trinkets a fun-loving adult could desire. Maybe even some custom made BDSM gear, who knows. So I've been putting these and other small thank yous into the changing booth all day long. Seems to be a hit! Some of the ladies came out purring I tell you.@@"<br>
<br>
She opens the box and puts the plug into your palm, closing your had around the cool metal as she continues talking to you. "@@.npc_shopkeeper;So put this little gift of mine over your fireplace or where the sun does not shine, or inside that special someone. So long as you enjoy it it's fine by me!@@" She throws her head back in a boisterous laugh, smiling wide.<br>
<br>
[<<moveTo "room_mall_lingerie_shop" "Continue." 30>>]
</div>/*#
#desc: mall location select
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set _tmpImage = "./images/locations/mall_outside.png">>
<<set _open = true>>
<<else>>
<<set _tmpImage = "./images/locations/mall_outside_night.png">>
<<set _open = false>>
<</if>>
<<set $player.location to "The Mall">>
<<include enterroom>>
<<initRoom>>
<<createBGR _tmpImage>>
<div id="invframe" class="scrolltext">
You arrive at the local mall. It is open from 8:00 till 23:00 o'clock, though the hours of the various shops might be different.
<<if _open>>
The doors to the mall are currently wide open.
<<else>>
The doors to the mall have been closed since it is outside business hours.
<</if>>
<br><br>
<<if _open>>
Glancing at the directory a handful of locations spark your interest: <br>
<br>
<<if $player.flags.fem_style.underwear == "">>
<<if (getUTCHours($now) >=17 )>>
[<<moveTo "room_mall_apparel_store" "<<printShopName 'mall_apparel_store' true>>" 30>>]<br>
<<else>>
<<printThought $player "Alright, so I just need to find an employee who can sell me some underwear before the mall opens so I can get to work on time.">><br>
<br>
[<<moveTo "event_general_storevisit_1_1" "Head for the general apparel store and try to get someone's attention." 120>>]
<</if>>
<<elseif $now.getUTCFullYear() == 2033 && $now.getUTCMonth() == 5 && $now.getUTCDate() == 29 && $now.getUTCHours($now) < 12 && $player.flags.fem_style.underwear == "money">>
The <<printShopName 'mall_apparel_store' true>> is closed: "We are terribly sorry, but inventory has taken longer then expected. The <<printShopName 'mall_apparel_store'>> will be open after midday today. Thank you for your understanding. Please come back later today!" <br>
<br>
You look inside but cannot seem to get anyone's attention.<br>
<br>
<<printThought $player "Looks like I'm stuck with what I already have, I should really head to work, I'm already late.">><br>
<<else>>
[<<moveTo "room_mall_apparel_store" "<<printShopName 'mall_apparel_store' true>>" 30>>]
<</if>>
<br>
[<<moveTo "room_mall_lingerie_shop" "<<printShopName 'mall_lingerie_shop' true>>" 30>>]<br>
[<<moveTo "room_mall_shoe_store" "<<printShopName 'mall_shoe_store' true>>" 30>>]<br>
<<if !$player.locations.beautyparlor>>
[<<moveTo "room_mall_manlystan" "Stan's barber shop for men" 30>>]<br>
<<else>>
[<<moveTo "room_mall_beautyparlor" "Dye Me Crazy: Beauty Parlor" 30>>]<br>
<</if>>
[<<moveTo "room_mall_wholesale_store" "<<printShopName 'mall_wholesale_store' true>>" 30>>]<br>
<<if $player.locations.mallcafe>>
[<<moveTo "room_mall_cafe" "Cafe: Newtype IV" 30>>]<br>
<</if>>
<<if $player.locations.sexstore>>
[<<moveTo "room_mall_sexstore" "<<printShopName 'mall_sexstore' true>>" 30>>]<br>
<<else>>
[@@.link_locked;You see a new storefront - <<printShopName 'mall_sexstore'>>!, but it's currently closed up and says "Opening Soon."@@] <<hint $options "You need to progress further into the game for this to be available.">><br>
<</if>>
[<<moveTo "room_mall_toilet" "Public Bathrooms" 30>>]
<<elseif window.getUTCHours($now) < 8>>
<<set _mallOpen = setup.setNextDate($now, 0, 8, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_mallOpen)>>
<<if (8-window.getUTCHours($now)) == 1>>
The mall opens at 8, which is in less than an hour.
<<else>>
The mall opens at 8, which is over <<=7-window.getUTCHours($now)>> hours away.
<</if>>
<br><br>
<<if $player.flags.fem_style.underwear == "money" && $now.getUTCFullYear() == 2033 && $now.getUTCMonth() == 5 && $now.getUTCDate() == 29 && $now.getUTCHours($now) < 12>>
<<printThought $player "Alright, so I just need to find an employee who can sell me some underwear before the mall opens so I can get to work on time.">><br>
<br>
[<<moveTo "event_general_storevisit_1_1" "Head for the general apparel store and try to get someone's attention." 120>>]
<</if>>
[<<moveTo "room_mall" "Wait for the mall to open." _tmpSeconds>>]
<</if>>
<br><br>
<<include thoughts_current>>
<br><br>
[<<moveTo "room_citymap" "Return to the inner city" 300>>]
</div>/*#
#desc: mall bathroom
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Mall Bathroom">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
You enter the toilet.<br>
<br>
<<include thoughts_current>>
<<if setup.getTotalValue("makeup") > 0>>
<<if $player.flags.fem_style.makeup == "">>
[@@.link_locked;You do not think you are ready to put on makeup in a public restroom.@@]
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Mall Bathroom">><<set $return_makeuproom="room_mall_toilet">><<set $makeuproom_image="./images/locations/mall_toilet.png">><<set $return_makeuproomtext="Finished.">><<set $makeuproom_water=false>>'>>]
<</if>>
<br><br>
<</if>>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: sex store
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_wholesale_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_muralmart.png">>
<div id="invframe" class="scrolltext">
<<printShop 'room_mall_wholesale_store' 'mall_wholesale_store' $shopStatus>>
<br><br>
<<include thoughts_current>>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: mall location select
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $scene.mall_open = false>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set $player.locations.sexstore = true>>
<<set $scene.mall_open = true>>
<<else>>
<<addEvent 'sexstoreOpeningEvent'
'{"trigger":"always","type":["next"],"location":"room_mall","priority":100}'
'{"szene":"event_mall_sexstore_opening"}'
>>
<</if>>
<</if>>
<<set $player.location to "The Mall">>
<<include enterroom>>
<<initRoom>>
<<if $scene.mall_open>>
<<createBGR "./images/locations/mall_inside.png">>
<<else>>
<<createBGR "./images/locations/mall_outside_night.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.mall_open>>
You arrive at the mall to notice that there seems to be some sort of event going on. As you watch and gawk a pair of scantily-clad individuals parade through the centre promenade holding signs advertising <<printShopName 'mall_sexstore'>> Grand Opening!<br>
<br>
The woman is dressed in a shiny, snug bodysuit, her entire body technically covered but the material clinging to her like a second skin to show off every gorgeous curve as it shines with a mirror polish. The man is dressed in leather, six-pack abs rising up from his tight jeans, his bulging biceps highlighted by a thick cuff around each arm.<br>
<br>
You can't help but stand and stare as they walk past, but instead of being bothered they just smile at you in turn, the woman blowing you a kiss and the man grinning and nodding at you in a way no guy <<if $player.flags.landlordsawyounaked>>except maybe your landlord when you appeared naked <</if>>has ever looked at you.<br>
<br>
You blush and turn away to find yourself looking at an attractive girl standing next to you staring in just as much awe. In any other situation her painted-on jeans and tube top would draw far more than a cursory glance but compared to the fetish goddess that just walked past she seems almost... pedestrian.<br>
<br>
Noticing your attention she grins at you "@@.npc_acolyte;Hey!, that was really something, eh? It's about time this mall had a proper sex shop, oh what fun.@@" She walks away leaving you still dumbfounded, though not so much that you don't momentarily gawk at the stunning butt shrink-wrapped inside her jeans. In the distance you indeed watch as the two parading models pass in front of the newly opened shop.<br>
<br>
You can't help but be curious, and aroused in... interesting ways, but do you really dare enter what is obviously a sex shop?<br>
<br>
[<<moveTo "room_mall" "Look around the mall" 120>>]
<<else>>
<<if $now.getUTCHours() < 8>>
<<set _mallOpen = setup.setNextDate($now, 0, 8, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_mallOpen)>>
<<if (8-window.getUTCHours($now)) == 1>>
The mall opens at 8, which is in less than an hour.
<<else>>
The mall opens at 8, which is over <<=7-window.getUTCHours($now)>> hours away.
<</if>>
<br><br>
[<<moveTo "event_mall_sexstore_opening" "Wait for the mall to open." _tmpSeconds "<<removeEvent 'sexstoreOpeningEvent'>>">>]<br>
<<else>>
The mall is closed, you should come back tomorrow morning after its 8 o'clock opening time.<br>
<br>
<</if>>
[<<moveTo "room_citymap" "Return to the inner city" 300>>]
<</if>>
</div>/*#
#desc: first visit to mall sex store
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<if !$npc_sexstore_clerk.flags.firstmet>>
<<initRoom>>
<<moveTo "room_mall_sexstore_first_visit_1">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You look around the recently opened sex store. It looks like most of the "clothing" section of the store is still being unpacked, but there looks like there are some sex toys and the like available.<br>
<br>
Behind the cash register is <<=setup.getNpcName('npc_sexstore_clerk', 'first')>><<if !$npc_sexstore_clerk.flags.chastity_quest.start>> and behind him a sign advertising "New products in development - ask about our paid trial programme!" <<else>>.<</if>><br>
<br>
<<printShop 'room_mall_sexstore' 'mall_sexstore' $shopStatus>>
<br><br>
<<include thoughts_current>><br>
<br>
<<if !$npc_sexstore_clerk.flags.chastity_quest.start>>
[<<moveTo "event_fetstore_chastity_offer_1" "Ask about the paid trial programme." 30>>]<br>
<<elseif $currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks['task_chastity_trial'].finished>>
[<<moveTo "event_fetstore_chastity_finish_1" "Ask about ending the paid chastity trial programme." 30>>]<br>
<</if>>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div><<if $roomchange==true>>
<<set $npc_sexstore_clerk.flags.firstmet = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_sexstore.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
Walking past the "Grand Opening!" sign outside the new sex toy shop you barely have a chance to look around before you are distracted by a slight ruckus going on at one side of the shop.<br>
<br>
"@@.npc_sexstore_clerk;I do not care if you can buy some cheap vibrator for a few credits online; THIS is of much higher quality and some of us have standards on what we put inside our bodies.@@"<br>
<br>
A tall, thin man appears to be berating a pair of customers, the latter storming off out of the store as the man's attention turns towards you.<br>
<br>
Dressed in a flowing outfit that wouldn't be out of place at a ren faire the man is tall, thin and the peak of "Elegant Gothic Aristocrat" style. Despite his recent outburst his annoyance melts away as he greets you with a friendly, if a little predatory, smile.<br>
<br>
"@@.npc_sexstore_clerk;Ah, another customer! Excuse those... ignoramuses, you look like a person of taste, what can I help you find today?@@"<br>
<br>
[<<moveTo "room_mall_sexstore_first_visit_2" "Continue." 60>>]
</div><<if $roomchange==true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_sexstore.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
<<if $npc_shopkeeper.flags.firstmet>>
"@@.npc_shopkeeper;Now, now <<=setup.getNpcName('npc_sexstore_clerk', 'first')>>; do try not to scare off the customers. Especially this lovely thing.@@"<br>
<br>
You turn around to find <<=setup.getNpcName('npc_shopkeeper', 'first')>>, the owner of the Tease me, Please me lingerie shop.<br>
<br>
<<printThought $player "That's right, she mentioned something about opening a sex store...">><br>
<br>
"@@.npc_sexstore_clerk;Of course, madame,@@" the man who you now realise must be the clerk replies with a formal bow. "@@.npc_sexstore_clerk;I was merely encouraging some of the riff-raff to move along, clearly an esteemed acquaintance of yours is more than welcome in this establishment.@@"<br>
<br>
The man moves along as <<=setup.getNpcName('npc_shopkeeper', 'first')>> turns to you. "@@.npc_shopkeeper;Don't mind him. He's a good man, just a bit... opinionated about so-called "vanillas." Anyway, I am so glad to see you found this place, we are still working on expanding our offerings but you should find some fun items already; <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> can help you out if you have any questions.@@"<br>
<br>
You thank her and resume looking around as she goes off to talk with her clerk some more.
<<else>>
Despite his sudden shift in tone you are still a bit intimidated by the strange man with his formal, clipped speech.<br>
<br>
"@@.npc_sexstore_clerk;I do apologise for the clutter,@@" he notes, gesturing around to some boxes sitting around still unpacked. "@@.npc_sexstore_clerk;I imagine you want to do some looking around, I promise we stock nothing but the finest wares for you to use with confidence on yourself or others.@@"<br>
<br>
You nod in acknowledgement, that seeming to satisfy the man as he heads back to the counter and you look around.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore" "Look around the store." 30>>]
</div>/*#
#desc: mall shoe store
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_shoestore.png">>
<div id="invframe" class="scrolltext">
<<printShop 'room_mall_shoe_store' 'mall_shoe_store' $shopStatus>><br>
<br>
<<if $currentTasks.hasOwnProperty('bed_heels_photoshoot')>>
<<if !$currentTasks['bed_heels_photoshoot'].finished && setup.daystoDate($now, setup.getTaskDueDate('task_uniform_upgrade')) == 0>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2" 'Walking into <<printShopName "mall_shoe_store">> the owner immediately spots you and ushers you into the back room' 60 "<<completeTask 'bed_heels_photoshoot' $now true>>">>]
<<elseif $currentTasks['bed_heels_photoshoot'].finished>>
<<if !$npc_shoestore_manager.flags.shot_ballet_heels_final>>
You recall <<=ps(setup.getNpcName('npc_shoestore_manager', 'first'))>> proposal to shoot a final advertisement.<br>
<br>
<<if setup.getTotalValue("heels") >= setup.getItemObj('black_ballet_boots').heels.difficulty>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_3" "Ask about another high heel photoshoot" 60>>]
<<else>>
[@@.link_locked;You feel like you still need more practice if you're going to impress in something even more difficult than the last ballet boot photoshoot@@]
<</if>>
<br>
<<elseif !$npc_shoestore_manager.flags.shot_ballet_heels_bdsm && setup.getItemFromType("shoes") == 'black_ballet_boots'>>
As you walk around the store in your ballet boots you can't help but notice how <<=setup.getNpcName('npc_shoestore_manager', 'first')>> seems to be constantly looking in your direction.
<<if $scene.collar != "" && setup.getItemObj($scene.collar).hasOwnProperty("tags") && setup.getItemObj($scene.collar).tags.includes("leash_attachment")>>
You also can't help but notice how her gaze occasionally flits towards your neck... or, more probably, the bondage collar wrapped around it.<br>
<br>
<<printThought $player "Hmm... I bet we could make a really intense video with me in this outfit...">><br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_bdsm" "Ask about shooting an even more bdsm-focused high heel photoshoot." 60>>]
<<else>>
Her gaze occasionally flits towards your throat only to be tinged with disappointment as if there was something missing.<br>
<br>
<<printThought $player "Hmm, I think she's expecting me to be wearing a bondage collar to go along with these fetishistic boots?">><br>
<br>
[@@.link_locked;Maybe I should come back with a collar sometime?@@]
<</if>>
<</if>>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_1" 'Talk to <<=setup.getNpcName("npc_shoestore_manager", "first")>> about recording a testimonial on the benefits of bed heels' 60>>]
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<<else>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
<<else>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks['bed_heels_photo'].finished && !setup.getItemObj("bed_heels").owned>>
[<<moveTo "event_mall_shoe_store_bed_heels_request" 'Ask the owner about the "bed heels" <<=setup.getNpcName("npc_manager", "formal")>> told you about.' 60>>]
<<elseif $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<set _daysTo = setup.daystoDate($now, setup.getTaskDueDate('task_uniform_upgrade'))>>
Mindful of your uniform assignment due <<if _daysTo == 1>>in 1 day<<elseif _daysTo == 0>>today<<else>>in <<=_daysTo>> days<</if>> you look around the shoe store. Unfortunately it looks like the pink Mary Jane's
<<if setup.getItemFromType("shoes") == "pink_mary_janes">>you're wearing<<else>><<=setup.getNpcName('npc_manager', 'formal')>> gave you<</if>>
are already more extreme than what you see for sale here.
<<elseif setup.getItemFromType("shoes") == 'bed_heels'>>
Catching sight of your shoes <<=setup.getNpcName('npc_shoestore_manager', 'first')>> jaw drops and then her expression spreads into a wide smile.
<<if setup.getTotalValue("heels") >= setup.getItemObj('bed_heels').heels.difficulty>>
"@@.npc_shoestore_manager;Oh my, you're not just wearing those out, but you're walking in them? Talk about the best advertising I could ask for!@@" She seems entranced, staring as you mince around gracefully atop what most would call impossible footwear. "@@.npc_shoestore_manager;Say... I don't suppose you'd be up for recording a bit of an advertisement for me in those?@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2_alt" "Say sure." 30>>]
<<else>>
"@@.npc_shoestore_manager;Wow, talk about someone after my own heart. Bed heels in public, what a sight!@@" She frowns as you wobble slightly. "@@.npc_shoestore_manager;That said well... you seem a bit unsteady, maybe practice some more before you do something so daring. If you managed to master them though...@@" She stares off into the distance, momentarily lost in fantasy. "@@.npc_shoestore_manager;Well, if you do, come back, I might be interested in having you star in an advertisement video.@@"
<</if>>
<<else>>
<<include thoughts_current>>
<</if>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
</div>/*#
#desc: ask about chastity trial programme
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<set $npc_sexstore_clerk.flags.chastity_quest.base_payment = $player.money.base_rent + 100>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_sexstore.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
Pointing to the sign near the cash register you ask about the "paid trial programme." <br>
<br>
The clerk smiles and explains. "@@.npc_sexstore_clerk;Ah yes, Well we are not just a retail shop, we also do in-house development as well as collaborations. That means that, from time to time, we are looking for testers for new products. Today we have a new chastity device that we are looking to get feedback on - we are paying <<=$npc_sexstore_clerk.flags.chastity_quest.base_payment>> credits for anyone who is willing to be locked up in it for a week.@@"<br>
<br>
As he talks he places the device on the counter and you nervously stare at it, mentally picturing how your <<getWordMyPenis $player>> might fit in the curved, clear tube, with a sturdy ring locking everything in place.<br>
<br>
"@@.npc_sexstore_clerk;As you can see the design is nothing revolutionary, but we have fabricated it out of some new, cutting-edge materials to make it more comfortable and hygienic for long-term wear. So, what do you think? You prepared to aid in advancing the state of technology?@@"<br>
<br>
You continue to stare at the device. The prospect of locking yourself up seems pretty extreme but that amount of money would cover more than a month's rent...<br>
<br>
<<printThought $player "What has my life come to that I'm seriously considering doing something like this?">><br>
<br>
<<if setup.getItemFromType("cage") == "">>
[<<moveTo "event_fetstore_chastity_offer_2" "Accept the offer." 60 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;Unfortunately you are already caged. If you wish to join the study you need to return uncaged.@@]<br>
<</if>>
[<<moveTo "event_fetstore_chastity_offer_2" "Decline the offer." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept/not to be locked in chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<if $scene.accept>>
<<set $player.flags.fem_style.chastity = "money">>
<<set $npc_sexstore_clerk.flags.chastity_quest.start = true>>
<<addItem "c_cage_advanced">>
<<wearItem $player $now "c_cage_advanced" true>>
<<manipulateItem $player $now "c_cage_advanced" "lock" true>>
<<applyExperience 'humiliation' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'submission' 9 'very' $SEEN_STRANGER>>
<<set _nextDate to setup.setNextDate($now, 7, 9, 30)>>
<<addTaskById 'task_chastity_trial' _nextDate>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_sexstore.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Taking a deep breath you nod and say that you would like to enroll in the chastity trial. The clerk nods with a trace of a smile, pushing a single sheet of paper across the counter for you to sign.<br>
<br>
Given your recent history you are actually a bit shocked at the simple brevity of the agreement. In simple, straightforward language it states that you are agreeing to be locked for one week in exchange for <<= $scene.chastity_pay>> credits, with your only obligations to provide feedback and to not damage the device whilst it is in your care.<br>
<br>
You sign and the clerk walks around the counter, leading you to the changing room where he hands you the device and talks you through how to "install" it.<br>
<br>
Though the clerk is quite professional there's no getting around that the whole thing is a bit humiliating, fortunately you easily slip into the smooth chastity tube and it locks closed with a soft click.<br>
<br>
"@@.npc_sexstore_clerk;No pinching or any discomfort?@@" he asks as you wiggle a bit, adjusting to the slight weight and the strange feeling of being enveloped, oddly you feel yourself swelling slightly within the new prison as if in excitement? No, probably just your body adjusting to things.<br>
<br>
You finally nod to confirm that everything is fine and he nods, taking the key and walking away as you fix your clothes. "@@.npc_sexstore_clerk;Very good, and congratulations. I look forward to seeing you in a week's time. I will give you a call to remind you when the trial is up so you can come in to be unlocked.@@"<br>
<br>
Gingerly taking a step you are a bit surprised at how comfortable the device is; while you doubt you will ever forget it's there it does not seem to restrict your movement... outside the obvious of it preventing access to your <<getWordMyPenis $player>>.
<<else>>
"@@.npc_sexstore_clerk;Well, if you ever change your mind, do feel free to come back, we want to get plenty of testing in before we do a full product roll-out.@@"<br>
<br>
You nod and state that you will consider it as he puts the demo cage away and you step back from the counter.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]
</div>/*#
#desc: called to inform chastity trial is finished
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set _nextDate to setup.setNextDate($now, 1, 9, 30)>>
<<addTaskById 'task_chastity_trial' _nextDate>>
<<set $npc_sexstore_clerk.flags.chastity_quest.overage+=1>>
<<set $npc_sexstore_clerk.flags.chastity_quest.finished = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings with a number you do not recognise.<br>
<br>
<<if $npc_sexstore_clerk.flags.chastity_quest.overage > 0>>
"@@.npc_sexstore_clerk;Hello, <<=$player.first_name>> <<=$player.last_name>>? Yes, this is <<=setup.getNpcName('npc_sexstore_clerk', 'formal')>> from <<printShopName 'mall_sexstore'>> again. I suppose you have been a bit too busy to come in - or maybe you just enjoy being in chastity too much? Either way if you could please drop by to conclude your trial sometime today that would be wonderful. We cannot unlock you or give you your payment until you do.@@"
<<else>>
"@@.npc_sexstore_clerk;Hello, <<=$player.first_name>> <<=$player.last_name>>? Yes, this is <<=setup.getNpcName('npc_sexstore_clerk', 'formal')>> from <<printShopName 'mall_sexstore'>> informing you that your chastity trial period ends today. Please drop in any time to be released and paid for your services.@@"
<</if>>
<br><br>
You thank him for the reminder.<br>
<br>
[<<moveTo $beforetasklocation "Hang up.">>]
</div>/*#
#desc: ask to finish chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.inside = true>>
<<if $roomchange == true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fetish_store.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
You approach the counter and ask the clerk to conclude the chastity trial.<br>
<br>
<<if $npc_sexstore_clerk.flags.chastity_quest.finished || setup.daystoDate($now, setup.getTaskDueDate('task_chastity_trial')) <= 0>>
<<if $npc_sexstore_clerk.flags.chastity_quest.overage > 1>>
"@@.npc_sexstore_clerk;Finally made it in? I ought to charge you for the extra time of keyholder service but I'll let it slide.@@"
<<else>>
"@@.npc_sexstore_clerk;Ah, welcome back, eager to be out of your cage, hmm?@@"
<</if>>
<br><br>
Rooting around for a moment behind the counter he comes up with a key and a pile of credits.<br>
<br>
"@@.npc_sexstore_clerk;So, any issues during the trial, any discomfort?@@"<br>
<br>
You shake your head, to your slight surprise the cage really was quite comfortable to the point that you sometimes even forget it was even there.<br>
<br>
"@@.npc_sexstore_clerk;Great, great. So I can offer you two options: either I give you your key and payment as agreed or you can volunteer for a follow-up test to gather some additional data in the process of unlocking you. You will get your payment and the key either way; and be allowed to keep the cage as well, but it would really help us develop better products and procedures in the future if you were willing to stick around for a bit. Though I will warn you the procedure may be considered somewhat... intense.@@"<br>
<br>
<<printThought $player "More intense than being locked in a chastity device for a week?">><br>
<br>
[<<moveTo "event_fetstore_chastity_finish_bonus_1" "Just take the key." 60 "<<set $scene.bonus=false>>">>]<br>
[<<moveTo "event_fetstore_chastity_finish_bonus_1" "Opt for the bonus offer." 60 "<<set $scene.bonus=true>>">>]
<<else>>
You ask to be released from the chastity device only for the clerk to check the computer and shake his head.<br>
<br>
"@@.npc_sexstore_clerk;I must apologise, but the agreement was for a full week of chastity; you have another <<if _daysTo == 1>>1 day<<else>> <<=_daysTo>> days<</if>> left to go. If I let you out now you will forfeit the entire payment and would have to start over from scratch if you wanted to do another trial, are you sure that's what you want?@@"<br>
<br>
[<<moveTo "event_fetstore_chastity_finish_premature" "Nod and say you want out now." 60 "<<set $scene.release=true>>">>]<br>
[<<moveTo "event_fetstore_chastity_finish_premature" "Agree to continue the trial." 60 "<<set $scene.release=false>>">>]
<</if>>
</div>/*#
#desc: try to end chastity trial prematurely
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<if $scene.release>>
<<removeItem $player $now "c_cage_advanced" true>>
<<deleteItem $player $now "c_cage_advanced">>
<<completeTask 'task_chastity_trial' $now false>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fetish_store.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
<<if $scene.release>>
The clerk frowns then roots around behind the counter to come up with a key. "@@.npc_sexstore_clerk;I am very sorry to hear about this, the device is not causing you pain, is it?@@"<br>
<br>
You assure her it is nothing like that as she hands you the key and you dart off to the changing room to get unlocked.<br>
<br>
Feeling the chastity cage fall from your <<getWordMyPenis $player>> you let out a sigh. Strangely; though you feel hypersensitive now that you are free, your body fails to take advantage of its lack of restriction. If anything you find yourself feeling less aroused than you did when it was on... You shake your head at that weird thought, fixing your clothes before heading back out and returning the device and key to the clerk.<br>
<br>
"@@.npc_sexstore_clerk;I am sorry things didn't work out, but if you ever want to try again, just let me know.@@"<br>
<br>
You nod and step away from the counter.
<<else>>
Reminded of the money on the line you decide to remain in chastity for the remainder of the trial.<br>
<br>
"@@.npc_sexstore_clerk;Very good.@@" He states with a nod "@@.npc_sexstore_clerk;and do not worry: these sorts of jitters are perfectly normal. This is why having a stern, but fair, keyholder is such a boon.@@"<br>
<br>
You aren't necessarily sure about that but you nod politely before thanking him for his time and stepping away from the counter.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore" "Continue." 30>>]
</div>/*#
#desc: finish chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<addItem "advance_chastity_cage_key">>
<<set $player.money.total += $npc_sexstore_clerk.flags.chastity_quest.base_payment>>
<<completeTask 'task_chastity_trial' $now true>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo event_fetstore_chastity_finish_bonus_2>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fetish_store.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>
The clerk nods and signals for another employee to keep an eye on things before leading you towards a back room.<br>
<br>
"@@.npc_sexstore_clerk;It is very good of you to be willing to help us out like this. I promise that someone like yourself will very much enjoy our little study.@@"<br>
<br>
Closing the door behind you look around the room; devoid of furniture save for a small shelving unit the room is mostly taken up by what looks like a set with a camera on one side and some chains dangling from the ceiling.<br>
<br>
"@@.npc_sexstore_clerk;Don't worry, the recording is purely confidential to be reviewed for data for the study.@@" He states as he walks towards the camera. "@@.npc_sexstore_clerk;If you could please remove your clothes so we can get started?@@"<br>
<br>
[<<moveTo "event_fetstore_chastity_finish_bonus_1" "Change your mind and just end the trial." 60 "<<set $scene.bonus=false>>">>]<br>
<<hint $options "You need to get naked to continue!">>
<<else>>
The clerk hands you the key and <<=$npc_sexstore_clerk.flags.chastity_quest.base_payment>> credits, once again thanking you for your time.<br>
<br>
"@@.npc_sexstore_clerk;Enjoy your new freedom... or not! And stop by again to check if we are looking for product testers in the future.@@"<br>
<br>
[<<moveTo "event_chastity_trial_finish_phonecall" "Continue." 30 "<<set $player.cutscene.lockinventory=true>>">>]
<</if>>
</div>
/% position inspired by chastity_trial_release.jpg %//*#
#desc: finish chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "You're all tied up!">>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<if $scene.bonus>>
<<applyExperience 'bondage' 13 'unbelievable' $SEEN_STRANGER>>
<<removeItem $player $now "c_cage_advanced" true>>
<<set $npc_sexstore_clerk.flags.chastity_quest.bonus = true>>
<<else>>
<<addItem "advance_chastity_cage_key">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fetish_store.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>
Naked you shiver slightly as the clerk hands you a pair of padded leather wrist cuffs, helping you wrap them around your wrist with an additional strap hanging down past your palm.<br>
<br>
Suddenly nervous, your hands are raised up above your head and attached to either end of a bar hanging from the ceiling. Before you can object the clerk has dropped down to your feet, additional cuffs attached to your ankles along with a spreader bar that he adjusts until you're teetering on your toes. Thankful for the padding distributing the weight as you hang helplessly he rises back into your sight and presents you with a large ball gag.<br>
<br>
"@@.npc_sexstore_clerk;Do not be concerned, it is almost time to unlock you, just need to have you fully secured. This is all for your safety and the accuracy of the study. Now if you would kindly open your mouth; we don't want you disturbing our other customers lest they become jealous!@@"<br>
<br>
Tugging at your restraints confirms that you aren't getting free without assistance so you open your mouth and he forces the large ball in place before strapping it tight. A thin line of drool escapes to drip down your chest as you try to look around and keep your balance as you wait for what is going to happen next.<br>
<br>
With a hint of a smile on his otherwise business-like expression he fetches something from the cabinet, returning with a small spray bottle that he uses to mist your still-caged <<getWordMyPenis $player>>. You gasp as you feel a weird tingling spreading over your groin followed by... nothing.<br>
<br>
You flail a bit, momentarily dangling from your wrists as you try to wiggle your hips, though the cage bounces back and forth against your thighs you can no longer feel it surrounding you and your eyes go wide in shock.<br>
<br>
"@@.npc_sexstore_clerk;Remain calm,@@" he states in quiet comfort. "@@.npc_sexstore_clerk;This is all part of the study - you are going to be hyper-sensitive once you are out of the cage and we do not want that distracting from the focus of the study. The numbing is only temporary, I promise.@@"<br>
<br>
You're still panting quickly but there isn't much you can do. Barely able to look down you watch and listen as he unlocks and removes your cage, your <<getWordMyPenis $player>> springing forth, hard and swelled despite the fact you cannot feel it at all.<br>
<br>
The whole thing is a bit surreal as you watch his hand wrap around and stroke your <<getWordMyPenis $player>> without feeling the touch at all, it is like watching someone else get a hand-job and you return his calm gaze with a look of confused frustration. "@@.npc_sexstore_clerk;Good, from your reaction I can tell the spray has done its job. Some of our customers use it so that they can avoid any feeling of contact when they are out of chastity, in some cases even being used for full-on coupling, staying hard but numb the whole time.@@"<br>
<br>
You can only imagine how humiliating and emasculating that would feel but he continues on. "@@.npc_sexstore_clerk;Don't worry, I will not be doing anything like that today. No, our study is focused on other ways your body reacts to having been caged and restricted for a week.@@"<br>
<br>
Once again he moves out of sight, this time circling around behind you.<br>
<br>
[<<moveTo "event_fetstore_chastity_finish_bonus_3" "Continue." 600>>]
<<else>>
You decide that being locked up for a week by a stranger was enough and excuse yourself.<br>
<br>
"@@.npc_sexstore_clerk;I see.@@" <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> states, their tone clearly disappointed. "@@.npc_sexstore_clerk;Well, in that case, I believe our business is concluded.@@" He hands you your payment and the key to your cage. "@@.npc_sexstore_clerk;Thank you again for your participation, you may keep the cage.@@"<br>
<br>
[<<moveTo "event_chastity_trial_finish_phonecall" "Continue." 30 "<<set $player.cutscene.lockinventory=true>>">>]
<</if>>
</div>/*#
#desc: fucking machine after chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'anal' 11 'terrible' $SEEN_STRANGER>>
<<set $player.timebased.horny = 0>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fetish_store.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("plug") != "">>
Dangling in your partial suspension you feel fingers trace down between your cheeks before taking a firm grip on the <<=setup.getItemName(setup.getItemFromType("plug"))>> in your rear.<br>
<br>
"@@.npc_sexstore_clerk;Chaste AND plugged, very good, you really are a perfect test subject.@@" He states as he gently pulls the plug from your ass.
<</if>>
<br><br>
A squirt of warm lubricant moistens your hole and then you feel something pressing up into it.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
Whatever it is that is pressing against your rear is very large... You moan through your gag as it pushes up into you, your body spreading before it as a battering ram thicker than a baseball bat plunges into you.
<<else>>
What feels like a large, hard cock pushes into you as you try to relax to let it slide in.
<</if>>
<br><br>
"@@.npc_sexstore_clerk;I thought you looked like an experienced butt-slut, it appears I was correct in that assessment.@@" The clerk notes as he adjusts the angle of the dildo. You try to catch your breath as you feel something rattling against the spreader bar holding your ankles apart.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Sensing what is coming you try to relax as something thin, but phallic, slides up into you.
<<else>>
Your nigh-virgin rear clenches down reflexively you rise onto your toes but soon run out of space as something thin and blunt slides into you.
<</if>>
<br><br>
"@@.npc_sexstore_clerk;Hmm, I would have expected your bum to be more experienced. Perhaps some other day I can help you with how to get it properly spread and gaped but for today I think this toy is a better... fit.@@"<br>
<br>
You try to adjust to your intruder as the clerk fiddles between your legs, the dildo shifting angle slightly followed by something rattling against the spreader bar holding your ankles apart.
<</if>>
<br><br>
"@@.npc_sexstore_clerk;There we go.@@" He states, stepping away and walking back into view. "@@.npc_sexstore_clerk;Do you like the lubricant? It is my own special concoction, very long lasting. You are doing great so far, but now it is time for the test proper.@@"<br>
<br>
He flicks a remote and your anal occupant springs to life. You thrash at the intense sensation drumming against your prostate, hanging in midair for a moment as you pull your legs in only to discover that doing such thrusts the dildo even deeper into you.<br>
<br>
Your gasp of surprise turns to a moan of pleasure as your legs go rigid and you momentarily dangle from your restraints. Wobbling back and forth you soon discover that there is no escape from the intense stimulation. Eventually you go limp, your eyes rolling back as you hang forward in your bonds, twitching occasionally to cause the vibrating dildo to shift inside of you.<br>
<br>
The whole time your <<getWordMyPenis $player>> remains numb you lose track of anything but your rear, even the ache in your shoulders and wrists from holding your weight fading away before the constant pounding.<br>
<br>
Staring down you see rather than feel when your <<getWordMyPenis $player>> finally fires off, the cum splattering across the floor amidst your trail of drool followed shortly by the vibrations coming to a stop.<br>
<br>
[<<moveTo "event_fetstore_chastity_finish_bonus_4" "Continue." 600>>]
</div>/*#
#desc: finish chastity trial bonus fucking
#status: RELEASED 0.6.0.0
#*/
<<set _sceneBonus = 200>>
<<set $player.cutscene.lockinventory=false>>
<<if $roomchange == true>>
<<set $player.money.total += _sceneBonus>>
<<addItem "advance_chastity_cage_key">>
<<wearItem $player $now "c_cage_advanced" true>>
<<manipulateItem $player $now "c_cage_advanced" "lock" true>>
<</if>>
<<set _tmpVal = setup.checkOutsideDecency($player)>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/fetish_store.png" "./images/characters/npc_sexstore_clerk.png">>
<div id="invframe" class="scrolltext">
"@@.npc_sexstore_clerk;Very nicely done, this is exactly the reaction we were looking for.@@" the clerk notes as he helps you back to your feet and extracts the dildo from your rear. The chains holding you up lower a few inches so that you can finally stand flat-footed only for him to stop the process of releasing you and re-attach the chastity cage.<br>
<br>
"@@.npc_sexstore_clerk;Merely a safety precaution.@@" He states as he locks it in place "@@.npc_sexstore_clerk;until the numbing agent wears off you could easily harm yourself without feeling it. You will be leaving with the key, and your payment, so you can safely remove it once you return home.@@"<br>
<br>
Still recovering from the forced analgasm you nod weakly as he removes your cuffs and gag and, after making sure you can stand unaided, helps you back into your clothes.<br>
<br>
He hands you your payment and the key and leaves you to get dressed.<br>
<br>
<<if _tmpVal>>
[<<moveTo "event_chastity_trial_finish_phonecall" "Continue." 30 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[@@.link_locked;I really need to dress more appropriate to leave@@]
<</if>>
</div>/*#
#desc: manager calls after you finish chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = "Phonecall">>
<<if $roomchange == true>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, !$npc_manager.flags.playerstayedinchastity)>>
<<default>>
ERROR, unexpected stage: <<=$npc_manager.stage>>
<</switch>>
<</if>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You have just stepped out of the door when your phone rings, it is from <<=setup.getNpcName('npc_manager', 'manager')>>!<br>
<br>
Your cage suddenly feels more restricting and you take a deep breath before answering.<br>
<br>
"@@.npc_manager;Hello, my dear. I just heard that you have finished up with that little chastity trial you were taking part in.@@"<br>
<br>
<<printThought $player "What? How could she know so fast?">><br>
<br>
As if reading your thoughts she continues on "@@.npc_manager;it is, of course, the responsibility of a good manager to keep track of all the goings on in her subordinate's life - and am I not excellent at... managing you, my sweet SISSY secretary?@@"<br>
<br>
You know better than to do anything but agree and you can all but see her beaming with that proud, catlike smile on the other end of the line.<br>
<br>
"@@.npc_manager;Wonderful, I just wanted to remind you that, though your so-called "trial" may be over with I expect you to show up to work caged and secure as always. Moreover you should bring that key with you for safekeeping during the day. It is not that I do not trust you but well... you understand that you will be much more able to focus on your duties if you are not distracted by some ill-conceived possibility of freedom.@@"<br>
<br>
<<printThought $player "It's like everything I do I give up more control...">><br>
<br>
"@@.npc_manager;Well, that is all, see you at work my locked lovely!@@"<br>
<br>
She hangs up and you shudder, even from a distance she has no difficulty exerting what feels like absolute, irresistible control.<br>
<br>
[<<moveTo "room_mall" "Put your phone away" 60>>]
</div>/*#
#desc: manager confiscates key after chastity trial
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'submission' 6 'normal' $SEEN_FRIEND>>
<<set $scene.wearingAdvanced = (setup.getItemFromType("cage") == "c_cage_advanced")>>
<<set $npc_manager.flags.took_adv_key = true>>
<<deleteItem $player $now 'advance_chastity_cage_key'>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;So,@@" says with a cat-like grin, "@@.npc_manager;about that chastity trial you recently finished...@@"<br>
<br>
<<if $scene.wearingAdvanced>>
"@@.npc_manager;First off, well done continuing to wear it to work. It looks just perfect on you and you absolutely made the right decision keeping it in place. Towards that end well... I thought it would be best if I held onto the key. Obviously you are accustomed to having it in the possession of a keyholder and well... why break a good habit?@@" She smiles, you gulp.<br>
<br>
<<if $scene.inWardrobe>>
"@@.npc_manager;Now, I was going to ask you to hand over the key but... forgetful girl that you are, you appear to have forgotten such at home? No matter, I did some research and have already attended to re-keying the device to a new frequency. Your old key is now utterly useless and the new key... well, that will be safely in my possession. Feel free to ask for it back at the end of the day... if you think you deserve such.@@"
<<else>>
You really have no choice, handing over the key fob as she smiles. "@@.npc_manager;Do not worry, I will be taking good care of this for you, and you always have the option of requesting it back at the end of the day... if you think you deserve such.@@"
<</if>>
<br><br>
"@@.npc_manager;Of course I would not wish to take something from you without giving in return so... Here.@@" She hands you a pink box. "@@.npc_manager;These are for you.@@"
<<else>>
"@@.npc_manager;Obviously I was hoping to have some fun of my own with that fancy new cage but... hmm, it seems you have decided on something a bit more... old-fashioned. Regardless, I thought it would be good to give you a little reward for your efforts to advance the state of science, here, these are for you.@@"<br>
<br>
She hands you a pink box.
<</if>>
<br><br>
[<<moveTo "event_manager_good_girl_sissy_panties" "Accept her gift." 360 "<<set $scene.afterWork = false>>">>]
</div>/*#
#desc: manager congratulates full female, suggests makeup
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> pauses after you have finished dressing, scrutinizing you intently for just long enough for you to feel nervous.<br>
<br>
<<printThought $player "What's going on, isn't the morning inspection over?">><br>
<br>
<<switch $scene.bonus_gift>>
<<case 'makeup_pink_secretary'>>
<<=setup.getNpcName('npc_manager', 'formal')>> steps towards you, sending your heart racing faster. "@@.npc_manager;Your adherence to your new dress code is... well it is just stunning, a sight to bring a smile to any face and yet...@@" She gently brushes your cheek. <br>
<br>
<<if $npc_manager.flags.party.first_attend>>
"@@.npc_manager;Well, the rest of your lovely femininity unfortunately draws attention to your lack of proper makeup. Why, when I think of how lovely you looked all done up for the party...@@" She appears almost wistful for a moment before regarding you once again with a borderline predatory grin.
<<else>>
"@@.npc_manager;Well, the rest of your lovely femininity unfortunately draws attention to your lack of proper makeup. So, I think to myself well... we shall have to do something about that, hmm?@@" She graces you with a predatory grin.
<</if>>
<<case 'makeup_nomakeup'>>
<<=setup.getNpcName('npc_manager', 'formal')>> steps towards you, sending your heart racing faster. "@@.npc_manager;Your face... it is subtle but I have seen you enough to detect the truth.@@" She gently brushes your cheek. "@@.npc_manager;You are wearing makeup which is just... wonderful but...@@" She smiles in a way likely meant to be comforting but, on her, still makes you nervous.<br>
<br>
"@@.npc_manager;Certainly what you have is better than nothing but, in a way, it only draws attention to the fact that something a bit less subtle could make you so much more...@@" She appears almost wistful for a moment before regarding you once again with a borderline predatory grin.
<<default>>
ERROR unexpected scene.bonus_gift! <<=$scene.bonus_gift>>
<</switch>>
<br><br>
"@@.npc_manager;Yes... I apologise if it seems like your uniform requirements are changing a bit swiftly as of late but, well... when the destination is in sight, why tarry? After all, you want to be the best, prettiest SISSY Secretary that you can, right?@@"<br>
<br>
You blush, even if you had the courage to object to forcing you another step down this feminising road you would struggle to find the words to deny her, not with her standing in front of you... looking at you like THAT.<br>
<br>
<<if $player.flags.fem_style.female == "voluntary" || $player.flags.fem_style.female == "obedient" || setup.getTotalValue("feminization") > 12>>
<<printThought $player "Hmm, she's right, I would look a lot better with some proper makeup...">>
<<else>>
<<printThought $player "What? Women's clothing isn't enough, now I have to paint myself up to look like a girl too?">>
<</if>>
<br><br>
[<<moveTo 'event_makeup_obedient_1' 'Agree with her suggestion but point out that you could use some instruction.' 120>>]<br>
[<<moveTo 'event_makeup_money_1' 'This sounds like extra work and expense, see if you can get a pay raise for it?' 120>>]<br>
[<<moveTo 'event_makeup_forced_1' 'This is too much, refuse!' 120>>]
</div>/*#
#desc: excuses not to wear makeup
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You really don't want makeup being added onto your already humiliating routine, and you try to come up with an excuse, explaining that you really don't have the supplies, or know what you're doing or anything...<br>
<br>
She pish-poshes you at every turn, first producing an expansive makeup kit before telling you to take the whole morning reviewing tutorials online, stating that "@@.npc_manager;after all, you are already so cute it will not take much work at all to have you looking the picture of feminine beauty.@@"<br>
<br>
Having verbally headed you off at every turn she finally leaves you alone, the makeup kit looming ominously on your desk as she returns to her office with a parting note that she expects you to be looking "@@.npc_manager;radiant and beautiful when you deliver my lunch order.@@"<br>
<br>
<<printThought $player "Crap... What am I going to do now?">><br>
<br>
Merely glancing into the kit, with its dozens upon dozens of pallets in addition to brushes and other things you don't even know the name of your head spins and you try to decide what to do.<br>
<br>
[<<moveTo 'event_makeup_forced_2' 'Abort this foolish plan, ask for help and beg her forgiveness.' 60 "<<set $scene.makeup_decision = 'good'>>">>]<br>
[<<moveTo 'event_makeup_forced_2' "As unlikely as it seems, maybe this is just a prank; ignore her instructions and just do your work. She can't get upset at you for doing your job, right?" 600 "<<set $scene.makeup_decision = 'neutral'>>">>]<br>
[<<moveTo 'event_makeup_forced_2' "Rebel! Make a mess of your face to show that you don't belong in makeup." 600 "<<set $scene.makeup_decision = 'bad'>>">>]
</div>/*#
#desc: forced makeup unlock
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.makeup_decision=="good">>
<<if $player.flags.fem_style.makeup == "">>
<<set $player.flags.fem_style.makeup = "obedient">>
<</if>>
<<set $player.makeup.permanent = 'normalmakeup'>>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<else>>
<<addEvent 'bad_girl_makeup_inspection'
'{"trigger":"always","type":"next", "location": "room_office_sissy_secretary_work_lunchbreak"}'
'{"szene":"event_bad_girl_makeup_inspection"}'
>>
<<if $player.flags.fem_style.makeup == "">>
<<set $player.flags.fem_style.makeup = "forced">>
<</if>>
<<if $scene.makeup_decision=="bad">>
<<set $player.makeup.template = 'ruined'>>
<<set $player.makeup.messed = 100>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<if setup.getTotalValue("makeup") == 0>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addPopUpText 'New Link "Make up Tutorial" added'>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.makeup_decision=="good">>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.makeup_decision>>
<<case "good">>
Nervously you head into her inner office, apologizing profusely for your prior outburst and begging for assistance.<br>
<br>
Her expression is enigmatically unreadable for several tense moments before she finally leans over to retrieve something for her desk. At first you brace for the familiar paddle but instead she comes up with an odd mask-shaped device.<br>
<br>
"@@.npc_manager;While I still believe you should learn to do makeup yourself for... various reasons, I would rather it be done right than suffer through with a dishevelled SISSY secretary.@@"<br>
<br>
Before you can figure out what she's talking about she has brought the mask to your face, holding it tight as there is a strange tingling and a brief flash.<br>
<br>
She pulls it away and you blink, looking into a nearby mirror to find that you are now wearing simple, but totally perfect, female makeup. Astonished you bring a your hand to the face that looks similar, and yet subtly unlike, your own. Running your hand over things changes nothing as she returns your shocked expression with a smile and explains. "@@.npc_manager;Just a bit of convenient tech - you do not need to worry about things running or smudging, it should remain perfectly pristine for at least three to five years before the nanites start to break down. You can always learn to apply traditional makeup over top, or even get it redone entirely at any decent salon, but for now all of your makeup worries are conveniently addressed.@@"<br>
<br>
Still blinking in surprise you manage to mumble something approaching a thanks before she shoes you away while congratulating you on "@@.npc_manager;coming to your senses just in time!@@"<br>
<br>
Returning to your desk still in something of a daze you sit for a moment to collect yourself before turning to your computer.
<<case "neutral">>
Ignoring the alarms in your head telling you that this is a very bad idea you sit down at your desk. Doing your best to ignore the looming presence of the makeup kit sitting next to you to face your computer.
<<case "bad">>
Anger burning in your chest at your manager's attempt to inflict further feminine routines upon you you open up the makeup kit and start grabbing colours and brushes at random. Scrawling all over yourself you don't stop until your face is all but unrecognizable, a look that can only be described as the result of a rainbow clown trying to doll themselves up in the dark in the midst of an epileptic seizure.<br>
<br>
With a snort of satisfaction you return to your computer.<br>
<br>
<<printThought $player "That'll show her if she thinks I'm going to paint myself up to look like some meek girl...">>
<<default>>
ERROR: unexpected scene.makeup_decision <<=$scene.makeup_decision>>!
<</switch>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start Working." 60>>]
</div>/*#
#desc: greed makeup unlock
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $player.flags.fem_style.makeup == "">>
<<set $player.flags.fem_style.makeup = "money">>
<</if>>
<<set _makeupBonus = 50>>
<<set $player.money.total += _makeupBonus>>
<<if setup.getTotalValue("makeup") == 0>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addPopUpText 'New Link "Make up Tutorial" added'>>
<</if>>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You bring up the fact that, as you really have no knowledge of how to apply makeup obeying her instructions in time for your next workday is going to necessitate you going to a professional which is certainly quite an expense...<br>
<br>
To your surprise she does not even attempt to argue with you. "@@.npc_manager;Quite so, and I would certainly not want to be looking at an amateurishly made-up secretary... Here you go.@@" She states, casually handing you <<=_makeupBonus>> credits. "@@.npc_manager;That should be sufficient to get you started at a salon - though I would recommend learning to do it yourself, as well. After all, how else will you touch things up and keep yourself looking perfect throughout the day?@@"<br>
<br>
You're still a bit shocked at how easily your gambit succeeded - was this what you wanted? Enough money to pay for a sexy new face... or were you hoping to bluff her out of "upgrading" your requirements? Either way you're in for it now and you should probably hit up the mall on the way home from work.<br>
<br>
Gracing you with a final smile she strokes your chin. "@@.npc_manager;Oh, I just cannot wait for tomorrow to see your new face! You are going to be the prettiest secretary in the company!@@"<br>
<br>
Bashfully turning away from her gaze you watch her head back to her inner office out of the corner of your eye before pocketing your "bonus" and turning towards your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start Working." 60>>]<br>
</div>/*#
#desc: barista teaches you makeup
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $player.flags.fem_style.makeup == "">>
<<set $player.flags.fem_style.makeup = "obedient">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_barista.png">>
<div id="invframe" class="scrolltext">
After a few minutes wait who should appear but <<=setup.getNpcName('npc_barista', 'nickname')>>, the sexy barista who works at the Cafe 52 coffeeshop.<br>
<br>
"@@.npc_barista;Heya <<=$player.first_name>>!@@" She gleefully states, depositing a large box on your desk and smiling down. Flipping up the top of the container she unfolds a dizzying array of makeup brushes, pallets and creams that makes you half wonder if the container was built with some sort of tardis-like technology.<br>
<br>
"@@.npc_barista;Alright!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> continues with a grin. "@@.npc_barista;Apparently you've made it this far into becoming a cute, sexy girl without knowing how to do makeup! That's, like, such a tragedy! But fortunately your bimbo bestie is here to help!@@"<br>
<br>
<<printThought $player "Bimbo bestie? She really is all-in on the airhead sex-pot aesthetic...">><br>
<br>
Plopped down in your chair in front of the mirror you try to process the deluge of information as <<=setup.getNpcName('npc_barista', 'nickname')>> goes through what each item in the kit is for.<br>
<br>
[<<moveTo 'event_makeup_obedient_2' 'Listen close.' 600>>]
</div>/*#
#desc: barista teaches you makeup
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<unlockMakeup $player 'normalmakeup'>>
<<addItem "makeup_advanced">>
<<setThreshold 'makeup' 'makeup_instruction' 'beginner_tutorial' true>>
<<set $player.makeup.template = 'normalmakeup'>>
<<set $player.makeup.messed = 15>>
<<set $npc_barista.flags.makeupoffer = true>>
<<if setup.getTotalValue("makeup") == 0>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addPopUpText 'New Link "Make up Tutorial" added'>>
<</if>>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_barista.png">>
<div id="invframe" class="scrolltext">
Your eyes start to glaze over at the complexity of what women apparently have to do every day before finally clinging to the lifeline that is <<=setup.getNpcName('npc_barista', 'nickname')>> setting you up with a basic, "starter" routine.<br>
<br>
"@@.npc_barista;You can, like, check out tutorials online if you want something more "invisible" and basic but, like... what would be the point?@@" She sighs wistfully as she watches you try to follow her instructions and paint yourself up. "@@.npc_barista;You know you would look like... so hawt laying it on, some big, smokey eyes, a pair of thick cocksucking lips...@@" She seems to drift off for a moment before focusing back. "@@.npc_barista;No no, pay attention to what you're doing, the mascara should give volume but not make things look chunky, a delicate hand...@@"<br>
<br>
After your not-exactly-great effort she shows you how to strip everything off then has you try again. By the third time you actually look halfway decent, and definitely much more feminine.<br>
<br>
"@@.npc_barista;Well I guess that will have to do for now.@@" She states with a nod. "@@.npc_barista;Keep practicing! And, like, come hit me up if you want to learn how to do something a bit more fun and, like, sexy! Oh, and if you get sick of how beat up your makeup can look at the end of a long, hard... night well any decent salon should be able to apply your favourite style permanently!@@"<br>
<br>
You thank her for the assistance and she grins, helping you pack on and giving you a "slightly-more-than-friends" hug before skipping out the door, her bouncy skirts over her certainly plugged bum swishing merrily with each step.<br>
<br>
Putting the makeup kit aside you settle back in to work, noticing a message from your manager reminding you to "@@.npc_manager;stay on top of your makeup, it would be very unprofessional for my SISSY secretary to be looking run down in the afternoon.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start Working." 60>>]
</div>/*#
#desc: forced makeup unlock
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
It's time for lunch and your computer pings with a message from <<=setup.getNpcName('npc_manager', 'formal')>> summoning you into her office.<br>
<br>
<<switch $scene.makeup_decision>>
<<case "neutral">>
You walk into her office and her expression of interest immediately narrows to one of annoyance.<br>
<br>
"@@.npc_manager;What is that? Did you even TRY to follow my instructions?@@" Standing up from her desk she stalks towards you and you take a reflexive fearful step back before her wrathful presence. "@@.npc_manager;No, you apparently did not; I gave you the entire morning to work on bettering yourself and you flaunt it...@@" Her nostrils flare as you brace yourself only for her to stalk back to her desk and search for something in a drawer.<br>
<br>
Heart pounding you await the paddling that is sure to come but instead she approaches you bearing an oval, mask-like object.<br>
<br>
Bringing the mask to your head she holds it tight over your face as you feel it subtly reshape to press against your skin. You feel a strange warmth, your eyelids seeming to close of their own accord until you see the outline of a flash and she removes the mask.<br>
<br>
Turning towards a mirror you are shocked to find yourself facing a feminized version of your own complexion, lipstick, blush and mascara working together to really bring out your "femininity." <br>
<br>
"@@.npc_manager;There, since you refused to take the opportunity for personal betterment it has been inflicted upon you instead. I still encourage you to practice applying makeup yourself but until then... well, the nanobots should last a good three to five years without maintenance and until then your face will remain looking as perfect as it does now. Now, at to my lunch order... go fetch me <<getFood $player>>@@"<br>
<br>
Still dazed by the sight of your reflection you stumble out of her office and let the door close behind you.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue" 60 "<<set $player.makeup.messed = 0>><<set $player.makeup.template = ''>><<set $player.makeup.permanent = 'normalmakeup'>>">>]
<<case "bad">>
Her expression goes from shock to rage in less than an instant in the moment she lays eyes on you.<br>
<br>
"@@.npc_manager;What the hell happened to you? Did you... do this to yourself?@@"<br>
<br>
She stares at you for several seconds as if not believing her eyes before finally slowly leaning over to retrieve and oval shaped object from her desk.<br>
<br>
She strides menacingly towards you. You would try to run if you were not already rooted in place with fear.<br>
<br>
"@@.npc_manager;Hold still.@@" She states, taking you by the throat with one hand while her other brings the mask to your face. A slight squeeze is all that it takes to suppress any thought of struggle, while driving home the reminder that she's more than strong enough to choke off the flow of oxygen, or possibly snap your neck like a twig.<br>
<br>
The mask seems to mold to your face before heating up slightly, almost burning as you squeeze your eyes in pain. A few seconds later there is a flash and then she removes the mask and turns you to face a mirror.<br>
<br>
You gawk in surprise, the face staring back at you may move in kind but it is not your own - instead you find yourself facing what looks like a porcelain, sissified doll, pink lips open wide in shock.<br>
<br>
"@@.npc_manager;If you are going to act like a mindless, stupid doll well... you might as well look like one.@@" You bring your hands to your face, trying to rub away at the decoration but unable to so much as smudge your lipstick.<br>
<br>
"@@.npc_manager;Do not worry about mussing your new look - it is effectively permanent... at least until the nanobots break down in about five years. Of course you could get it replaced at any competent salon but that would not change the fact that I expect you to be properly made up like the lovely sissy girl you are meant to be. Now get back to work, you have wasted enough of my time today.@@"<br>
<br>
<<printThought $player "Is this what I've come to? A mindless doll for her to dress up as she pleases?">><br>
<br>
Stunned, but not wanting to meet further punishment you flee back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue" 60 "<<set $player.makeup.messed = 0>><<set $player.makeup.template = ''>><<set $player.makeup.permanent = 'sissy_doll'>>">>]
<<default>>
ERROR: unexpected scene.makeup_decision <<=$scene.makeup_decision>>!
<</switch>>
</div>/*#
#desc: pay first month's rent (return to apartment if triggered by phonecall), offers you "job" cleaning his flat
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<setScene>>
<<if $player.money.total > 0>>
<<set $scene.insurance_charge = $player.money.total + $player.money.base_rent>>
<<else>>
<<set $scene.insurance_charge = 2*$player.money.base_rent>>
<</if>>
<<if (setup.checkVisibleClothingTag('female')>10)>>
<<set $npc_landlord.call_name = "Chica">>
<<set $scene.firstTimeChica = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_hallway_01.png" "./images/characters/npc_landlord.png">>
<div id="invframe" class="scrolltext">
<<=$npc_landlord.first_name>> appears for the monthly rent but you can tell from the moment you look at him that there is something else wrong.<br>
<br>
"@@.npc_landlord;Unfortunately there is... additional problem, if we could go inside?@@"<br>
<br>
Suddenly scared you nod, motioning for him to follow you into the foyer.<br>
<br>
<<=$npc_landlord.first_name>> smiles awkwardly, as if to delay or ease what is obviously going to be bad news. "@@.npc_landlord;So, you know how your lavadora, er, washing machine, she explode?@@"<br>
<br>
You nod, you're not liable to ever forget that event... or the part it played in the feminine spiral that has since ensued.<br>
<br>
"@@.npc_landlord;Well, the insurance appraiser come back and, well, they determined it was no accident, but user error. That you had miss-loaded it and thus... they no pay out.@@"<br>
<br>
You freeze, keeping up with rent on your own is bad enough, the idea of another sudden expense... Nervously you ask how much it cost.<br>
<br>
"@@.npc_landlord;The replacement and disposal and everything else normally covered by the insurance comes to... <<=$scene.insurance_charge>>@@" You go wide-eyed, how could it be so much? But he hurriedly continues on.<br>
<br>
"@@.npc_landlord;No, no, do not cry, <<=$npc_landlord.call_name>>! I have a plan!@@"<br>
<br>
Trying to smile hopefully at his obvious earnest interest you listen as he explains.<br>
<br>
"@@.npc_landlord;You see, even though <<=setup.getNpcName('npc_exgirlfriend', 'formal')>> was the one who handled the payments, your original rent agreement only has your signature on it. I can tweak the paperwork and write off the insurance expense against the "original rentee" then write a new rental agreement.@@"<br>
<br>
You squint in confusion, not understanding how this would help your situation.<br>
<br>
"@@.npc_landlord;You see, it's simple. We leave the expense associated with the original rental agreement - which loses your security deposit, of course, but then you re-rent your apartment under a different name. I was thinking that well...@@" he gestures towards your body "@@.npc_landlord;with your changes, and muy hermosa changes they are, well... a new name make sense anyway, no? The alternative well... if you no have money today you can put it on credit but if you no pay off by next month the owners, they kick you out for sure; and it seem steep price to pay when you already struggling.@@"<br>
<br>
He helpfully pulls over a chair and you sit in silent thought for a moment. It really does seem like the better deal.<br>
<br>
[<<moveTo "event_insurance_2" "Whatever it takes to save money, agree to his proposal." 30 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_insurance_2" "Decline his offer, you'll figure out the money... somehow" 30 "<<set $scene.agree=false>>">>]
</div>/*#
#desc: accept/decline offer to change name to avoid insurance payment
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<if $scene.agree>>
<<set $player.money.base_rent -= 100>>
<<set $npc_landlord.call_name = "Chica">>
<<else>>
<<set $scene.total = $scene.insurance_charge + $player.money.base_rent>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_hallway_01.png" "./images/characters/npc_landlord.png">>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
Letting out a sigh, you nod in agreement. "@@.npc_landlord;I am sorry to do this but it make best of bad situation, no?@@"<br>
<br>
You nod as he produces paperwork for you to both change your name as well as agree to a new rental agreement. On the upside you note with surprise that the monthly rent is actually a full hundred credits lower at only <<=$player.money.base_rent>>. You look up at him in question after noticing the smaller number.<br>
<br>
"@@.npc_landlord;I apply special rate, after all, with only one person living here there is less wear and tear, no?@@"<br>
<br>
You nod, barely holding back tears at this act of kindness as you think about what you want your new name to be.<br>
<br>
<<printThought $player "The things I do for money...">><br>
<br>
[<<link "Enter your new name">><<openDialog "Enter your new name:" "dialog_selectNameInsurance">><</link>>]
<<else>>
After thinking about it you decline his offer. He looks surprised.<br>
<br>
"@@.npc_landlord;You certain, <<=$npc_landlord.call_name>>? If you no take deal now you will be on the hook for <<=$scene.total>>.@@"<br>
<br>
[<<moveTo "event_insurance_2" "He's right, what's a name, anyway? Take the deal and save the money." 30 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_insurance_decline" "Stand firm and dive into debt." 30>>]
<</if>>
</div>/*#
#desc: decline offer to change name to avoid insurance payment and eat lots of debt
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $player.money.total -= $scene.total>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You authorise the transfer of the full <<=$scene.total>>, wiping out your savings and plunging you deep into debt in the process.<br>
<br>
<<=$npc_landlord.first_name>> seems both surprised and disappointed at you not taking up his offer but he thanks you for the payment and departs.<br>
<br>
Closing the door behind him you sigh.<br>
<br>
<<printThought $player "Was that really such a good idea? It holding onto my name in the face of all the rest really worth it? Maybe I should just become a new person and move on...">><br>
<br>
Unfortunately - though you could probably change you name manually online or something, your stubbornness has left you in quite a bit of debt; you'll have to work quite hard indeed if you want to catch up by next month.<br>
<br>
[<<moveTo "room_foyer" "Return to your apartment." 30>>]
</div>/*#
#desc: dialog box for choosing your name on insurance (money) path
#status: RELEASED 0.6.0.0
#*/
<center>
<<textbox "$sissyname" "" autofocus>>
</center>
<br>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'event_insurance_3'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: landlord confirms name selection
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $player.flags.fem_style.name = "money">>
<<applyExperience 'feminization' 13 'very' $SEEN_FRIEND>>
<<set $scene.first_namechange = true>>
<<set $acceptname = "">>
<<if $sissyname.toLowerCase() == $player.first_name.toLowerCase()>>
<<set $acceptname = "samename">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == $player.last_name.toLowerCase()>>
<<set $acceptname = "lastname">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == $npc_landlord.first_name.toLowerCase() || $sissyname.toLowerCase() == $npc_landlord.last_name.toLowerCase()>>
<<set $acceptname = "landlord">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == $npc_manager.first_name.toLowerCase() || $sissyname.toLowerCase() == $npc_manager.last_name.toLowerCase()>>
<<set $acceptname = "manager">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == 'sissy' || $sissyname.toLowerCase() == 'sissyname'>>
<<set $acceptname = "sissy">>
<<applyExperience 'bimbofication' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<if $acceptname == "">>
<<set $player.call = "Miss">>
<<set $player.original_first_name = $player.first_name>>
<<set $player.first_name = $sissyname>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
'theme_psychiatrist_transition_header'
>>
<<set $locationbeforeuseage = "room_foyer">>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_hallway_01.png" "./images/characters/npc_landlord.png">>
<div id="invframe" class="scrolltext">
<<switch $acceptname>>
<<case "samename" "lastname">>
You finish filling things out and he double checks the paperwork. He shakes his head.<br>
<br>
"@@.npc_landlord;No, <<=$npc_landlord.call_name>>, this scheme only work if you change your name to something new.@@"<br>
<br>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameInsurance">><</link>>]<br>
<<case "manager">>
You're about to hand him the paperwork when you realise how confusing, and punishment-inducing, it would be to have the same name as <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameInsurance">><</link>>]
<<case "landlord">>
You finish filling things out and he double checks the paperwork. He shakes his head.<br>
<br>
"@@.npc_landlord;No, <<=$npc_landlord.call_name>>, you need to take this seriously, that's my name! You need one of your own.@@"<br>
<br>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameInsurance">><</link>>]
<<case "sissy">>
You look at what you entered before deciding that it's maybe a bit too on the nose...<br>
<br>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameInsurance">><</link>>]
<<default>>
You hand him the paperwork and he gives it a quick once over.<br>
<br>
"@@.npc_landlord;Bueno. I get this all filed and taken care of, sorry for all of this but... we make it all better, no? And <<=$player.first_name>> is a lovely name for a lovely <<=$npc_landlord.call_name>>.@@"<br>
<br>
You blush and bid him farewell, closing the door behind to stand alone in your flat. Still in a bit of a daze you stand for several minutes before you are interrupted by your phone ringing.
<br>
[<<moveTo "event_name_change_phonecall" "Answer the phone." 600>>]
<</switch>>
</div>/*#
#desc: look up changing name online
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You open up the government website for name changes. It's actually quite convenient; you can apparently do all the filing and everything in just a few minutes from home. It is almost as simple as just entering your new name, waiting a moment for approval, then paying a small transaction fee.<br>
<br>
[<<link "Enter your new name">><<openDialog "Enter your new name:" "dialog_selectNameVoluntary">><</link>>]<br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: at home namechange checker
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<if $roomchange == true>>
<<setScene>>
<<set $acceptname = "">>
<<if $sissyname.toLowerCase() == $player.first_name.toLowerCase()>>
<<set $acceptname = "samename">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == $player.last_name.toLowerCase()>>
<<set $acceptname = "lastname">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == $npc_manager.first_name.toLowerCase() || $sissyname.toLowerCase() == $npc_manager.last_name.toLowerCase()>>
<<set $acceptname = "manager">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == 'sissy' || $sissyname.toLowerCase() == 'sissyname'>>
<<set $acceptname = "sissy">>
<<applyExperience 'bimbofication' 6 'normal' $SEEN_FRIEND>>
<</if>>
<<if $acceptname == "">>
<<set $player.call = "Miss">>
<<set $player.original_first_name = $player.first_name>>
<<set $player.first_name = $sissyname>>
<<if $player.flags.fem_style.name == "">>
<<set $player.flags.fem_style.name = "voluntary">>
<<applyExperience 'feminization' 15 'very' $ALONE>>
<<set $scene.first_namechange = true>>
<<else>>
<<set $scene.first_namechange = false>>
<</if>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<switch $acceptname>>
<<case "samename">>
The computer pops up an error, apparently the government systems don't allow changing your name to the name you already have.<br>
<br>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]<br>
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "lastname">>
The computer issues an error message, apparently having the same name for both first and last name isn't allowed.<br>
<br>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "manager">>
You're about to click confirm but then realise how confusing, and punishment-inducing, it would be to have the same name as <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "sissy">>
You look at what you entered before deciding that it's maybe a bit too on the nose...<br>
<br>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "">>
The computer shows a loading screen and a number pops up. A bill shows up showing a very expensive quantum of credits. After Tax and all other costs you would be set back <<glitchText "10200">> Credits. Almost ready to cancel the whole process, the screen starts to flicker cyan and pink.<br>
<br>
You reload the page, but the bill is nowhere to be seen. Neither is a payment or accept dialog, which sites like these normally should have. You are simply greeted by a success message, popping up a window congratulating you on your new name - <<=$player.first_name>> <<=$player.last_name>>. Strangely it goes straight to confirming that your name has been updated in all systems government and corporate. A bit surprised at the lack of red tape you find that, for some reason your account has been auto-credited for the transaction, with the words "@@.npc_ai;fees waived.@@" Your only hint.<br>
<br>
<<printThought $player "Some sort of glitch, I guess? Weird.">><br>
<br>
[<<moveTo "room_computer_online_name_change_3" "Continue." 0>>]
<</switch>>
</div>/*#
#desc: finish changing your name online
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<if $roomchange == true>>
<<if $scene.first_namechange>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
'theme_psychiatrist_transition_header'
>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first_namechange>>
Your heart races as you pull out your digital ID and watch it update to your new name - <<=$player.first_name>> <<=$player.last_name>> glowing in government issue font...<br>
<br>
You nearly jump when your phone goes off, it's your <<=setup.getNpcName('npc_manager', 'title')>>, <<=setup.getNpcName('npc_manager', 'formal')>>...<br>
<br>
[<<moveTo "event_name_change_phonecall" "Answer the phone." 0>>]<br>
<<else>>
You look at your digital ID with your new name <<=$player.first_name>> <<=$player.last_name>>; perhaps this one will suit you better than your previous efforts.<br>
<br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
<</if>>
</div>
/%
Maybe have this allow changing first and last name together?
%//*#
#desc: dialog box for choosing your name online
#status: RELEASED 0.6.0.0
#*/
<center>
<<textbox "$sissyname" "" autofocus>>
</center>
<br>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'room_computer_online_name_change_2'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: intro to canteen spill event
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = 'Canteen'>>
<<if $roomchange==true>>
<<set $player.flags.canteen_spill += 1>>
<<set $npc_manager.flags.spill_event = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You are walking into the work canteen to fetch your manager's lunch as you usually do. Turning the corner into the canteen you catch a glimpse at another, obviously distracted employee who's just a fraction of a second apart from collision.<br>
<br>
[<<moveTo "event_canteen_spill" "Try to dodge!" 60>>]
</div>/*#
#desc: food spilt on you when fetching lunch from canteen
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'Canteen'>>
<<if $roomchange==true>>
<<setScene>>
<<set $scene.food = setup.getRandomStainingFood()>>
<<if setup.getTotalValue("dexterity") < 5>>
<<if setup.getItemFromType('legwear') != "">>
<<set _legwear = setup.getItemFromType('legwear')>>
<<changeItemStatus _legwear 'dirty' '["set",100]'>>
<</if>>
<</if>>
<<if setup.getItemFromType('shirt')!="">>
<<set _shirt = setup.getItemFromType('shirt')>>
<<if _shirt == "shirt">>
<<swapItem $player $now "shirt_stained" true>>
<<changeItemStatus 'shirt_stained' 'dirty' '["set",100]'>>
<<else>>
<<changeItemStatus _shirt 'dirty' '["set",100]'>>
<</if>>
<</if>>
<<if setup.getItemFromType('shoes')!="">>
<<set _shoes = setup.getItemFromType('shoes')>>
<<changeItemStatus _shoes 'dirty' '["set",100]'>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dexterity") >= 5>>
Nimbly you try to dodge, managing to avoid most of it but not quite evading a few splashes splattering your shoulder. Looking down at the tray on the ground you think it was a meal of <<=$scene.food.name>>.
<<else>>
You try to move away but you just aren't fast enough and their tray of soup flies into the air, covering your clothes with what an errant drop hitting your lips tells you is <<=$scene.food.name>>.<br>
<</if>>
<br>
<<if $player.flags.canteen_spill == 1>>
<<printThought $player "Oh <<getWordGod $player>>, why me?">><br>
<br>
Standing there shocked you stare as the other employee frantically apologises for their mistake. you try to think what to do - on the one hand you manager did send you for lunch and it would be a shame to return empty-handed, but on the other, you are a tomato-stained dripping mess.
<<elseif $player.flags.canteen_spill == 2>>
<<printThought $player "I mean, come on! Again? Really?">><br>
<br>
Looking down you realise that it is actually the same man from before who has, once again, wrecked your outfit. You do not have time to think about such things, however as you once again need to make the decision to shoulder through and wait in line for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch or retreat immediately.
<<else>>
<<printThought $player "What is this? Secret food Ninjas?">><br>
<br>
At this point you aren't even surprised to see that your "assailant" is the same man from the previous times.<br>
<br>
<<printThought $player "Is he doing this on purpose, or is this just the universe conspiring against me?">><br>
<br>
Ignoring his sputtering apology you need to make the same decision as always - stick it out and get <<=setup.getNpcName('npc_manager', 'formal')>> her meal or return empty-handed.
<</if>>
<br><br>
[<<moveTo "event_canteen_spill_stoic" "You were sent on a mission, and neither rain nor sleet nor <<=$scene.food.nickname>> will stop you from returning with her lunch!" 600>>]<br>
[<<moveTo "event_canteen_spill_retreat" "This is beyond the call of duty, go back and tell your manager what happened." 60>>]<br>
</div>/*#
#desc: ignore the fact you have food spilt on you and wait in line for manager's lunch
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'canteen'>>
<<if $roomchange==true>>
<<addTrueFood $player>>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<<gainWillpower $player 1>>
<<addPopUpText "You gained one point Willpower.">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You get some strange looks and comments as you stand determinedly in line to pick up <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch, fellow employees taking pity on your stained attire to rush you to the front in record time. Still, you remain firm in your decision, the feelings of humiliation somehow only strengthening your resolve.<br>
<br>
Quickly ordering her requested meal you hurry back to the office hoping you might have time after delivering it to clean yourself up a little before your lunch break is over.<br>
<br>
[<<moveTo "event_manager_good_girl_unisex" "Deliver the lunch!" 120>>]
</div>/*#
#desc: manager gives you unisex outfit to replace your lunch-stained clothing
#status: FINISHED 0.4.0.0
#*/
<<if (setup.checkItemWorn("shirt_female_office") && setup.checkItemWorn("trousers_female_office") && setup.checkItemWorn("black_flats") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings"))>>
<<initRoom>>
<<moveTo "event_manager_good_girl_unisex_dressed">>
<<elseif $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<addItem "shirt_female_office">>
<<addItem "trousers_female_office">>
<<if !setup.checkItemInInventory('black_flats')>>
<<addItem "black_flats">>
<<else>>
<<if setup.getItemFromType('shoes')!="">>
<<set _shoes = setup.getItemFromType('shoes')>>
<<changeItemStatus _shoes 'dirty' '["set",0]'>>
<</if>>
<</if>>
<<incrementEmotion 'satisfaction' 'npc_manager' 2>>
<<deleteItem $player $now $player.work.foodID>>
<<set $player.work.foodID = ''>>
<<set $player.work.foodNumber = 0>>
<<set $scene.foodDelivery.done = true>>
<<removeEverythingButUnderwear $player $now>>
<<setThreshold 'feminization' 'good_girl' 'spilling_incident' true>>
<<set _x = setup.addManagerEndlessTask1($now, $npc_manager.stagevalues[1].unisexsecretary, false, false, false)>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Walking calmly into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office it is not until you have placed her meal gently on her desk that she looks up at you.<br>
<br>
"@@.npc_manager;Thank you for the prompt delivery, I really was getting quite peckish-@@"<br>
<br>
Her voice falls off as she catches sight of your stained outfit.<br>
<br>
"@@.npc_manager;Oh my, what happened to you? Did someone spill? Oh you poor thing!@@"<br>
<br>
On her feet in an instant she marches purposefully towards a wardrobe-like cabinet in the corner of her office.<br>
<br>
"@@.npc_manager;Come now, get out of those filthy clothes! Oh, it just is not right for a secretary, much less one of mine, to be in such disarray!@@"<br>
<br>
You do as she commands, stripping off your outer clothing, thankful to note that your undergarments appear to have escaped unscathed. Looking down you realise that your shoes, however caught a few drops, though your hosiery appear safe.<br>
<br>
"@@.npc_manager;I do not quite have something to match what you were wearing, but this should do, and I daresay you will look even better in it than you do in your usual fare.@@"<br>
<br>
She hands you two folded pieces of clothing and a pair of shoes - grey pants, a cyan shirt and small black enamel flats. Upon closer inspection something seems off, all three items seem subtly.... feminine? Well, maybe "subtly" Is an understatement...<br>
<br>
"@@.npc_manager;Come, come, do not just stand there. I know you can dress yourself, so get changed into your new outfit.@@"<br>
<br>
</div>/*#
#desc: change into unisex clothing under manager's direction
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.canteen_spill > 2>>
You swear you hear her whisper "finally" as you start to change, but when you glance up she is silent, merely staring intently and nodding for you to continue.<br>
<br>
<</if>>
"@@.npc_manager;Oh, oh my...@@"<br>
<br>
<<printThought $player "Is she... ogling me?">><br>
<br>
"@@.npc_manager;Come, come, you just HAVE to see yourself, I mean just... stupendous, splendid, sumptuous... and that is just the words that come to mind when I look at you starting with S!@@"<br>
<br>
She guides you to the side of her office where there happens to be a full-length mirror. There is no denying that the outfit fits your body well.... too well, in some ways, the snug crotch of the pants seeming to have no room for your "little soldier." Somehow the clothes look even MORE feminine on your body than they did in your hands and you just stand and gawk at the transformation.<br>
<br>
"@@.npc_manager;Breathtaking, is it not? Why I should have had you in these the first day!@@" She pauses.<br>
<br>
"@@.npc_manager;Sorry, I got a bit excited there. Obviously you have had something of a stressful lunch period so I will not heap anything further upon you. That said....@@"<br>
<br>
She falls silent, but there is no misinterpreting her preference, even if she did not technically make it a mandate. The look in her eyes sends your heart racing in fearful excitement.<br>
<br>
"@@.npc_manager;Ah!, Look at us, blathering on over a little, albeit wondrous, makeover. It is time to get back to work. I would extend my further apologies for the accident you suffered but, well... I think it all ended up working out MUCH for the better. Have a productively wonderful afternoon!@@"<br>
<br>
<<set _lunchEnd = setup.setNextDate($now, 0, 12, 30)>>
<<set _tmpSeconds = setup.secondstoDate($now,_lunchEnd)>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Go back to your desk." _tmpSeconds>>]
</div>/*#
#desc: retreat from lunchroom after being spilt on
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
<<set $player.work.sendhome = true>>
<<set $player.work.sendhomedate = $now>>
/* Note: despite the player's fuckup, shouldn't count to anger/etc. manager to give them another shot at doing things "correctely" after */
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You rush back into your antechamber, where to your surprise <<=ps(setup.getNpcName('npc_manager', 'formal'))>> seems to be checking some records behind your workplace.
<br>
<br>
"@@.npc_manager;Oh, <<=$player.first_name>>, that must be a new speed record. I did not expect you to be back so soon, and good thing because I am feeling rather famish-@@"<br>
<br>
She stops mid-word as she looks up to see you standing in the door, soaked in soup, without her lunch.<br>
<br>
<<if $player.flags.canteen_spill > 2>>
"@@.npc_manager;Really? You ruined your outfit once more and, yet again, failed to return carrying my lunch? You really ought to show more committment to your responsibilities, but fine, you are dismissed, go home and clean yourself up for tomorrow.@@"<br>
<br>
<<printThought $player "Is this happening for a reason? Maybe I should soldier on next time...">><br>
<<else>>
She studies you for several moments, as your heart races nervously, and continues, "@@.npc_manager;Sooooo... would you like to tell me what happened? Impromptu Gallagher show in the hallways?@@"<br>
<br>
You are a bit stunned at the archaic reference but swiftly explain how it wasn't your fault but that you got spilled on in the lunchroom.<br>
<br>
"@@.npc_manager;I see, well I am sorry it happened... though I cannot help but note that you being a little bit extra red is not exactly something that would prevent bringing me my lunch.@@"<br>
<br>
Her disappointment stings, though you have this odd feeling she is not going to hold it against you past this meeting. You apologise for your failure and offer to go back for her lunch.<br>
<br>
"@@.npc_manager;No, no, it will have gotten cold by now, in any case. I shall persevere and you... I think you had best return home to clean up. Take the remainder of the day off, I do not want a secretary looking like they were in a food fight.@@"<br>
<br>
You apologise again and thank her for the courtesy.<br>
<br>
<<printThought $player "Well, just great! Now I feel bad for being attacked by cuisine! I should have at least brought her the food...">><br>
<</if>>
<br>
[<<moveTo "company_lobby" "Leave for the day." 180>>]
</div><<setScene>>
<<set $scene.voluntaryScene = "">>
<<set $scene.wrongMakeup = false>>
<<set $scene.outfitTag = setup.analyzeWornTags(['female','male','unisex'])>>
<<set $scene.makeup = setup.getCurrentMakeup($player)>>
<<if setup.checkPlayerDecency($player)>>
<<switch $scene.outfitTag>>
<<case 'unisex'>>
<<if setup.getFutureMakeup($player,'unisex_visible')>>
<<if $player.flags.fem_style.unisex == "">>
<<set $scene.voluntaryScene = 'voluntaryUnisex'>>
<</if>>
<<else>>
<<set $scene.wrongMakeup=true>>
<</if>>
<<case 'female'>>
<<if $npc_manager.stage >= 2>>
<<if setup.getFutureMakeup($player,'modest_female_visible') >>
<<if ($player.flags.fem_style.female == "") && ($player.flags.fem_style.unisex != "")>>
<<set $scene.voluntaryScene = 'voluntaryFemale'>>
<</if>>
<<else>>
<<set $scene.wrongMakeup=true>>
<</if>>
<</if>>
<</switch>>
<<if !($scene.voluntaryScene == "" && $scene.outfitTag == "female" && $player.flags.fem_style.female == "")>>
<<if $scene.makeup != "" && $scene.voluntaryScene == "" && $player.flags.fem_style.makeup == "" &&
$player.flags.fem_style.unisex != "" && $scene.makeup != "nomakeupmakeup">>
<<set $scene.voluntaryScene = 'voluntaryMakeup'>>
<<if setup.getFutureMakeup($player,'cute_female_visible')>>
<<set $scene.wrongMakeup=true>>
<</if>>
<</if>>
<</if>>
<<if $scene.voluntaryScene!="">>
<<set $scene.orgLocation = $player.plocation>>
<<if ( (getUTCHours($now)>=6) && (getUTCHours($now) <= 20) )>>
<<set $scene.sunlight = true>>
<<else>>
<<set $scene.sunlight = false>>
<</if>>
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
<<if $scene.sunlight>>
<<set $scene.tmpImage = "./images/locations/city_skyline.png">>
<<else>>
<<set $scene.tmpImage = "./images/locations/city_skyline_night.png">>
<</if>>
<<case 'room_mall_apparel_store_changing_booths'>>
<<set $scene.tmpImage = "./images/locations/mall_fashion_store.png">>
<<case 'room_mall_lingerie_shop_changing_booth'>>
<<set $scene.tmpImage = "./images/locations/mall_lingerie_shop.png">>
<</switch>>
<</if>>
<</if>><<switch $scene.voluntaryScene>>
<<case "voluntaryUnisex">>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
Glancing at your reflection you do a momentary double take. The outfit may technically be unisex but on your body it brings out a decidedly feminine profile. Even though nobody is liable to really pay attention going out like this of your own volition seems like quite a step...<br>
<br>
<<printThought $player "I can't go out in public like this... can I?">>
<<else>>
You look at your reflection. The outfit may technically be unisex but on your body it brings out a decidedly feminine profile. A weird sensation comes over you looking at the androgynous person staring back. A short while ago you would have never considered wearing something like this but now, after what you've done well... it seems almost natural.
<</if>>
<<case "voluntaryFemale">>
Glancing at your reflection you do a momentary double take. Looking back at you is a
<<switch setup.analyzeWornTags(['casual','office','formal','slutty','cute'])>>
<<case 'casual'>>
casually dressed
<<case 'office'>>
professionally attired
<<case 'formal'>>
formally attired
<<case 'slutty'>>
scandalously dressed
<<case 'cute'>>
cute
<</switch>>
woman.
<<if !setup.getPresetRequirement($player,'modest_female_visible','outside')>>
You stare at your reflection for a moment, in this outfit you really do look like a girl. Dressing up like this in the privacy of your apartment is one thing, but going out like this, as a woman seems like quite another step entirely.<br>
<br>
<<printThought $player "I don't dare go out in public like this... do I?">>
<<else>>
You stare at your reflection for a moment, in this outfit you really do look like a girl. Dressing up like this in the private is one thing but going out like this seems like quite another step... and yet one that seems almost natural, as if your foot was already raised and reaching forward and all you have to do is put your weight down on it...
<</if>>
<</switch>>
<br><br><<if $scene.hasOwnProperty("voluntaryScene") && $scene.voluntaryScene != "">>
<br><br>[<<moveTo $scene.voluntaryScene "Ponder what to do..." 60>>]
<<elseif $scene.wrongMakeup>>
<br><br>[@@.link_locked;No... even if I dared to go outside dressed like this... not with this makeup!@@]
<</if>>/*#
#desc: player want to leave in unisex clothes
#status: FINISHED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<div id="invframe" class="scrolltext">
<<if !setup.checkPlayerDressed($player)>>
<<printThought $player "Hmm, ignoring style I am not remotely dressed to go out in public!">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif setup.analyzeWornTags(['female','unisex','male']) == "female">>
<<printThought $player "Unisex is one thing but wearing something fully female, there's no way I can do that. Yet...">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif setup.analyzeWornTags(['female','unisex','male']) != "unisex">>
<<printThought $player "Hmm, now that I've changed going out in public doesn't seem like such a thing...">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif $scene.makeup == "normalmakeup" || $scene.makeup == "nomakeupmakeup">>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
You're lost in your thoughts.... once again. You're standing here, in your new outfit, wearing makeup, just inches away from where some stranger could see you. True, the last days have been... strange, to say the least, but still, you continued. Are you starting to finally give in to all the mental onslaught, or could it be that this has always been a part of yourself that you were trying to hide beneath a layer of sarcasm and irony? You don't know. You don't know what to think anymore.<br>
<br>
<<if setup.getWillpower($player)>0>>
<<if setup.getTotalValue("feminization") >= 3>>
[<<moveTo "voluntaryUnisex_2" "Screw this! I am pushing through!" 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<<else>>
[<<moveTo $scene.orgLocation "This is too much, wearing feminine things under my clothes is still too, wearing something like this on the outside... no, I'm not ready." 60>>]
<</if>>
<<else>>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]
<</if>>
<<else>>
You're somewhat mesmerised by your reflection. On the one hand what you're wearing feels remarkably comfortable and strangely... natural? And the makeup seems to only enhance your beauty... on the other you feel like wearing something like this outside, in public... well, it would be a significant step. Though what else lies down that path you are not quite certain...<br>
<br>
[<<moveTo "voluntaryUnisex_2" "Let's do this..." 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<</if>>
<<elseif $scene.makeup != "">>
You look at your reflection. Perhaps you could go out in this outfit, it's a touch feminine, but overall passes for androgynous but this makeup... nope, no way you're letting anyone else see you done up like this!<br>
<br>
[<<moveTo $scene.orgLocation "Nope, nope nope." 60>>]
<<else>>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
You're lost in your thoughts.... once again. You're standing here, in your new outfit, just inches away from where some stranger could see you. True, the last days have been... strange, to say the least, but still, you continued. Are you starting to finally give in to all the mental onslaught, or could it be that this has always been a part of yourself that you were trying to hide beneath a layer of sarcasm and irony? You don't know. You don't know what to think anymore.<br>
<br>
<<if setup.getWillpower($player)>0>>
<<if setup.getTotalValue("feminization") >= 3>>
[<<moveTo "voluntaryUnisex_2" "Screw this! I am pushing through!" 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<<else>>
[<<moveTo $scene.orgLocation "This is too much, wearing feminine things under my clothes is still too, wearing something like this on the outside... no, I'm not ready." 60>>]
<</if>>
<<else>>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]
<</if>>
<<else>>
You're somewhat mesmerised by your reflection. On the one hand what you're wearing feels remarkably comfortable and strangely... natural? ON the other you feel like wearing something like this outside, in public... well, it would be a significant step. Though what else lies down that path you are not quite certain...<br>
<br>
[<<moveTo "voluntaryUnisex_2" "Let's do this..." 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<</if>>
<</if>>
<br><br>
</div>/*#
#desc: player want to leave in unisex clothes
#status: FINISHED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange==true>>
<<if $scene.makeup != "">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'modestly_made_up' true>>
<<else>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'unisex_outside' true>>
<</if>>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
<<spendWillpower $player 1>>
<</if>>
<<set $player.willpower.bonus += 1>>
<<set $player.flags.fem_style.unisex = "voluntary">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
'theme_psychiatrist_manager_header'
>>
<<if !$player.locations.sexstore && $npc_psychiatrist.sessions > 0>>
<<addEvent 'sexstoreOpeningEvent'
'{"trigger":"always","type":["next"],"location":"room_mall","priority":100}'
'{"szene":"event_mall_sexstore_opening"}'
>>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.push('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR $scene.tmpImage>>
<div id="invframe" class="scrolltext">
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
Trying to focus at the task at hand drains your willpower fast, even though the current task should be simple enough. Take a step.... outside. Just outside. You're afraid. Of ridicule. Of harassment. Of being cast out and alone. Just a little step. You're having troubles controlling your hand, due the trembling getting stronger as you approach the
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
door.
<<default>>
drape.
<</switch>>
<<else>>
Even though it seemed so simple in your head the reality of things as you reach for the
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
door
<<default>>
drape
<</switch>>
is something quite different. You don't know why but your heart starts racing, despite how previously walking outside like this seemed like it would be the simplest of things...
<</if>>
<br><br>
<<printThought $player "Focus. You're being irrational. None of this is going to happen!">><br>
<br>
Holding your breath, like you're going for a long dive, you pull through. Heart pounding in your chest you step out into the
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
<<if $scene.sunlight>>
sunlight... well, not quite, you're way too surrounded by skyscrapers for light to be anything but a flat, smog-tinged grey, but you're technically outdoors...
<<else>>
starlight... well, if you could see stars past the one two three of light pollution, smog and hundred-floor buildings reaching up towards the heavens.
<</if>>
Either way, you're in public wearing an outfit somewhat less than masculine<<if $scene.makeup !="">> and wearing makeup to boot<</if>>. Nobody else on the street seems to be paying you much mind but still... as your pulse slows and you take your first steps you feel a strange calmness coming over you, that your stress was unfounded and that, in fact, everything is fine...
<<case 'room_mall_apparel_store_changing_booths'>>
spotlight of a well lit store. Either way, you're in public wearing an outfit somewhat less than masculine<<if $scene.makeup !="">> and wearing makeup to boot<</if>>. Nobody else in the store seems to be paying you much mind but still... as your pulse slows and you take your first steps you feel a strange calmness coming over you, that your stress was unfounded and that, in fact, everything is fine...
<<case 'room_mall_lingerie_shop_changing_booth'>>
spotlight of a well lit store. Either way, you're in public wearing an outfit somewhat less than masculine<<if $scene.makeup !="">> and wearing makeup to boot<</if>>. Nobody else on the store seems to be paying you much mind, and those who do seem to be delighted by your decision. Fritz, who goes now by the fancy name Francine even sends an approving nod your way. You take your first steps you feel a strange calmness coming over you, that your stress was unfounded and that, in fact, everything is fine...
<</switch>>
Even though you feel temporarily drained you think your potential got stronger today.<br>
<br>
[<<moveTo $scene.voluntaryFollowupScene "Continue" 90>>]
</div>/*#
#desc: player want to leave in female clothes
#status: FINISHED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<div id="invframe" class="scrolltext">
Glancing at your reflection you do a momentary double take. Looking back at you is a
<<switch setup.analyzeWornTags(['casual','office','formal','slutty','cute'])>>
<<case 'casual'>>
casually dressed
<<case 'office'>>
professionally attired
<<case 'formal'>>
formally attired
<<case 'slutty'>>
scandalously dressed
<<case 'cute'>>
cute
<</switch>>
woman. You stare at your reflection for a moment, in this outfit you really do look like a girl. Dressing up like this in the privacy of
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
your apartment
<<case 'room_mall_apparel_store_changing_booths'>>
the changing booth
<<case 'room_mall_lingerie_shop_changing_booth'>>
the changing booth
<</switch>>
is one thing, but going out like this, as a woman seems like quite another step entirely.<br>
<br>
<<if !setup.checkPlayerDressed($player)>>
<<printThought $player "Hmm, ignoring style I am not remotely dressed to go outside!">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif setup.analyzeWornTags(['female','unisex','male']) != "female">>
<<printThought $player "Hmm, now that I've changed going outside doesn't seem like such a thing...">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif !setup.getPresetRequirement($player,'unisex_visible','outside')>>
<<printThought $player "I don't dare go out in public like this... do I?">><br>
<br>
You're lost in your thoughts.... once again. You're standing here, in this outfit, with naught but a thin door between you and the eyes of the public. True, the last days have been... somewhat tiring and more bonkers than anything you could have imagined would happen in your life, like ever, but still, you continued. Are you starting to finally give in to all the mental onslaught, or could it be, that this has always been a part of yourself? A part of you hidden beneath a layer of sarcasm and irony. You really don't know. You don't even know what to think anymore.<br>
<br>
<<if setup.getWillpower($player)>1>>
<<if setup.getTotalValue("feminization") < 7>>
[<<moveTo $scene.orgLocation "No, this is too much femininity too fast, I can barely handle what I've done before!" 60>>]
<<else>>
[<<moveTo "voluntaryFemale_2" "Screw this! I am pushing through!" 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<</if>>
<<elseif setup.getWillpower($player)>0>>
[@@.link_locked;This is a big step, if I only had a little more willpower I think I could...@@]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]<br>
<<else>>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]
<</if>>
<<else>>
<<printThought $player "I've come this far... this has to be the next logical step, right?">><br>
<br>
[<<moveTo "voluntaryFemale_2" "Step forth!" 60>>]<br>
[<<moveTo $scene.orgLocation "No, this... this is too much for now." 60>>]
<</if>>
</div>/*#
#desc: player want to leave in female clothes
#status: FINISHED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange==true>>
<<set $scene.firstmakeup = $player.flags.fem_style.makeup == "">>
<<if $scene.firstmakeup>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'full_female_outside' true>>
<<set $player.flags.fem_style.makeup = "voluntary">>
<<set $player.willpower.bonus += 1>>
<<else>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'female_outside' true>>
<</if>>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
<<spendWillpower $player 2>>
<</if>>
<<set $player.flags.fem_style.female = "voluntary">>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop.unlock_source = "female">>
<</if>>
<<set _x = $shopStatus['mall_apparel_store'].unlocked_inventory.push('designer')>>
<<set _x = $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.push('maid')>>
<<set $npc_cook.call_name = "Lassie">>
<<set $player.willpower.bonus += 1>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createBGR $scene.tmpImage>>
<<else>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<</if>>
<div id="invframe" class="scrolltext">
Taking your first step outside dressed <<if $scene.makeup != "">>and made up <</if>>as a woman has your heart trying to pound its way out of your chest. Your eyes dart up and down
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
the street, searching for a reaction from fellow pedestrians going about their business. Despite any fears you might have had nothing happens, the world around you proceeds the same as any other day. The longer things go with nothing happening the more foolish you feel just standing there and finally you walk down the steps towards the sidewalk.
<<case 'room_mall_apparel_store_changing_booths'>>
the store, searching for a reaction from fellow customers going about their business. Despite any fears you might have had nothing happens, the world around you proceeds the same as any other day. The longer things go with nothing happening the more foolish you feel just standing there and continue with your business here.
<<case 'room_mall_lingerie_shop_changing_booth'>>
the shop. And somehow you managed to overlook <<=setup.getNpcName('npc_shopkeeper', 'first')>>, eyeing you from top to button. Again you try to stand perfectly still in hopes she won't see you. Not that this ever worked in your favour, but repeated failure means you must be due success soon, right?<br>
<br>
You hear an approving "@@.npc_shopkeeper;Mhmmm!@@" from her before she continues with her sonorous voice, "@@.npc_shopkeeper;Was about fucking time darling. Your hips where made to be accentuate by clothes like that.@@"<br>
<br>
A pat on your shoulder almost knocks you off your feet, but you manage to stay your ground... somehow.<br>
<br>
"@@.npc_shopkeeper;Very nice. Very nice indeed!@@"<br>
<br>
The other customers mostly ignore what's going on over here, only Fritz, who goes now by the fancy name Francine, bestows you with a silent thumbs up.
<</switch>>
<br><br>
<<if $scene.firstmakeup>>
The fact that you are wearing makeup as well only serves to accentuate your look, and with it the intensity of your feelings. On the other hand it also granting a bit of cover so as to conceal the colour of your blushing cheeks.
<</if>>
With each step things begin to feel easier, more natural and you begin to question your prior apprehension.<br>
<br>
You continue on your way, eventually turning a corner, tangled up in your own thoughts you almost crash into someone, a man coming up just short of crashing into you before stepping aside. He tilts his head slightly with a perfunctory "ma'am" before he continues on his way.<br>
<br>
It's another few steps before you catch up with his word, a fresh jolt of excitement going through your body as you realise he just identified you as a woman... With all the things that have happened since you started your new job you aren't totally certain how to take that other than it definitely doesn't feel like a bad thing...<br>
<br>
[<<moveTo $scene.voluntaryFollowupScene "Continue" 90>>]
</div>/*#
#desc: player want to leave with visible makeup
#status: FINISHED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<div id="invframe" class="scrolltext">
<<if $player.flags.fem_style.female != "">>
Even after everything else you've done, going out in public wearing feminine makeup seems like another step ~ more than merely changing your clothing this seems closer to changing who you are. To adopt the image of femininity beyond mere trappings of fabric.
<<elseif $player.flags.fem_style.unisex != "">>
You take a deep breath. Sure your clothing has taken a turn away from masculine but to change your face like this... to soften and feminize your features so overtly this seems like another level...
<<else>>
ERROR: should not happen, unisex or female should be set by now
<</if>>
<br><br>
<<printThought $player "Am I ready to go out like this?">><br>
<br>
Staring at your reflection for a long time, you hardly recognise the face anymore. Almost like real life Photoshop ~ a few highlights here, some shadows there. Gone are the last traces of masculinity in your face. Wearing this in the safety of
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
your apartment
<<case 'room_mall_apparel_store_changing_booths' 'room_mall_lingerie_shop_changing_booth'>>
the changing booth
<</switch>>
is one thing, finally making a step outside is a matter of a whole other magnitude. Because deep inside you know, this pretty much seals the deal. There's no going back from this.
<br><br>
<<if setup.getWillpower($player)>0>>
<<if setup.getTotalValue("feminization") >= 5>>
[<<moveTo "voluntaryMakeup_2" "I am ready. I've postponed this long enough. Let's go!" 60>>]<br>
[<<moveTo $scene.orgLocation "No... Not yet. I am not yet ready." 60>>]
<<else>>
[<<moveTo $scene.orgLocation "Nope. I'm still not even used to gender-ambiguous clothing, changing my appearance this radically with makeup is too much." 60>>]
<</if>>
<<elseif setup.getWillpower($player)>0>>
[@@.link_locked;If only I had slightly more willpower I think I could...@@]<br>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]<br>
<<else>>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]
<</if>>
</div>/*#
#desc: player want to leave in makeup
#status: FINISHED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange==true>>
<<if $scene.outfitTag == "female">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'full_female_outside' true>>
<<else>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'makeup_outside' true>>
<</if>>
<<spendWillpower $player 1>>
<<set $player.flags.fem_style.makeup = "voluntary">>
<<set $player.willpower.bonus += 1>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createBGR $scene.tmpImage>>
<<else>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<</if>>
<div id="invframe" class="scrolltext">
It's a bit surprising how calm you feel as you step outside wearing feminine makeup.
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'male'>>
You get one curious look, though that seems more owing to the fact that you've mixed feminine makeup with a very not-so outfit. Even that is relatively minor though and, despite your apprehension, your fellow pedestrians soon fade into the background.
<<case 'unisex'>>
With unisex attire your makeup blends in fine, tilting your overall appearance towards the feminine but nothing really distracting. This assessment is supported by the first few people you pass on the street seeming to pay you little mind.
<<case 'female'>>
Of course the fact that your outfit is otherwise totally feminine means that it really just blends in. The most recognition you get from people on the street is a slight smile which... well, you are pretty cute...
<<default>>
ERROR: unexpected tag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
[<<moveTo $scene.voluntaryFollowupScene "Continue" 90>>]
</div>/*#
#desc: game intro/PC description
#status: FINISHED 0.4.0.0
#*/
<<set $scene = {}>>
<<set $scene.entercompany = false>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
You are <<=$player.first_name>> <<=$player.last_name>>. You are about <<=$player.height>>cm tall and weigh around <<=$player.weight>> kg. Until last week your life was pretty normal and still kind of enjoyable. You had a beautiful girlfriend, <<=setup.getNpcName('npc_exgirlfriend', 'full')>> whom you loved, a job you liked and hopes for your future. You had even promised your girlfriend that you would both remain virgins until marriage. Turned out only one of you two took that oath to heart.<br>
<br>
You've always been kind of tense because of your penis size. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> said she didn't really mind, but more recent events would tell a different tale. Despite your instincts warning you against it you recently decided to you try one of those "penis enlargement" pills. That decision set in motion your downfall, starting with the hefty bill. A bill both literal and figurative, since the pills cost a lot and worked not at all. At least, not as intended. Since taking them, you've found yourself getting horny on a regular basis and once you reach a certain level without release, things tend to get ... hard ... for you. You've seen a doctor, but since the components of the pills are unknown all they could say was to wait and that the effects will most likely dwindle over time.<br>
<br>
As if all that wasn't enough you caught your girlfriend in bed with her Yoga Trainer last week. Your whole world was shattered. Her excuse was "Anal does not count." Count or not, she broke up with you and moved out rather quickly, taking most of her belongings with her and leaving you with the whole apartment, rent and all.<br>
<br>
With everything that has happened your thoughts have been all over the place. Did you waste the last 4 years of your life? Was the entire relationship a sham, or did it only just start to fall apart?<br>
<br>
Your lack of focus has started to influence your work performance as well. Difficulty sleeping has only made things worse on that count.<br>
<br>
You wake up after a long night of tossing and turning in your lonely, way-too-big bed.<br>
<br>
<<printThought $player "Fuck, I'm worn out. I didn't sleep at all last night.">><br>
<br>
[[[Wake up|room_bedroom]]]/*#
#desc: phone call first day having not shown up to work on time
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $scene.entercompany>>
<<initRoom>>
<<moveTo $player.plocation>>
<<else>>
<<set _tmpLocation=$player.plocation>>
<<set _tmpTime = new Date(Date.parse("2033-06-28T09:07:00+0000"))>>
<<addEvent 'prologue_second_call'
'{"trigger":"always","type":"date","id":"call_company_2"}'
'{"szene":"call_company_2"}'
_tmpTime
>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.entercompany>>
Your phone is ringing. It's <<=setup.getNpcName('npc_admin', 'first')>>, a colleague and long-time friend of yours. You think about mentally reciting an expositional rant about how the two of you meet but decide that can wait for later and answer the phone.<br>
<br>
"@@.npc_admin;<<=$player.first_name>>, where the hell are you? We had a critical System Failure and lost this weeks data. The backup servers have most of it but most of the test data we got last week from <<=$player.flags.faultcompany>> is still missing. The higher ups are in panic and we're getting calls from the mother company, so better move your ass here A.S.A.P, or the Boss is going to fire you!@@"<br>
<br>
He hangs up the phone before you can reply. It looks like you're in trouble now. Time to get going!<br>
<br>
[<<moveTo _tmpLocation "Put your phone away." 30>>]
<</if>>
</div>/*#
#desc: fired after failing to show up to work after being called first day
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $scene.entercompany>>
<<initRoom>>
<<moveTo $player.plocation>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.entercompany>>
Your phone is ringing. It's <<=setup.getNpcName('npc_admin', 'first')>> again.<br>
<br>
"@@.npc_admin;Hey <<=$player.first_name>>, I know you had a hard time recently with your break up and stuff but the bossman just informed me that your contract has been terminated since you forgot to make backups and then decided not to show up at work. He said, and I quote: "Don't bother showing up today ... or any day in the future." So that's that. I'll drop your stuff this evening, okay? See you then man.@@"<br>
<br>
You drop your phone in belief.<br>
<br>
<<printThought $player "Fuck! What the hell? Why didn't I go to work today? All I had to do was get dressed, leave the house through my foyer and go to the Company! AAAAH!">><br>
<br>
[<<moveTo gameover_nintendolls "Continue" 30>>]
<</if>>
</div>/*#
#desc: show up to work first day, find out about backup failure
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm busy right now.">>
<<set $player.timebased.stressmulti = 0.5>>
<<set $player.location to "Cloud Data Service">>
<<set $scene.entercompany = true>>
<<storeVisual $player $npc_admin>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
You enter the office of Cloud Data Service, same as every other workday morning the last 3 years. CDS is a small company specialized in Cloud Computing and Data Storage. You got this job via <<=setup.getNpcName('npc_admin', 'full')>>, a long-time friend and your current direct superior. He jokingly calls you "work slave" from time to time, but you humor yourself with the idea that you are more like a 2nd in command.<br>
<br>
You head right for your workstation, but don't even make it to your desk before <<=setup.getNpcName('npc_admin', 'first')>> blocks your way. His normally healthy chocolate coloured skin tone replaced through a panicked ghostly ashen one.<br>
<br>
"@@.npc_admin;Fuck, I think we are royally screwed this time.@@"<br>
<br>
Having just arrived at work you are somewhat perplexed what is going on, though you know from experience with <<=setup.getNpcName('npc_admin', 'first')>> that you have no idea what the hell he's talking about.<br>
<br>
"@@.npc_admin;Last Friday, when we got the dataset from <<=$player.flags.faultcompany>>. Did you kick-off the weekend backup as usual? I know it was a hard day for you, but please, try to remember. We lost the primary hard drive due to an energy surge in the systems, and now the backups from last week are nowhere to be found.@@"<br>
<br>
<<printThought $player '"Fuck"'>> you think <<printThought $player "That was the day after <<=setup.getNpcName('npc_exgirlfriend', 'first')>> broke up and moved out. I hardly remember any details about that day. Possibly due to the drinking spree afterwards...">><br>
<br>
You explain to <<=setup.getNpcName('npc_admin', 'first')>> that you want to check the files yourself before anyone starts to panic or jump to conclusions.<br>
<br>
[<<moveTo "event_dataservice_intro_1" "Sit down and turn on your Workstation">>]
</div>/*#
#desc: look into backup failure
#status: FINISHED 0.4.0.0
#*/
<<if visited(passage()) == 1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 112)>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You log on to your workstation and start checking all Logs of the Backup and the Backup Backup Process. You find none. This does not look good for you. A client like <<=$player.flags.faultcompany>> is very important to the higher ups at your parent company, Social Interaction Service Syndicate Inc. These were test files from their newest Massive Multi-player Online Game, fresh from the stress test in the Beta. The files were vital for the next phase of the game's development. And now they're gone. Erased by a confluence of coincidence.<br>
<br>
<<printThought $player "Wow, I really screwed the pooch this time. This isn't my day. This isn't my week. FUCK!">><br>
<br>
You try your best to reproduce your steps from the previous Friday, but your only conclusion is that, in your distracted state, you simply forgot to start the backup process. You spend the rest of the day trying to figure out how to recover the data, even going so far to seek out the infamous tech wizard of Cloud Data Service, <<=setup.getNpcName('npc_technician', 'full')>>.<br>
<br>
[<<moveTo "event_dataservice_intro_2" "Approach the infamous Tech Wizard">>]<br>
</div>/*#
#desc: visit technician first day for help
#status: FINISHED 0.4.0.0
#*/
<<if visited(passage()) == 1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 23)>>
<<set $npc_technician.profile = true>>
<</if>>
<<storeVisual $player $npc_technician>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_technician.png">>
<div id="invframe" class="scrolltext">
You enter the cube ... or, as she calls it, the lair of the Tech Wizard. <<=setup.getNpcName('npc_technician', 'first')>> seems to be in a good mood today. Spinning in her chair to face you like a villain in a Bond film she smiles. You get the feeling she already knows why you're here.<br>
<br>
"@@.npc_technician;Bad news travels fast my friend...@@" she smiles wider, revealing her teeth, "@@.npc_technician;And since your skills have proven insufficient, you come to places of higher experience to seek wisdom forbidden to one such as yourself.@@"<br>
<br>
<<printThought $player "She plays way too much D&D.">><br>
<br>
You ask her if she can help recover the files from the fried hard drives.<br>
<br>
"@@.npc_technician;Ah, yes, the tomes of ultimate wisdom. Many heroes have traveled far and wide and yet few are prepared to pay... The Price.@@"<br>
<br>
<<printThought $player "Yeah, of course <<=$npc_technician.first_name>> wants something in return for her help.">><br>
<br>
"@@.npc_technician;Seriously <<=$player.first_name>>. If you want my assistance you have to massage my feet till I'm done,@@" she says directly, dropping out of her Wizard facade.<br>
<br>
"@@.npc_technician;Stupid company dress code! These heels are killing me. I'm a frelling tech specialist, not a secretary Jim. If you do this for me I'm willing to give you some hours of my valuable work time. That said, you done screwed up bad and I cannot guarantee that we recover any data at all.@@"<br>
<br>
Massaging her feet seems kinda humiliating. You ponder your options.<br>
<br>
[<<moveTo "event_dataservice_intro_3_1" "Give in and massage her feet for a few hours.">>] <<hint $options "Doing humiliating acts might affect your character in the future.">><br>
[<<moveTo "event_dataservice_intro_3_2" "Decline and try to sort out your mess on your own.">>]
</div>/*#
#desc: massage technician's feet first day
#status: FINISHED 0.4.0.0
#*/
<<if visited(passage()) == 1>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 3 'insignificant' $SEEN_FRIEND>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 45)>>
<<set $npc_technician.flags.dataservice_encounter.asked_for_help = true>>
<<setThreshold 'foot' 'foot_massages' 'alex_in_intro' true>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_technician.png">>
<div id="invframe" class="scrolltext">
Stepping further into her cubicle you get on your knees under her desk to assume a position comfortable for the both of you. She kicks off her heels and rests her feet on your legs, clearing her throat softly to indicate you should start demonstrating your skills at foot reflexology. Fortunately you learned these skills with your ex-girlfriend, since her feet were always sore at the end of the day. Also lucky is that your physique isn't too big, unlike <<=ps(setup.getNpcName('npc_admin', 'first'))>> so you fit under the desk fairly easily.<br>
<br>
<<printThought $player '"God, this is so humiliating. I hope nobody sees me doing this."'>><br>
<br>
Her feet are sweaty and kinda smell from being stuffed in the company-mandated high heels but you pull yourself together, clench your teeth and start doing what has been ordered of you. You haven't been massaging her feet for long when <<=setup.getNpcName('npc_technician', 'first')>> lets out a soft moan.<br>
<br>
"@@.npc_technician;Whatever you're doing, don't stop. Hng.@@"<br>
<br>
The seconds turn to minutes and the minutes turn to hours. This isn't what you're getting paid for and your hands start to hurt after a while as well. Buried in her work <<=setup.getNpcName('npc_technician', 'first')>> seems to have almost forgotten about you... unless you start to take a break then a sharp hm reminds you to resume your monotonous task. Still, you're definitely getting bored which makes your mind kind of drift off...<br>
<br>
[<<moveTo "event_dataservice_intro_4_1" "Seize the moment and try to sneak a peek under her skirt.">>]<br>
[<<moveTo "event_dataservice_intro_4_2" "Do as you're told and continue massaging her feet.">>]<br>
</div>/*#
#desc: try to recover data without help
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<gainWillpower $player 1>>
<<addPopUpText "You gained one point of Determ... err... Willpower.">>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You politely decline <<=ps(setup.getNpcName('npc_technician', 'first'))>> proposal and return to your workstation, trying to figure something out what you could do to restore the data. Tackling this Herculean Task by yourself with no help in sight would make the strongest man tremble, but it is time that you take responsibility for your actions. Even though you think you did start the backup process... The lingering aftertaste of a possible termination of your contract fills you with determin... err... Willpower. <br>
<br>
You struggle mightily but keep hitting a wall of exhaustion, panic and lack-of-skill. If you are going to make any real progress you think it is going to take a herculean effort that is going to leave you mentally drained...<br>
<br>
<<if setup.getWillpower($player)>0>>
[<<moveTo "event_dataservice_intro_3_3_willpower" "Grit your teeth and give it your all.">>] <<hint $options "Trying to push beyond your limits will tax your willpower.">><br>
<<else>>
[@@.link_locked;You don't feel like gritting your teeths at all...@@] <<hint $options "You don't have enough Willpower for this approach.">><br>
<</if>>
[<<moveTo "event_dataservice_intro_3_3_nowillpower" "Keep working as you have been.">>]<br>
</div>/*#
#desc: use willpower to recover data
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<spendWillpower $player 1>>
<<set $now to setup.advanceNextDate($player, $now, 0, 17, 55)>>
<<set $player.flags.datarecovery = 36>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
Gritting your teeth you assault the problem like a man possessed. Pounding coffee like water you are a frantic, twitching mess by the end of the day, but somehow... by some combination of obsession, luck and determination you have managed to recover over a third of the data.<br>
<br>
Just 5 minutes before the work day should be over the annoying yellow blinking of a new instant message pops up on your desktop. It is from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
It reads "@@.npc_manager;<<=$player.first_name>>, this is about your mishap with the <<=$player.flags.faultcompany>> game data. I need to see you in my office as soon as possible.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_5_1" "Ignore the message and get ready to go home.">>]<br>
[<<moveTo "event_dataservice_intro_6" "Respond that you'll be right up.">>]
</div>/*#
#desc: try to recover data on your own without willpower
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.flags.datarecovery = 4>>
<<set $now to setup.advanceNextDate($player, $now, 0, 17, 55)>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You do what you can, but seem to be mostly spinning in circles, barely recovering much of anything. Your efforts eat up the rest of the working day. You manage to recover about <<=$player.flags.datarecovery>>% of the data, which is nearly nothing.<br>
<br>
Just 5 minutes before the work day should be over the annoying yellow blinking of a new instant message pops up on your desktop. It is from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
It reads "@@.npc_manager;<<=$player.first_name>>, this is about your mishap with the <<=$player.flags.faultcompany>> game data. I need to see you in my office as soon as possible.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_5_1" "Ignore the message and get ready to go home.">>]<br>
[<<moveTo "event_dataservice_intro_6" "Respond that you'll be right up.">>]
</div>/*#
#desc: try to peek up technician's skirt
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<setThreshold 'penis' 'through_alex' 'intro_penis' true>>
<<set $npc_technician.flags.dataservice_encounter.looked_up_skirt = true>>
<<set $player.flags.datarecovery to 40>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 173)>>
<<set $scene.technicianHorny = false>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_0'
0
'event_technician_upskirt_apology'
false
'theme_technician_crossdress_header'
>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
/%<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_technician.png">>%/
<<createAnimatedBGR "./video/technician_reveal.mp4">>
<div id="invframe" class="scrolltext">
You try to crouch even further to get a better angle at <<=ps(setup.getNpcName('npc_technician', 'first'))>> goodies. For some odd reason the company's dress code for women is see-through pantyhose during spring and summer, so that's not really a problem. The lack of light down under her desk, however...<br>
<br>
<<printThought $player '"So, why am I doing this again?"'>> you think to yourself only to be startled by the sound of <<=ps(setup.getNpcName('npc_technician', 'first'))>> voice.<br>
<br>
"@@.npc_technician;Getting a little inquisitive down there, ey <<=$player.first_name>>? Well I suppose a questing hero like yourself deserves a little reward after such a superb performance@@" and she starts to pull up her skirt, just enough for you to see her panties. They're white and made of cotton with some lace on them. And there's a twitching bulge in the middle which you were very much NOT expecting.<br>
<br>
<<printThought $player 'Wat?'>><br>
<br>
You try collecting your thoughts while still reflexively massaging her feet. <<=setup.getNpcName('npc_technician', 'first')>> lets out a soft toned moan again, making her bulge twitch and swell in size.<br>
<br>
"@@.npc_technician;You are way too good at this for your own good, you know that, right?@@"<br>
<br>
You try to answer, but only a confused "aaaah" escapes your mouth.<br>
<br>
"@@.npc_technician;This shall be our little secret, okay? Unless you want to tell everyone how you obtained this information. Anyway@@", she says while pulling her skirt back down, "@@.npc_technician;You can stop now and get up before people start talking. I'm done. But you won't be happy with the results.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_5" "Get up from under the table">>]<br>
<br>
<<printThought $player "But what if... what if I don't stop staring?">><br>
<br>
<<timed 90s t8n>>
<<printThought $player "I really should get back up there like I was told to...">><br>
<<next 20s>>
<br>
"@@.npc_technician;In case you didn't hear me the first time, you can come up okay? No need to be huffy about it. You're making me uncomfortable with your silence.@@"<br>
<br>
<<printThought $player "Yup. Really, I should get up, I think its better for the both of us...">><br>
<<next 20s>>
<br>
"@@.npc_technician;P...Please cum... come up here...@@", faintly escapes <<=ps(setup.getNpcName('npc_technician', 'first'))>> mouth. The twitching of her <<getWordLadyPenis $player>> finally stopping. Since it was replaced by a raging erection. Pulsating slowly, the part of the panties centred around where you estimate the head is, getting transparent through a light trickle of precum.<br>
<br>
<<printThought $player "Why can't I take my eyes from that thing? I'm a guy, damn it, I'm into girls. My lack of sexual contact is just bad luck, not due my own stupidity....">><br>
<<next 20s>>
<br>
Still unable to move you focus your gaze on her erect <<getWordLadyPenis $player>>, just a few inches away from your face. The view only obscured through a sheer cotton, glistening precum flowing through the fabric.<br>
<br>
<<printThought $player "Okay, so maybe I'm starved for any sexual contact, but... she's a...">><br>
<<next 20s>>
<<if !$scene.technicianHorny>>
<<set $scene.technicianHorny = true>>
<<set $player.timebased.horny = setup.changeHorny($player,25)>>
<<createStats $player>>
<</if>>
<br>
"@@.npc_technician;<<=$player.first_name>>, you either come up here RIGHT NOW!@@", <<=setup.getNpcName('npc_technician', 'first')>> announces providently, while pulling down her pantyhose and panties even further, revealing her beautiful <<getWordLadyPenis $player>> just for you. Then she gets a firm grip around its shaft, slowly starting to stroke it up and down continuing, "@@.npc_technician;Or you take responsibility for the mess you caused. Goodness, I can't believe how horny this is making me!@@"<br>
<br>
You have no idea what's going on anymore, after staring at her delicious looking <<getWordLadyPenis $player>> for a prolonged time, you have also started to get aroused. Maybe it's a side effect of these stupid Penis enlargement pills, but you don't know what to think anymore. All you see is this delicious looking <<getWordLadyPenis $player>>, waiting for you.<br>
<br>
[<<moveTo "event_dataservice_intro_4_handjob" "Reach out and take responsibility">>]<br>
[<<moveTo "event_dataservice_intro_5" "Get up from under the table and try to never talk about this again.">>]
<</timed>>
<br>
</div>/*#
#desc: don't peek up technician's skirt
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'foot' 5 'very' $SEEN_FRIEND>>
<<set $player.flags.datarecovery to 45>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 173)>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_technician.png">>
<div id="invframe" class="scrolltext">
You intensify your massage efforts which leads to yet another soft, sexy moan from <<=setup.getNpcName('npc_technician', 'first')>>. That small gesture, that little moan... it turns you on. You were always pretty nimble with your hands, but right now you kinda like that you give her pleasure, and you like touching her feet. After you managed to massage all the stiffness away, they feel nice and soft in your hands.<br>
<br>
"@@.npc_technician;How did you get that good at this <<=$player.first_name>>? Your girlfriend must have been pretty stupid for breaking up wi...@@" A few moments too late <<=$npc_technician.first_name>> seems to remember that this topic might be a little bit touchy for you right now. <br>
<br>
<<printThought $player 'Bad news travel fast indeed. Who else knows? I thought I only told <<=$npc_admin.first_name>>...'>><br>
<br>
"@@.npc_technician;Just forget I said anything. Get up now, this is getting awkward, somehow. I think this is as much as I can help you anyway. I'm done. But you won't be happy with the result.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_5" "Get up from under the desk.">>]
</div>/*#
#desc: technician tells you how much she recovered for you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now to setup.advanceNextDate($player, $now, 0, 17, 55)>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_technician.png">>
<div id="invframe" class="scrolltext">
You get up from under the desk, looking around to make sure nobody saw you, thankful for the minor privacy of the cubicle. <<=setup.getNpcName('npc_technician', 'first')>> is pointing at one of her monitors.<br>
<br>
"@@.npc_technician;Okay, we managed to recover about <<=$player.flags.datarecovery>>% of the lost data from the hard drives. I wish I could offer more but the rest is just too corrupt. I hope you don't get into too much trouble for this.@@"<br>
<br>
<<printThought $player 'Too much trouble, my ass! Best case scenario I get demoted, worst case scenario "OFF WITH HIS HEAD".'>><br>
<br>
"@@.npc_technician;Anyway, I'd really value your discretion about my little secret,@@" <<=setup.getNpcName('npc_technician', 'first')>> tells you, while putting a finger on your lips in a suggestive manner, "@@.npc_technician;That would be better for both our sakes.@@"<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.handjob_finish>>
You blush and nod, yea, like you're going to go blabbing that you jerked off one of your female co-workers cocks at work...
<<elseif $npc_technician.flags.dataservice_encounter.handjob_finish>>
You blush and nod, yea, like you're going to go blabbing that you gave a crappy handjob to one of your female co-workers at work...
<<elseif $npc_technician.flags.dataservice_encounter.looked_up_skirt>>
You nod, even if she wasn't able to help you that much it would be very cruel to betray a trust... especially since you have bigger things to worry about at the moment.
<<else>>
<<printThought $player 'Secret? What did she mean by that?'>>
<</if>><br>
<br>
You walk back to your own cube and try to think of some way to somehow restore more of the data. Though you take the rest of the day you're unable to do any better than what the "Tech Wizard" has already provided, all of your attempts either doing nothing or recovering small portions of what she already gave you.<br>
<br>
Just 5 minutes before the work day should be over the annoying yellow blinking of a new instant message pops up on your desktop. It is from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
It reads "@@.npc_manager;<<=$player.first_name>>, this is about your mishap with the <<=$player.flags.faultcompany>> game data. I need to see you in my office as soon as possible.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_5_1" "Ignore the message and get ready to go home.">>]<br>
[<<moveTo "event_dataservice_intro_6" "Respond that you'll be right up.">>]<br>
</div>/*#
#desc: pack things and get ready to meet manager first day
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 2)>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You pack your things together and head for the elevator. The office of <<=setup.getNpcName('npc_manager', 'formal')>> is in the 52nd floor, as far as you remember. She is not really a part of Cloud Data Service, which does not have its own Human Resources department, but a Part of Social Interaction Service Syndicate Inc., the umbrella company for Cloud Data Service.<br>
<br>
<<if $player.flags.manager_ignored_firstrequest == true>>
<<printThought $player "Okay, I think it was a stupid idea to ignore the message. I hope <<=setup.getNpcName('npc_manager', 'formal')>> is not too pissed off.">><br><br>
<</if>>
[<<moveTo "event_dataservice_intro_7" "Head for the elevator.">>]
</div>/*#
#desc: try to go home without meeting manager first day
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 7)>>
<<set $player.flags.manager_ignored_firstrequest = true>>
<<setThreshold 'bimbofication' 'stupid_defiance' 'intro_ignore_manager' true>>
<<applyExperience 'bimbofication' 3 'insignificant' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_manager.workdiscipline -= 1>>
<<set _x = setup.addStress($player,5)>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You decide to ignore the message and start tidy up your things to get out of here. Just when you are ready to shut down your workstation you get another message with a huge shift in tone.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, get up here at once. This whole debacle is your fault and it is time to take account. If you don't show up soon you won't have to show up tomorrow, or ever. I hope I have made myself absolutely crystal clear. Report to my office immediately.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_6" "Apologise yourself and answer that you'll be right up.">>]
</div>/*#
#desc: elevator ride up to manager's floor first day
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 2)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<table>
<tr><td width="50%">
You enter the elevator. You've never been up this high before; the offices beyond floor 40 being restricted to employees of Social Interaction Service Syndicate Inc. You use your ID Card on the designated slot, and press 52. The small screen over the button panel shows a short loading animation and then greets you with a green "@@.npc_ai;ACCESS GRANTED@@" and with the words and a synthetic sounding voice "@@.npc_ai;WELCOME TO SOCIAL INTERACTION SERVICE SYNDICATE LTD. <<=uc($player.call)>> <<=uc($player.last_name)>>. YOU ARE EXPECTED. PLEASE DO NOT DEVIATE FROM YOUR ROUTE AND HEAD DIRECTLY FOR <<=uc(ps(setup.getNpcName('npc_manager', 'formal')))>> OFFICE.@@"<br>
<br>
<<printThought $player 'Security seems to be very strict up here.'>><br>
<br>
[<<moveTo "event_dataservice_intro_8" "Exit the elevator" 420>>]
</td><td width="50%"><image src="./images/locations/company_elevator.png"></image></td></tr>
</table>/*#
#desc: head to manager's office, meet for the first time, assessment of data recovery efforts
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now = setup.advanceDate($player, $now, 'minutes', 7)>>
<<set $npc_manager.profile = true>>
<</if>>
<<storeVisual $player $npc_manager>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png" "move1">>
<div id="invframe" class="scrolltext">
Having messed up enough already, you head directly to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. The last thing you need today is to be tackled by an over-enthusiastic security guard.<br>
<br>
You politely knock on the door to her office, the towering slab of heavy oak telling you that a) she's important while driving home the reminder that b) you aren't.<br>
<br>
<<if $player.flags.manager_ignored_firstrequest == true>>
You hear a loud "@@.npc_manager_dom;ENTER@@" followed by a slightly more collected "@@.npc_manager;I mean, come in... please.@@"<br>
<br>
<<printThought $player "Even ignoring the outburst that last word seemed forced. Yea, she's still pretty pissed.">><br>
<<else>>
"@@.npc_manager;Please come in.@@" Though technically welcoming, her words seem more a command than a greeting.<br>
<</if>>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> must be very important, indeed. Her office is huge, even having an antechamber for a receptionist to reside in. At present said clerical desk is empty; you suppose whoever does that job must have already left for the day since it is past normal business hours.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> is sitting at her desk at the far end of the office. You've only met her once, when you started your job at Cloud Data Service three years ago. She seems to be older than you, but that might be an illusion and could just be because the aura of superiority that surrounds her. She follows the dress code for managers to the letter, even though her blouse is a bit wide open, revealing more of her cleavage then you find comfortable.<br>
<br>
<<printThought $player "Is she doing this on purpose? I normally wouldn't mind, but right now it is a distraction I really don't need.">><br>
<br>
"@@.npc_manager;Here, have a seat. We have a few things to discuss. I imagine you know why I had you come up here, do you? Your performance lately has been, shall we say, less then stellar? This would normally be handled by your direct superiors of Cloud Data Service and might have ended with a slap on your b... wrist. A slap on your wrist, since your work was adequate enough. But your little mishap with the <<=$player.flags.faultcompany>> data... well, of course the lawyers will be going through things for awhile but at present the immediate damages due to breach of contract are estimated at 532,667 credits, to say nothing of the impact to Cloud Data Services overall reputation if <<=$player.flags.faultcompany>> deigns to go public... Obviously you can see how, even if multiple failures combined to cause this problem you are facing more than sufficient cause to terminate your contract without severance.@@"<br>
<br>
You lower your gaze so as to not make any eye contact, doing your best "melting into the floor" impression. Seems like your life is continuing on a downward spiral with no floor in sight.<br>
<br>
<<printThought $player "This can't be happening...">><br>
<br>
<<switch $player.flags.datarecovery>>
<<case 4>>
"@@.npc_manager;Unfortunately with all your efforts today you only managed to recover about <<=$player.flags.datarecovery>>% of the data. Maybe you should have asked for help from other departments more experienced in data recovery. We all have our specialties, thinking you can do everything on your own is just not being a good corporate team player.@@"<br>
<br>
<<printThought $player "Wait, so I was supposed to massage <<=ps(setup.getNpcName('npc_technician', 'first'))>> feet?">><br>
<<case 36>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, and that by yourself. While I have to admit, I am surprised by these numbers, imagine, if you will, what you could have achieved if you asked for help as well. Still, it shows you can be useful if you really put your mind to it.@@"<br>
<br>
<<printThought $player "Wait, what is that supposed to mean?">><br>
<<case 40>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, deploying every means available, which I find commendable. Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>> feet. For several hours you diligently massaged them without pause, putting the skills you did have to work while knowing you lacked the know-how to restore the data yourself. Only a slight drop in productivity towards the end. Well I think everyones hands get tired after a while. Or were you doing something different down there? You. Alone. Under the table of a quite beautiful young woman.@@"<br>
<br>
You try not to blush and get rewarded with a knowing smile, which makes it even more awkward for you.<br>
<<case 45>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, deploying every means available, which I find commendable. Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>> feet. For several hours you diligently massaged them without pause, putting the skills you did have to work while knowing you lacked the know-how to restore the data yourself. Well, these sorts of things should be rewarded, not punished.@@"<br>
<br>
You try to piece together how she got that information, but that distraction only serves to make your expression slip.
<<case 50>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, deploying every means available... even if you needed a bit of help, in more ways than one. Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>>... feet.@@"<br>
<br>
<<printThought $player 'Wait, did she just imply? No, there is no way she could know that I jerked off <<=setup.getNpcName("npc_technician", "other")>>, and if she did I would be fired for sure!'>>
<<case 51>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, really "got your hands dirty," as they say. Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>>... feet.@@"<br>
<br>
<<printThought $player 'Wait, did she just imply? No, there is no way she could know that I jerked off <<=setup.getNpcName("npc_technician", "other")>>, and if she did I would be fired for sure!'>>
<<case 60>>
"@@.npc_manager;I will say I am impressed you managed to recover nearly two-thirds of the data! I do not think anyone was expecting you to make such a monumental... effort, but I commend you! Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>>... feet.@@"<br>
<<default>>
ERROR: unknown value for player.flags.datarecovery <<=$player.flags.datarecovery>>
<</switch>>
<br><br>
"@@.npc_manager;Do not look at me like a scared fawn, it is my job to know what is going on in this company. Sadly, I am not the one who decides your future in Cloud Data Service. I am only in charge of HR, you currently report through a different hierarchy and, well... your bosses boss' boss' boss, along with their superiors on the board, have been very clear about their decision. It has been decided that as of today, <<printDate $now "dateonly">>, your contract is to be terminated. And due to the severity of your carelessness, you have lost any claim of appeal under due culpable negligence. As I said before, the immediate monetary loss to the company is about 532,667 Credits. I took myself the liberty to counter this against your ... "claim" of 4,328 Credits, and we still have a net loss of 528339 before taxes. To tell you the truth, this does not look very good for you.@@"<br>
<br>
Your heart sinks. After everything else that has happened lately it's like the final nail in the coffin of your life. Your worst fear has come true. Losing one's job in this day and age is a cause for existential dread. Best case, you lose your full citizenship in a few months, worst case, you are half a million in the red. Your thoughts start to get dark, fast. Money's already tight since you're paying the rent for your flat all by yourself, and if you lose your job now, you'll be on the streets in no time.<br>
<br>
[<<moveTo "event_dataservice_intro_9_1" "Say you'll do anything for another chance.">>]<br>
[<<moveTo "event_dataservice_intro_9_2" "Admit your defeat and go empty your desk.">>]
<<hint $options "If you have willpower left, you might want to wait a little bit and give your character time to breath. Maybe the scene can play out slightly differently.">>
<br>
<<if $player.willpower.current > 0>>
<<timed 10s t8n>>
<br>
Thinking for a while without giving her an answer calms your mind, and you're able to use your remaining willpower to focus. If you were going to be fired, anyone from your company could have done this. But this here is <<=setup.getNpcName('npc_manager', 'formal')>>, the director of Human Resources of Social Interaction Service Syndicate Inc. Which leads you to an obvious conclusion...
<<next 3s>>
<br>
<br>
<<printThought $player "Why exactly am I here?">><br>
<br>
<<next 3s>>
You don't have enough information to finish that thought, so a strategical pause seems to be your best option. Any accusations or confessions might make your already brittle position even more unsteady.<br>
<br>
<<next 3s>>
[<<moveTo "event_dataservice_intro_9_3" "Lean back and wait for her to continue." 60>>]
<</timed>>
<</if>>
</div>/*#
#desc: tell manager you'll do anything to make up for losing data
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<<setThreshold 'submission' 'submissive_secretary' 'intro' true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Anything, you say?@@" <<=setup.getNpcName('npc_manager', 'formal')>> seems to be surprised, "@@.npc_manager;dangerous words. Let us see if you are as forthright as you are apparently desperate.@@"<br>
<br>
<<include event_dataservice_intro_9_details>>
</div>/*#
#desc: start to leave after manager tells you you're fired first day
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<<applyExperience 'humiliation' 3 'insignificant' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<printThought $player "Well, it was fun while it lasted.">><br>
<br>
You excuse yourself and get ready to stand up and leave the office.<br>
<br>
"@@.npc_manager;Really? Giving up that quick?@@" <<=setup.getNpcName('npc_manager', 'formal')>> seems to be surprised, "@@.npc_manager;maybe I misjudged you after all.@@"<br>
<br>
<<include event_dataservice_intro_9_details>>
</div>/*#
#desc: stay and listen
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.work.payment+=15>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Not giving an answer, makes her re-focus her uncanny gaze upon you, which make you feel slightly uncomfortable, in the same way that being burned alive would have you feeling slightly warm.<br>
<br>
<<printThought $player "I hope she got a license for these weapon grade eyes. Wait... maybe they are bionic? No way, they look so real... I should really focus on the matter at hand.">><br>
<br>
"@@.npc_manager;Hmm... this is where people in your position normally start to bargain or resign completely. I am slightly impressed by your reservation. True, things are currently not as grim as they seem.@@"<br>
<br>
<<include event_dataservice_intro_9_details>>
</div>/*#
#desc: offered job as secretary
#status: FINISHED 0.4.0.0
#*/
<<printThought $player "What exactly does she mean?">><br>
<br>
It seems like your puzzled expression catches <<=ps(setup.getNpcName('npc_manager', 'formal'))>> attention.<br>
<br>
"@@.npc_manager;If I was going to fire you there would be no need for a personal meeting, would it? I would have simply delegated this obligation down to your direct superior; <<=setup.getNpcName('npc_admin', 'other')>>. No, you are here, with me, because I am willing to give you a chance. This is a once in a life time opportunity. So better take your time and think about this offer carefully before answering. You have lost your old job, yes, but I am happy to inform you that there is a new offer ready for you as I am extending an invitation for you to take up a position as my secretary.@@"<br>
<br>
She pulls a contract from under her massive desk and slides it towards you.<br>
<br>
"@@.npc_manager;Judging from your expression I surmise you were not expecting something like this, hmm? Well I cannot blame you, it is a somewhat unorthodox offer, but these are unusual circumstances. Given your present situation I doubt you are likely to see any better opportunities come along this evening, especially since I doubt any other company in your field is liable to hire you after this... ignoble termination. If you choose to take my offer, well worst case you can start to look for another job while still having financial stability. Or should you prove... adept at your new position and choose to remain my secretary...@@" she pauses for a moment and smiles at you. You imagine the way she shows her teeth and flutters her eyes is meant to be enticing but it comes off more... predatory.<br>
<br>
"@@.npc_manager;Well, let me just say that the position will provide you numerous opportunities, and that is before taking into account the legally mandated opportunities provided by the Secretary Elevation and eXpansion act of 2021. Your tasks would be to provide to my personal wellbeing, like getting me a coffee or lunch, but also a lot of telecommunication and handling of my appointments. Showing the correct initiative could lead you to garnering even greater responsibilities, especially as you would not just be any secretary but MY secretary, working directly for me and Social Interaction Service Syndicate Inc.@@"<br>
<br>
<<printThought $player "Me, a secretary? I'd never thought of doing something like that, though I suppose technically I have all necessary skills for this job, typing really fast and telecommunication coming hand in hand with an IT education. Still, this is never a job I've ever considered.">><br>
<br>
"@@.npc_manager;This will be your starting salary.@@"<br>
<br>
She turns a piece of paper with the number <<=$player.work.payment>> written on it.<br>
<br>
<<if $player.work.payment==110>>
"@@.npc_manager;I know this is a bit less than you make, well, made given that you have been fired, after all, but not significantly less, especially since you will qualify for performance bonuses. Plus, after your initial probationary period is over we can discuss a raise, contingent on your performance, of course. The probationary period is typically 3 months, but it could be longer, or even shorter, depending on how serious you take your duties. So, what do you say... <<=$player.first_name>>?@@"
<<elseif $player.work.payment>110>>
"@@.npc_manager;I know this is, according to my calculations, only a little bit less than you make currently. Sorry, force of habit, used to make. A bit higher then our usual rates for secretaries, but you seem like a promising candidate. Maybe even more than you used to earn, since you might qualify for performance bonuses. Plus, after your initial probationary period is over we can discuss a raise, contingent on your performance, of course. The probationary period is typically 3 months, but it could be longer, or even shorter, depending on how serious you take your duties. So, what do you say... <<=$player.first_name>>?@@"
<<elseif $player.work.payment<110>>
"@@.npc_manager;I know this is less than you make, well, made given that you have been fired. But if you're diligent enough, you will qualify for performance bonuses, which might compensate for the difference. Plus, after your initial probationary period is over we can discuss a raise, contingent on your performance, of course. The probationary period is typically 3 months, but it could be longer, or even shorter, depending on how serious you take your duties. So, what do you say... <<=$player.first_name>>?@@"
<</if>>
<br><br>
You shiver at the way she pronounces your first name, a single word and yet on her lips it drives home your tenuous position while sounding almost.... intimate? You don't have time to think about it as <<=setup.getNpcName('npc_manager', 'formal')>> turns the contract around and offers you an expensive fountain pen. The contract is already open to the last page, you simply need to sign it.<br>
<br>
[<<moveTo "event_dataservice_intro_10_1" "Sign the contract." 1500>>]<br>
[<<moveTo "event_dataservice_intro_10_2" "Say you want to read the contract first." 900>>]<br>
[<<moveTo "event_dataservice_intro_10_3" "Politely decline the offer." 600>>]/*#
#desc: turn down job as secretary
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
/%<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>%/
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<printThought $player "A secretary, really? I think not.">><br>
<br>
You politely decline the offer and take your leave.<br>
<br>
"@@.npc_manager;Disappointing, but maybe that is for the best, anyway.@@"<br>
<br>
<<printThought $player "Wait, what's that supposed to mean?">><br>
<br>
"@@.npc_manager;It has been ... interesting having you around. I wish you the best luck in your future endeavours.@@"<br>
<br>
[<<moveTo "gameover_grue" "Leave the company building after clearing out your desk">>]
</div>/*#
#desc: ask to read contract before accepting job
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 15)>>
<<setThreshold 'smart' 'contract_smart' 'try_to_read' true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You turn back to page one of the contract and what hits you hard is just how thick the contract is. Front to back its 98 pages, written really small.<br>
<br>
<<printThought $player "What are all these paragraphs for?">><br>
<br>
"@@.npc_manager;You seem concerned about the size of the contract. Do not worry, it is just legal CYA stuff, I think nearly half of it is just the legal binding for a non disclosure agreement. Since you might come into contact with many items of sensitive information working for me here at Social Interaction Service Syndicate Inc. we have to make sure that our secrets are protected. The rest is the usual stuff. Work time, rules for vacation, dress code, et cetera, et cetera.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> looks at her watch, like she is in a hurry.<br>
<br>
<<printThought $player "Hmm, I guess it is past business hours...">><br>
<br>
"@@.npc_manager;Look, I really do not wish to pressure you, but I have other obligations today. I will be honest, this little offer, well.... if my superiors figure out what I am up to they might decide to block it. Normally I can staff this position as I want to, but you are a special case, in a "unique situation" as it were. That's why this offer is only available today, right now.<<if $player.flags.manager_ignored_firstrequest == true>> If a certain someone would have responded to my request immediately we might had more time to go this through in greater details, but... here we are.<</if>>@@"<br>
<br>
[<<moveTo "event_dataservice_intro_10_1" "Sign the contract." 1500>>]<br>
[<<moveTo "event_dataservice_intro_10_3" "Politely decline the offer.">>]
</div><<if $now.getUTCDay() == 5>>/*literaly not possible since you can only get this event Monday to Thursday, but still here for learning purpose :D*/
<<set _nextDate to setup.setNextDate($now, 3, 8, 0)>>
<<else>>
<<set _nextDate to setup.setNextDate($now, 1, 8, 0)>>
<</if>>
<<set _taskCondition = setup.getConditions(_nextDate, ['playerClean', 'clothesClean','officeMaleClothes', 'atOffice'])>>
<<set _taskDone = {
"trigger_event": "event_first_workday_morning_1",
"text": "task_manager_first_workday_morning_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_first_workday_morning_1",
"text": "task_manager_first_workday_morning_failed"
}>>
<<addTask 'manager_morning_inspection_task'
$now
'npc_manager'
'task_manager_first_workday_morning'
_taskCondition
_taskDone
_taskFailed>>
<<set _nextDate = setup.setNextDate($now, 3, 14, 0)>>
<<set _taskCondition = setup.getConditions(_nextDate, ['atPsychiatrist'])>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_therapy_mux",
"text": "task_psychiatrist_apointment_1_done"
}>>
<<set _taskFailed = {
"trigger_event":"gameover_grue_shrink",
"text": "task_psychiatrist_apointment_1_failed"
}>>
<<addTask 'psychiatrist_apointment_1'
$now
'npc_manager'
'task_psychiatrist_apointment_1'
_taskCondition
_taskDone
_taskFailed>>
<<set $player.locations.psychiatrist = true>>
<<set _name = setup.getNpcName('npc_manager', 'full')>>
<<addEmail $computer
_name
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_manager_contract_01_h'
'mail_manager_contract_01_t'
'{"name":"sissy_secretary_contract.pdf","type":"event","data":{"event":"attachment_read_contract"}}'
>>/*#
#desc: sign contract for secretary job, given appointment with psychiatrist
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<addItem "fountain_pen">>
<<addItem "business_card">>
<<include firstDaySecretaryTasks>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You sign the contract and hand it back to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;Very good. I am sure you will reflect back to this very moment in the future with fond memories. I am sending a copy of your contract to your personal email address for you to review and reference. Please take your time and read it through thoroughly, it contains many important details about your field of activity, rights and obligations and, perhaps of most immediate concern to your...@@" you wonder about the dramatic pause as her eyes scan up and down your body, "@@.npc_manager;... dress code.@@"<br>
<br>
<<printThought $player "So, I am going to be a secretary, huh? Me... a secretary... nope, still sounds weird, but it's better than no job at all.">><br>
<br>
"@@.npc_manager;Please, you may keep the pen.@@" She states as she pulls out a plastic coated small box of business cards and hands you one. "@@.npc_manager;That contains all my contact informations, please transfer it to your phone in case of emergency or the like. Well, that is about it. Welcome aboard as a SISSY secretary!@@"<br>
<br>
<<printThought $player "Wait? What did she just call me? A SISSY secretary?">><br>
<br>
"@@.npc_manager;It was not my intention to confuse you. SISSY is merely short for Social Interaction Service Syndicate. Not really the most fitting acronym for a multi billion credit company, but I was not around when they chose that name, and it is certainly less of a mouthful than the full name. Social Interaction Service Syndicate Secretary.@@" She zips through the alliterative phrase, her tongue nimbly dancing without the slightest slur. "@@.npc_manager;No, that is just too much of a mouthful; Sissy Secretary is much better. Anyway, as I was saying, the contract you just signed makes you an official SISSY secretary.@@" She smiles again, but this time it's more like a predator grinning down at its prey. "@@.npc_manager;Do not worry too much, everyone has to endure this joke at first. In time you'll be thinking of yourself as a Sissy Secretary with nary a care nor hesitation.@@"<br>
<br>
<<printThought $player "First work slave, now SISSY secretary? I'm never going to see the end of this, am I?">><br>
<br>
"@@.npc_manager;Before I forget it: you need to go through a psychological evaluation. Do not worry, this is standard procedure for everyone who starts up here at Social Interaction Service Syndicate Inc. I have scheduled you for an appointment for Friday afternoon, 1400 with <<=setup.getNpcName('npc_psychiatrist', 'other')>>. Your shift only lasts until 1300 on Fridays so you have plenty of time to make it. Which is good for you, because the evaluation is mandatory. Failure to show up to this appointment would result in you automatically failing your probationary period.@@"<br>
<br>
She pauses for a moment and places the tips of her fingers together.<br>
<br>
"@@.npc_manager;Besides, my sources state that with all you have had in your life lately, well... you might benefit from a good chat or two with a shrink. Help get all that negativity out of your system. Before you ask, yes, I know about your recent break up and yes, I assume that incident lead, more or less, to the <<=$player.flags.faultcompany>> data mishap. And yes, I can read your thoughts... That last one was a joke, relax! But please; <<=setup.getNpcName('npc_psychiatrist', 'other')>> is a very qualified counselor, you should use your time with her for your personal betterment; they are one of your company benefits, after all. In addition to part of your evaluation. Note that we do not get any details of what you may discuss. Doctor/patient confidentiality is very important and such a betrayal would compromise any benefit you might be able to get through your time with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, and we would not want to do that, now would we? No, she simply provides a basic psychological evaluation and gives us a recommendation... or not. And nothing scary, just an indication if the position will be a good fit for you, and if there are any ways we can direct your development to the benefit of both the company, and yourself. So win/win overall.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> reaches across the desk to shake your hand.<br>
<br>
You shake her hand, her grip surprisingly firm. You stutter out a "Thank you <<=setup.getNpcName('npc_manager', 'Ms.')>>" only for her to stop you.<br>
<br>
"@@.npc_manager;Ah, ah, that is <<=setup.getNpcName('npc_manager', 'formal')>> to you, for now.@@" Your eyebrow shoots up with an unasked question as your gaze darts towards her bare ring finger. "@@.npc_manager;Yes, I am... single, in the conventional sense. Married to my work, more like. But yes, for now... Mrs.@@"<br>
<br>
You're still confused but you merely nod as she finally releases her grip on your hand.<br>
<br>
"@@.npc_manager;Well, I will see you tomorrow morning then, <<=$player.first_name>>. Work starts at eight o'clock sharp. The same as your previous position at Cloud Data Service, I believe. Do not be tardy. We will begin tomorrow with a short orientation before you start your first day proper. And make sure your clothes are clean@@", she says while looking at you and wrinkling her nose slightly, "@@.npc_manager;being a secretary is a representative position. I know you had a long day today, but the way your clothes look and ... smell now is unacceptable and would definitely not be sufficient to get you through your probation, much less advance further.@@"<br>
<br>
Reaching out to shake her hand you're surprised at her grip strength, the way she holds on for just a half a second longer than normal seems almost.... possessive?<br>
<br>
<<printThought $player "I must be imagining things, it's been a long day.">><br>
<br>
[<<moveTo "event_dataservice_intro_11" "Bid her goodbye.">>]
</div>/*#
#desc: clean out your old desk after accepting secretary job
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $player.timebased.stressmulti = 0>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<<set $player.flags.jobsecretary = true>>
<<addEvent 'washing_machine_break' '{"trigger":"always","type":"next","location":"room_foyer"}' '{"szene":"event_landlord_brokenwashmachine"}'>>
<<changeItemStatus 'boxershorts' 'sweaty' '["set",100]'>>
<<changeItemStatus 'socks' 'sweaty' '["set",100]'>>
<<set $player.timebased.dirty to 75>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
You return to Cloud Data Service on the 9th floor of the Building. The elevator ride down seems slower, more sombre without doom hanging over you. Or maybe it's just a different type of doom than before? You shake your head, you don't know what would surprise you the way your life is going of late.<br>
<br>
The office is nearly empty besides the over-night skeleton crew and a few workaholics putting in overtime. As you approach your cubicle you notice <<=ps(setup.getNpcName('npc_admin', 'first'))>> towering physique looming above the cubicle walls from afar. He looks at you with a sad smile as you approach.<br>
<br>
"@@.npc_admin;Hey man, I just got the word down from on high. Screw those bastards. Screw them all to hell. One fuck up and you're done. I really wish I could have done something but, well.... the board is WAY above my pay grade. I guess you're lucky that <<=setup.getNpcName('npc_manager', 'other')>> stepped in and made you an offer? Anyway...@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> hands you a cardboard box.<br>
<br>
"@@.npc_admin;I gathered your stuff. Here you go. At least your financial situation is stable, but man. You? A secretary? Not really what you expected when you woke up this morning.@@"<br>
<br>
<<printThought $player "Yeah? No shit, Sherlock.">><br>
<br>
You thank <<=setup.getNpcName('npc_admin', 'first')>> for his concern and turn to go, more than ready to go home and have this horrible day be over.<br>
<br>
"@@.npc_admin;Hey, call me!, We should go for a drink from time to time man. Don't be a stranger!@@"<br>
<br>
You're going to miss working with the big fella.<br>
<br>
As you leave the office and spend some seconds in the elevator alone the day starts replay. By the time you hit the ground floor you're in a bit of a cold sweat. Putting all your dirty clothes in the washing machine this evening might be an good idea, especially if you consider what <<=setup.getNpcName('npc_manager', 'formal')>> said about "being a representative position".<br>
<br>
[<<moveTo "company_lobby" "Leave Cloud Data Service" 120 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: give technician handjob after staring up skirt
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.handjobvirginity = 'npc_technician'>>
<<set $npc_technician.flags.dataservice_encounter.handjob = true>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
/%<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_technician.png">>%/
<<createAnimatedBGR "./video/technician_reveal.mp4">>
<div id="invframe" class="scrolltext">
You watch as your hand reaches out, your fingers curving around her shaft and then, finally, touching the hot, hard member.<br>
<br>
From above you hear a gasp of surprise "@@.npc_technician;oh my! You know I was just teasing, you didn't have to do this...@@"<br>
<br>
<<printThought $player "Wait, I insist on keeping my virginity when I have a girlfriend but now my first sexual encounter with a woman is going to be this... How did this happen?">><br>
<br>
[<<moveTo "event_dataservice_intro_5" "She's right, what were you even thinking?" 30>>]<br>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "You don't have to, you want to. Keep stroking." 10 "<<set $scene.strokes=0>><<set $scene.correct_strokes=0>>">>]
</div>/*#
#desc: state machine for technician handjob
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set _correctSequence = "UUDDLRLRBAS">>
<<if $scene.strokes > 0>>
<<set $scene.correct_stroke = (_correctSequence[$scene.correct_strokes] == $scene.action)>>
<<if $scene.correct_stroke>>
<<set $scene.correct_strokes++>>
<<applyExperience 'oral' $npc_technician.penis_size 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'penis' $scene.correct_strokes 'insignificant' $SEEN_FRIEND>>
<<else>>
<<set $scene.correct_strokes = 0>>
<</if>>
<</if>>
<<set $scene.strokes++>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
/%<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_technician.png">>%/
<<createAnimatedBGR "./video/technician_reveal.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.status == 0>>
Your hand is around <<=ps(setup.getNpcName('npc_technician', 'first'))>> girlcock. Your heart races, this is the first you've touched a <<getWordMyPenis $player>> other than your own. You feel excited, terrified and a dozen other emotions as you stare at the hot rod of flesh, a bead of pre at its tip as <<=setup.getNpcName('npc_technician', 'first')>> withdraws her hand.<br>
<br>
"@@.npc_technician;Alright, wow, I had no idea you would be into something like this! Ok, <<=$player.first_name>>, let's see what you got!@@"<br>
<br>
<<include technicianHandjobOptions>>
<<else>>
<<if !$scene.correct_stroke>>
<<if $scene.strokes > 15>>
Seemingly tired of your semi-random, amateurish job her hand reaches back down, stroking with a fresh rhythm as she
[<<moveTo "event_dataservice_handjob_finish_1" "Finish her off by hand." 60 "<<set $scene.finish='fail'>>">>]
<<else>>
<<switch $scene.action>>
<<case 'U'>>
You stroke up her hard, sexy shaft towards the wet tip but she does not react particularly strongly.
<<case 'D'>>
You stroke down towards the base of her shaft, though her pert balls are tight and eager they look no more ready to release their payload.
<<case 'L'>>
You use your left hand to fondle her but it doesn't seem to do particularly much.
<<case 'R'>>
You use your right hand to fondle her but it doesn't seem to do particularly much.
<<case 'A'>>
You grope her cute ass to no effect.
<<case 'B'>>
You finger her bum but it doesn't seem to prompt a particularly noteworthy reaction.
<</switch>>
<br><br>
<<printThought $player "Hmm, that didn't seem right, better start from the top">><br>
<br>
<<include technicianHandjobOptions>>
<</if>>
<<else>>
<<switch $scene.correct_strokes>>
<<case 1>>
You stroke up her shaft prompting a lusty moan of approval. "@@.npc_technician;Mmmm, do that again...@@"
<<case 2>>
You stroke from the base to the tip of her shaft once again and she gasps, pulsing between your fingers.
<<case 3>>
Without removing your hand you stroke back down. "@@.npc_technician;Yes!, Oh that feels so good!@@"
<<case 4>>
You stroke downward once again. "@@.npc_technician;Oh Goddess, and I thought your fingers felt good on my feet!@@"
<<case 5>>
Bringing your other hand into the party you encompass nearly the full length of her, gently holding her with your right while you run the fingers of your left over her tip. The amount of pre-cum leaking down tells you all you need to know about how much she approves.
<<case 6>>
Squeezing with your right hand you move it up and down with short strokes. Her breaths come even quicker as she wiggles in her chair.
<<case 7>>
Focusing your efforts on her tip you run a finger of your left hand around the straining, sensitive head. A tiny jet of pre-cum escapes to splatter on the underside of the desk as you realise that she must be really close.
<<case 8>>
You slide your right hand downward, massaging her full balls and prompting a soft moan "@@.npc_technician;Fuck, I'm so close...@@" she whispers.
<<case 9>>
Reaching past her tender balls you run your finger around her quivering bum. She shudders, sliding further forward in her chair, this slight touch amplified by her over-sensitive skin.
<<case 10>>
Your hand slides to one side, caressing what proves to be a lovely ass, squeezing with one hand as you continue your slow strokes. She moans. "@@.npc_technician;Oh fuck I'm about to cum...@@"
<<default>>
ERROR: unexpected number of correct strokes: <<=$scene.correct_strokes>>
<</switch>>
<br><br>
<<if $scene.correct_strokes >= 10>>
Her member mere centimeters from your face you consider the asymmetry of only grabbing one of her delightful buttcheeks as you feel her teetering on the edge of orgasm.<br>
<br>
[<<moveTo "event_dataservice_handjob_finish_1" "Finish her off by hand." 60 "<<set $scene.finish='hand'>>">>]<br>
[<<moveTo "event_dataservice_handjob_finish_1" "Grab her butt with both hands and pull her in to swallow the hot sausage in front of you." 60 "<<set $scene.finish='mouth'>>">>]
<<elseif $scene.correct_strokes > 6>>
<<=setup.getNpcName('npc_technician', 'first')>> has slid forward in her chair, her bare rear now exposed.<br>
<br>
<<include technicianHandjobOptions>>
<<elseif $scene.correct_strokes > 2>>
Your hands are feeling a bit tired and you consider how she would react to you switching off.<br>
<br>
<<include technicianHandjobOptions>>
<<else>>
<<include technicianHandjobOptions>>
<</if>>
<</if>>
<</if>>
</div>[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Stroke your hand up." 10 "<<set $scene.action='U'>>">>]<br>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Stroke your hand down." 10 "<<set $scene.action='D'>>">>]<br>
<<if $scene.strokes > 2>>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Focus on your right hand." 10 "<<set $scene.action='R'>>">>]<br>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Focus on your left hand." 10 "<<set $scene.action='L'>>">>]<br>
<<if $scene.correct_strokes > 6>>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Grope her ass." 10 "<<set $scene.action='A'>>">>]<br>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Finger her bum." 10 "<<set $scene.action='B'>>">>]<br>
<</if>>
<</if>>
<<if $scene.correct_strokes < 6>>
[<<moveTo "event_dataservice_intro_5" "No really, what were you even thinking? Get up now!" 30>>]<br>
<</if>>/*#
#desc: finish technician hand/blowjob
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_technician.flags.dataservice_encounter.handjob_finish = $scene.finish>>
<<switch $scene.finish>>
<<case 'mouth'>>
<<set $player.blowjobvirginity = 'npc_technician'>>
<<setThreshold 'oral' 'through_alex' 'intro_oral' true>>
<<setThreshold 'cum' 'through_alex' 'intro_cum' true>>
<<applyExperience 'oral' $npc_technician.penis_size 'little' $SEEN_FRIEND>>
<<applyExperience 'cum' 6 'little' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'penis' 8 'normal' $SEEN_FRIEND>>
<<gainWillpower $player 1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_blowjob'
5
'event_technician_theme_blowjob'
true
'theme_technician_sex_header'
>>
<<case 'hand'>>
<<addItem "card_technician">>
<<set $player.flags.datarecovery = 51>>
<<applyExperience 'penis' 7 'normal' $SEEN_FRIEND>>
<<case 'fail'>>
<<addItem "card_technician">>
<<set $player.flags.datarecovery = 50>>
<<applyExperience 'penis' 6 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'insignificant' $SEEN_FRIEND>>
<</switch>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_3'
4
'psychiatrist_technician_handjob'
true
'theme_psychiatrist_other_header'
>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_handjob'
0
'event_technician_theme_handjob'
false
'theme_technician_sex_header'
>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "" "./images/scenes/blowjob_alex_01.png" "move1">>
<div id="invframe" class="scrolltext">
<<switch $scene.finish>>
<<case 'mouth'>>
Grabbing <<=ps(setup.getNpcName('npc_technician', 'first'))>> butt with both hands you almost pull her off her chair as you lunge forward and swallow her ready-to-spurt girldick.<br>
<br>
Well, swallow might be the wrong word, turns out you aren't exactly a "natural" at this sort of thing and pull back almost the instant she pokes the back of your throat. Despite this error your earlier efforts have her far too close to the edge to do anything but cum, spurting her mild-tasting seed down your throat as you suppress a cough and wrap your lips tight.<br>
<br>
You hear her cry out as her whole body goes rigid and she pushes back, trying to remain perched on her chair as you reflexively suck up every surprisingly tasty drop.<br>
<br>
<<printThought $player "What happened, and why does her cum taste so good?">><br>
<br>
You feel her relax for a moment and soften slightly as your tongue, seemingly with a mind of its own, runs circles under her tender head. You don't know how long you might have remained there, fingers dug into the soft flesh of her ass, lips enveloping her deliciously spent girldick, when you hear another voice.<br>
<br>
"Hey, <<=setup.getNpcName('npc_technician', 'first')>>, you alright?" <br>
<br>
You freeze, eyes wide with fright as you pray that the guy whose voice you just heard isn't at the right angle to see under <<=ps(setup.getNpcName('npc_technician', 'first'))>> desk.<br>
<br>
"@@.npc_technician;Y-yea,@@" <<=setup.getNpcName('npc_technician', 'first')>> responds breathlessly. "@@.npc_technician;Just figured out a bug in this script, sorry if I bothered you.@@"<br>
<br>
"No bother at all, this something to do with that data loss thing? Say where did he run off to, I thought he was still here in your cube." <br>
<br>
"@@.npc_technician;Related to that, yea, he had to, um, leave tho.@@"<br>
<br>
"Gotcha, well he's definitely one of those fellas you love to watch walk away, amirite? Mmm, not many guys with hips and butt that fine!" <br>
<br>
"@@.npc_technician;Oh you! Besides, he just broke up with his girlfriend so I think he's straight.@@"<br>
<br>
"Maybe, maybe not! I would not mind inviting a cute tush like that into my bed to "explore his options" if you know what I mean!" <br>
<br>
Still with a mouth full of <<=ps(setup.getNpcName('npc_technician', 'first'))>> dick you could about die of embarrassment, glad to hear the man's laughter fade into the distance as he finally walks away.<br>
<br>
[<<moveTo "event_dataservice_handjob_finish_2" "Continue.">>]
<<case 'hand'>>
Thanks to her warning you're able to lean to one side as you continue to stroke and she spurts past you, the thin jet of her cum staining the cubicle... a stain that you notice is not alone...<br>
<br>
"@@.npc_technician;Whew! You really do have magic fingers, feet... other things... We are going to have to get together more often... Maybe outside of office hours?@@"<br>
<br>
Gently extricating herself from your grasp she fixes her panties and skirt before handing you a contact card.<br>
<br>
"@@.npc_technician;So, yea... call me!@@"<br>
<br>
You pocket the card as she rolls her chair back to give you room to crawl forward.<br>
<br>
[<<moveTo "event_dataservice_intro_5" "Get up from under the desk.">>]
<<case 'fail'>>
Her delicate fingers pumping out a firm, rapid rhythm until with a culminating gasp she cums. One hand still around her shaft you feel her twitch and pump the thin product of her climax dribbling through your fingers.<br>
<br>
"@@.npc_technician;Sorry about butting in but, well... I kind of need to get back to work! If you ever want to practice again though... damn just the thought of you curled under my desk has me near ready for round two!@@"<br>
<br>
You're glad nobody can see you blushing down in the dark cavern below her seat as you watch her softening member disappear back beneath her white panties and short skirt. You take a moment to wipe off your hands before crawling forward.<br>
<br>
[<<moveTo "event_dataservice_intro_5" "Get up from under the desk." 120>>]<br>
<<default>>
ERROR: unexpected
<</switch>>
</div>/*#
#desc: finish technician blowjob aftermath
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.flags.datarecovery = 60>>
<<addItem "card_technician">>
<<set $now to setup.advanceNextDate($player, $now, 0, 17, 55)>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png" "./images/characters/npc_technician.png">>
<div id="invframe" class="scrolltext">
You hear <<=setup.getNpcName('npc_technician', 'first')>> let out a sigh of relief before finally pushing away from her desk, her cock falling from your stunned lips as you relax your grip on her rear. Fixing her clothes gives you a final glance of her bulging panties as she tucks everything away before leaning over to sheepishly look at you.<br>
<br>
"@@.npc_technician;You can, uh, come out now... And I'm so sorry you had to hear that he's um... kind of an ass.@@"<br>
<br>
Nodding speechlessly you take her outstretched hand as she helps you up. She gently brushing something off your chin causing you to blush and look away at the reminder of what you were doing a few minutes prior.<br>
<br>
"@@.npc_technician;So uh, yea... First thanks; I totally just wanted to hassle you a bit by telling you to massage my feet... then you did such a good job and then after...@@" her voice trails off as she bites her lip, obviously a bit embarrassed at how "carried away" things got.<br>
<br>
"@@.npc_technician;Anyway! I'd like to think I earned it - I managed to recover sixty-percent of the lost data. Still a substantial loss but... it'd be a good batting average in baseball, I think?@@"<br>
<br>
You get the feeling she isn't exactly an expert on sport analogies but you manage to find your voice to thank her for that "hard" work before wincing at the pun as she suppresses a giggle.<br>
<br>
"@@.npc_technician;Anyway, I'd really value your discretion about my little secret,@@" <<=setup.getNpcName('npc_technician', 'first')>> tells you, while putting a finger on your lips in a suggestive manner, "@@.npc_technician;That would be better for both our sakes.@@"<br>
<br>
You blush and nod, yea, like you're going to go blabbing that you sucked one of your female co-workers cocks at work...<br>
<br>
"@@.npc_technician;Oh, and... I hope it isn't too forward of me but here@@" she passes you a contact card. "@@.npc_technician;I'd love it if we could get together sometime, maybe outside of work? And I'm not just saying that because of, um... that, like, I'd love to get to know you better in general... though I'm totally willing to return the favour too... if that's the sort of thing you're into.@@"<br>
<br>
You're not sure how you went from discovering she had a cock, to sucking that cock, to her standing before you now flirting and slightly blushing at the offer to return the same but you just nod before excusing yourself.<br>
<br>
As you start to turn she suddenly darts forward for a kiss as you go wide-eyed in surprise, stiffening and then melting slightly at the warmth of her lips and probing tongue.<br>
<br>
"@@.npc_technician;Um... sorry for not asking but I just wanted to... Anyway, I hope you take me up on the offer and good luck with work, I hope they don't come down too heavy on you for the mistake.@@"<br>
<br>
You nod, still in a daze as you walk back to your own cube and try to think of some way to somehow restore more of the data. Though you take the rest of the day you're unable to do any better than what the "Tech Wizard" has already provided, all of your attempts either doing nothing or recovering small portions of what she already gave you.<br>
<br>
Just 5 minutes before the work day should be over the annoying yellow blinking of a new instant message pops up on your desktop. It is from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
It reads "@@.npc_manager;<<=$player.first_name>>, this is about your mishap with the <<=$player.flags.faultcompany>> game data. I need to see you in my office as soon as possible.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_5_1" "Ignore the message and get ready to go home.">>]<br>
[<<moveTo "event_dataservice_intro_6" "Respond that you'll be right up.">>]<br>
</div>/*#
#desc: ask npc_maid for suggestions for A-SLUT uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_cafe.png" "./images/characters/npc_maid.png">>
<div id="invframe" class="scrolltext">
<<set $player.money.total -= 10>>
Thinking that the cute sissy maids are exactly the sort of thing your manager would approve of you wait until after <<=setup.getNpcName('npc_maid', 'first')>> delivers your basic coffee you ask her if she has any clothing suggestions for you.<br>
<br>
"@@.npc_maid;Well... you can never go wrong with a maid's uniform!@@"<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 0>> /* TODO: check that 100 is possible */
<<if setup.checkVisibleClothingTag('maid') == 100>>
"@@.npc_maid;But I can see you already know all about that.@@" she adds with a wink as she nods to your full maid ensemble.
<<else>>
"@@.npc_maid;But I can see you already know a bit about that.@@" she adds with a wink as she nods towards your partial maid attire.
<</if>>
<</if>>
<br><br>
"@@.npc_maid;Idunno, maybe try Tease me, Please me? The girls here rely on them all the time when we're looking for something to tie an... outfit together.@@"<br>
<br>
[<<moveTo "room_mall" "You thank her for the advice, tip her for your drink and leave." 1>>]
</div>/*#
#desc: ask technician for A-SLUT uniform upgrade suggestions over the phone
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Mindful of the restrictions in your contract, and not wanting to get either of you in trouble you ask <<=setup.getNpcName('npc_technician', 'first')>> if she has any ideas of ways you might improve the outfit you wear to work.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes>>
"@@.npc_technician;Hmm, I dunno, I guess the rules are different way up there on the fifty-second floor but what you've been doing so far has been great. I mean, I don't mean anything bad by it but when you worked down with us drones? You were kind of lame looking, a skirt and stockings is way more your speed, so lean into it, maybe some shape-wear or jewelry to really make what you already have pop? Whatever it is I'll bet you find it at <<printShopName 'mall_lingerie_shop'>>; that place is just the best for people like us.@@"<br>
<br>
[<<moveTo $beforePhonecalllocation "You thank her for the suggestions and hang up." 1 "<<set $currentcall = false>>">>]
<<else>>
"@@.npc_technician;Based on what you wear? I dunno, a skirt, maybe a cute pair of pumps? No offense but what you wear doesn't really do much to flatter your figure.@@"<br>
<br>
<<printThought $player 'Oh yea, <<=setup.getNpcName("npc_technician", "first")>> has not seen me since the "dress code" changed, probably not a great idea to try and explain all that over the phone.'>><br>
<br>
[<<moveTo $beforePhonecalllocation "You thank her for the advice and hang up." 1 "<<set $currentcall = false>>">>]
<</if>>
</div>/*#
#desc: ask admin for A-SLUT uniform upgrade suggestions over the phone
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
/* note; uniform upgrade comes after force crossdressing, which already involves npc_admin, so no need to check if he's seen you dressed as a girl. */
/* TODOfuture: additional alts if you're dating him */
<<if setup.getTotalValue("feminization") >= 12>>
You start to ask <<=setup.getNpcName('npc_admin', 'first')>> about uniform suggestions only for him to cut you off.<br>
<br>
"@@.npc_admin;Shit, bro, you know I don't know much about that sort of thing. I mean you and me... we got such different styles, especially nowadays! I'll wish ya luck but yea, I got nothin' for ya for clothing suggestions.@@"<br>
<br>
[<<moveTo $beforePhonecalllocation "Apologizing you quickly end the call." 1 "<<set $currentcall = false>>">>]
<<else>>
You start to ask <<=setup.getNpcName('npc_admin', 'first')>> for uniform upgrade suggestions but, even knowing that he's already aware of your new feminine mien you just can't bring yourself to bring it up and you quickly change the subject.<br>
<br>
[<<moveTo "room_call_npc_admin" "Continue call." 1>>]
<</if>>
</div>/*#
#desc: ask psychiatrist for uniform upgrade suggestions
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'first')>> smiles and shakes her head.<br>
<br>
"@@.npc_psychiatrist;As much as I appreciate the trust shown by your asking for my help in such a matter I do not really have anything to tell you. What we wear is such a personal choice. I mean, I understand the importance of a corporate dress code for purposes of decorum and conformity but, well.... there are reasons I chose to go into private practice.@@"<br>
<br>
"@@.npc_psychiatrist;If I were you I would consider what you know of <<=ps(setup.getNpcName('npc_manager', 'first'))>>... preferences. Consider those your constraints and remember that constraints breed creativity. From there, well... I am sure if you look around, maybe expand your horizons, you will find something that she will accept and you will love.@@"<br>
<br>
<<printThought $player "Well that wasn't much help.... or was it?">><br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: Put on bed heels for bed
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<setScene>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<if $scene.shoes != "bed_heels">>
<<if $scene.shoes != "">>
<<removeItem $player $now $scene.shoes true>>
<</if>>
<<if setup.inWardrobe('bed_heels')>>
<<wardrobeToItem 'bed_heels'>>
<</if>>
<<wearItem $player $now "bed_heels" true>>
<</if>>
<<if !$inventory['bed_heels'].status.lock>>
<<manipulateItem $player $now 'bed_heels' 'lock' true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.shoes != "bed_heels">>
Taking a deep breath you grab the bed heels and crawl into bed. Once again you have to point your toes almost all the way in line with your calves, your initial attempts to merely close the straps failing as it you have tighten them all the way down to force your arch smoothly against the shoes before the hidden catches engage.<br>
<br>
<<printThought $player "Do I really want to do this?">><br>
<br>
Any thought of reversing course is dashed as you find yourself unable to loosen the straps; even without the more obviously locking ankle strap yet in place you are already stuck until morning. Taking another deep breath you close the tall cuff snug around your slender ankle, the click of the lock loud in your quiet bedroom as it seals you for the night with <<if setup.getTotalValue("foot")>10>>an erotic thrill<<else>>a gut-punch<</if>> of finality.<br>
<br>
<<elseif !$npc_manager.flags.uniform_upgrade.bed_heel_punish>>
Somehow sensing your intent to head to bed the bed heels lock closed with a click.<br>
<br>
<<printThought $player "Guess I'm stuck like this 'till morning...">><br>
<br>
<</if>>
Not even wanting to attempt to walk you angle your feet to the side and contort yourself to get a decent picture of your
<<if setup.getTotalValue("heels") >= setup.getItemObj('bed_heels').heels.difficulty>>
adorably pointed
<<elseif setup.getTotalValue("heels") >= 10>>
surprisingly pain-free
<<elseif setup.getTotalValue("heels") >= 5>>
slightly aching
<<else>>
already throbbing
<</if>>
feet and their locked-on nocturnal prisons.<br>
<br>
[<<moveTo "event_bed_heel_picture" "Send the picture to your manager." 60>>]
</div>/*#
#desc: take a picture in your bed heels
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $npc_manager.flags.times_sexted += 1>>
<<set $npc_manager.flags.sent_bed_selfie = true>>
<<completeTask 'bed_heels_photo' $now true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
You triple check that you're sending to the right person before texting the photo to your manager. With your face out of frame you technically aren't identifiable but sending a picture like that to any of your other friends would be... well, hard to explain. You don't have long to dwell on such <<if setup.getTotalValue("feminization") >= 10>>kinky<<elseif setup.getTotalValue("feminization") < 5>>mortifying<<else>>embarrassing<</if>> thoughts as you swiftly get a reply text from your manager.<br>
<br>
<<if $npc_manager.flags.times_sexted == 1>>
"@@.npc_manager;Wow!, Well done, are those a new model? They look even more intense than the old ones, but I bet they will be even more effective you lucky girl! Great job following instructions but I understand how frightening putting those on must have been, and I am concerned you might wimp out in the future so I think you had better send me another pic tomorrow night.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
"Yes <<=setup.getNpcName('npc_manager', 'formal')>>" you reflexively text back, a burst of pleasure running through your body at her responding message of approval.
<<elseif setup.getTotalValue("submission") >= 5>>
You re-read the message twice, your body awhirl with embarrassment, arousal and... other feelings. Finally you send a short "ok" reply text only for your phone to almost instantly buzz again.<br>
<br>
"@@.npc_manager;I believe you mean "Yes, <<=ps(setup.getNpcName('npc_manager', 'formal'))>>." But I will let it slide on account of you probably being tired. Sweet dreams, sissy!@@"<br>
<br>
You blush even harder, quickly putting your phone in sleep mode and putting it away for the night.
<<else>>
You're glad nobody is around to see you blush a deep crimson. Quickly locking your phone you toss it onto the nightstand.
<</if>>
<<elseif (setup.getTotalValue("heels") < 10 || ($currentTasks.hasOwnProperty('bed_heels_photoshoot') && !$currentTasks['bed_heels_photoshoot']))>>
"@@.npc_manager;Very good, and sweet dreams!@@"
<<else>>
Rather than the expected instruction to send another picture <<=setup.getNpcName('npc_manager', 'formal')>> sends back a more personalized text.<br>
<br>
"@@.npc_manager;Well done sleeping in your new bed heels! I know it was difficult at first but I have been seeing your rapid progress at work and I am sure you have been feeling it as well. You no longer need to send me a text each evening of your sleep attire... unless you want to. I trust you to use your bed heels on your own as appropriate to continue your training.@@"
<</if>>
<br><br>
<<if $now.getUTCDay() == 5>>
"@@.npc_manager;I suppose I should give you the weekend off, being the weekend and all... Very well, I will not order you to send me selfies the next two nights, thought I advise you to still continue training! It is, after all, for your own good.@@"<br>
<br>
<</if>>
[<<moveTo "room_dreams" "Go to sleep." 0>>]
</div>/*#
#desc: take a selfie before bed to send to someone
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<setScene>>
<<set $calledTonight = []>>
<</if>>
<<include calculateUnderwearStyle>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
You take a moment to snap a couple shots to show off your full sleep attire.<br>
<br>
You check that everything looks good before you send it off.<br>
<br>
<<if setup.getItemFromType("shirt") == "sexy_nightie">>
That is definitely you; looking cute and feminine in your nightgown.
<<elseif setup.getItemFromType("shirt") == "pyjama">>
That is definitely you, though you've been wearing so much woman's clothing seeing yourself in male pyjamas is almost odd.
<<if setup.getTotalValue("feminization") >= 10>>
Also, kind of ugly, <<=setup.getNpcName('npc_exgirlfriend', 'first')>> must have been humoring you when she said you looked fine in this back when you were still dating.
<<else>>
<<printThought $player 'Why am I thinking "dressing like a man" is odd?'>>
<</if>>
<<elseif setup.checkNaked()>>
That is definitely you, nice and exposed in little save your skin. You try to remember when you started sleeping naked, sometime after <<=setup.getNpcName('npc_exgirlfriend', 'first')>> left you? Your whole life has been too chaotic of late to be certain.
<<else>>
<<switch $scene.underwearStyle>>
<<case "female">>
You are dressed in a mismatched hodge-podge of undergarments. Individually each piece might be fine but as a whole they clash to make for something far less than the sum of its parts.
<<case "bold">>
Your underwear is nicely matched. Bold and highlighting your figure while giving you a bit of an edge of power.
<<case "sissy">>
You are dressed in frilly pink underwear; cute, submissive and sissy to the extreme. From your pink stockings to your bell'd garters and your soft, cute bra you are a vision of sweet, "innocent" femininity.
<<case "cute" "sissycute">>
You are wearing nicely matched underwear, but nothing that would particularly turn heads.
<<case "male">>
You are wearing male undergarments... for some reason.
<<case "fetish">>
You are dressed in very fetishistic underwear, kinky!
<<case "modest">>
You are dressed in modest, sensible undergarments.
<<case "none">>
You are wearing no underwear at all!
<<default>>
ERROR unknown underwear style: <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<<if setup.getItemFromType("shoes") == "bed_heels">>
Sitting seductively on the bed attention for your photo is drawn to your feet thanks to the ludicrously-tall bed heels conspicuously locked to your feet.
<</if>>
<br><br>
<<if setup.getItemFromType("plug") == "">>
<<if setup.checkItemVisible(setup.getItemFromType("cage"))>>
You haven't even tried to conceal your chastity cage, your <<getWordMyPenis $player>> safely looking cute, safe and locked.
<<else>>
Not wanting to "leave anything out" you take an additional shot pointed down past your pulled-aside undergarments to show off the pink cage securely locked around your <<getWordPenis $player>>.
<</if>>
<<else>>
<<if setup.checkItemVisible(setup.getItemFromType("plug"))>>
Bending over you use the phone to take a quick additional shot of your ass to show off the <<=setup.getPlugSize(setup.getItemFromType("plug"))>> plug stuffed into your pert hole.
<<else>>
<<if setup.getItemFromType("panties") == "pink_sissy_panties">>Unzipping the rear panel of <<else>>Pulling down <</if>>your panties you snap a quick shot of your pert but and the <<=setup.getPlugSize(setup.getItemFromType("plug"))>> plug stuffed inside.
<</if>>
<</if>>
<<if !setup.isBodySlotVisible('penis')>>
Pulling your panties temporarily out of the way you snap an extra picture of your cute uncaged <<getWordMyPenis $player>>.
<</if>>
<br><br>
<<printBedPhotoTexting $phoneList $calledTonight>><br>
<<if $calledTonight.length > 0>>
[<<moveTo "room_dreams" "Go to bed without sending any more sexts." 0>>]
<<else>>
[<<moveTo "room_dreams" "Go to bed without sending any sexts." 0>>]
<</if>>
<br>
[<<moveTo "room_bedroom" "Rework your outfit and try again." 0>>]
</div>/*#
#desc: send a bed selfie to manager after task period
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set _x = $calledTonight.pushUnique('npc_manager')>>
<<set $npc_manager.flags.times_sexted +=1>>
<<set $scene.approval = 0>>
<<if setup.getItemFromType("shirt") == "sexy_nightie">>
<<set $scene.approval += 1>>
<<elseif setup.getItemFromType("shirt") == "pyjama">>
<<set $scene.approval -= 5>>
<<elseif setup.checkNaked()>>
<<set $scene.approval += 1>>
<<else>>
<<switch $scene.underwearStyle>>
<<case "bold">>
<<set $scene.approval -= 1>>
<<case "sissy">>
<<set $scene.approval += 2>>
<<if setup.getItemFromType("choker") == "choker_sissy">>
<<set $scene.approval += 1>>
<</if>>
<<case "cute" "sissycute">>
<<set $scene.approval += 2>>
<<case "male">>
<<set $scene.approval -= 3>>
<<case "fetish">>
<<set $scene.approval += 1>>
<</switch>>
<</if>>
<<if setup.getItemFromType("shoes") == "bed_heels">>
<<set $scene.approval += 1>>
<</if>>
<<if setup.getItemFromType("cage") != "">>
<<set $scene.approval += 1>>
<<else>>
<<set $scene.approval -= 1>>
<</if>>
<<if setup.getItemFromType("plug")>>
<<set $scene.approval += 1>>
<</if>>
<<if $scene.approval <= -5 && setup.getTotalValue("feminization") >= 10 && setup.getTotalValue("submission") >= 10>>
<<removeItem $player $now "pyjama" true>>
<<deleteItem $player $now "pyjama">>
<</if>>
<<if $npc_manager.flags.times_sexted == 1>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_20'
4
'psychiatrist_sext_bed_heels'
true
'theme_psychiatrist_manager_header'
>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
Shooting off the sext you wait nervously for several moments, almost jumping when your phone buzzes with a text of your <<=ps(setup.getNpcName('npc_manager', 'formal'))>> response.<br>
<br>
<<if setup.getItemFromType("shirt") == "sexy_nightie">>
"@@.npc_manager;How cute! I am glad you have such a nice nighty to wear to bed.
<<if $scene.underwearStyle == "sissy">>
And with your sissy panties all worn underneath! Simply perfection!
<</if>>
@@"
<<elseif setup.getItemFromType("shirt") == "pyjama">>
"@@.npc_manager;Hmm, I know the dress code only technically applies when you are at work but those pyjamas are really quite ugly, I do not like seeing you in them at all.@@"
<<elseif setup.checkNaked()>>
"@@.npc_manager;Sleeping naked? You naughty girl!@@"
<<else>>
<<switch $scene.underwearStyle>>
<<case "female">>
"@@.npc_manager;What have I told you about selecting your undergarments to form a cohesive style? Just because they look individually does not mean they can go together.@@"
<<case "bold">>
"@@.npc_manager;Hmm, trying to mimic my style? No, I do not like that at all, those garments do not suit you in any way.@@"
<<case "sissy">>
"@@.npc_manager;Now THAT is a good sissy outfit. Perfect for work and home! I see hardly a reason for you to ever wear anything else,
<<if setup.getItemFromType("choker") == "choker_sissy">>
and your choker! I just love how it labels you for the world and perfectly ties everything together.
<<elseif setup.getItemFromType("choker") != "">>
though things would look even better with the right choker... something pink and frilled and as nauseatingly cute as yourself...
<<else>>
though your neck looks a little exposed and bare... I hear vampires love to nibble on cute sissies in their sleep, you should watch out.
<</if>>
@@"
<<case "cute" "sissycute">>
"@@.npc_manager;You look cute in those, but you look cute in anything. I really think you can find something that suits you better and really makes your cute body pop.@@"
<<case "male">>
"@@.npc_manager;Is that... male underwear? I am very disappointed in you. I realise that your dress code requirements technically only apply when you are "on the job" but... I thought that you would have learned the infinite superiority of feminine undergarments for one such as you by now...@@"
<<case "fetish">>
"@@.npc_manager;Is that... my my, quite a kinky choice to sleep in, I bet that gives you some fun dreams!@@"
<<case "modest">>
"@@.npc_manager;Hmm, that is quite a... modest selection.@@" You can tell from her tone that such is not to her preference
<<case "none">>
"@@.npc_manager;Showing off without any underwear? Obviously that would be totally inappropriate for work but, I suppose it is acceptable for sleep, though not exactly preferred when there are so many more... cute options...@@"
<<default>>
ERROR, missing description for <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<br><br>
<<if setup.getItemFromType("shoes") == "bed_heels">>
"@@.npc_manager;You are still wearing your heels! I am so impressed how well you have taken to them, and they just look perfect locked around those slender little ankles.@@"<br>
<br>
<</if>>
<<if setup.getItemFromType("cage") != "">>
<<if setup.checkItemVisible(setup.getItemFromType("cage"))>>
"@@.npc_manager;You are looking a little cramped in that chastity cage.
<<if $npc_manager.flags.hascagekey>>
That is as it should be; I dare say I see little reason why I should ever give you this key back.
<<elseif !setup.checkItemOwned(setup.getItemObj(setup.getItemFromType("cage")).lockable[1])>>
Of course it would be even better if I was the one in possession of your key... well, one step at a time, I suppose.
<<else>>
It is a credit to your training and sissy resolve that you have not given in to the temptation to unlock yourself.
<</if>>
@@"
<<else>>
"@@.npc_manager;Aww, you are showing off your cage in full view! Better hope nobody sneaks in while you are asleep, I daresay few could resist taking advantage of your helplessness.
<<if !setup.checkItemOwned(setup.getItemObj(setup.getItemFromType("cage")).lockable[1])>>
Of course I am the one with the key so if it was anyone else you would just have to helplessly endure the teasing!
<<else>>
Thinking about it it probably is not safe for you to have the key with you... I mean it pretty much negates the protection your cage is providing.
<</if>>
@@"
<</if>>
<br><br>
<<else>>
<<if setup.isBodySlotVisible('penis')>>
"@@.npc_manager;How lewd, I do not want a dick pic.@@"
<<else>>
"@@.npc_manager;No chastity cage? I am disappointed, your sissy clitty is much safer locked away.@@"
<</if>>
<br><br>
<</if>>
<<if setup.getItemFromType("plug")>>
<<if setup.getItemFromType("panties") == "pink_sissy_panties">>
"@@.npc_manager;Oh, how slutty!, I love the way your panties unzip to show off your stuffed rear. You are making me sad I am not there to stick something of my own up there.@@"
<<else>>
"@@.npc_manager;It is so nice that you are sleeping plugged; taking advantage of every moment of the day to enact self improvement is a real credit to your secretarial focus.@@"
<</if>>
<br><br>
<</if>>
<<switch $scene.approval>>
<<case 7>> /* full sissy undies, nightie, bed heels, chastity, plug, sissy collar */
"@@.npc_manager;You are truly a vision of perfection. My only regret is that I am not there to tuck you in myself! It is so good that you are internalizing your lessons, even on your "off" time.@@"
/* TODOfuture chance for her to show up in the middle of the night, either treated as a dream and/or directly progressing relationship? */
<<case 6>>
"@@.npc_manager;You look just stunning, but I feel like there is something missing, nothing much, just some final small detail to really tie everything together in a nice pink bow...@@"
<<case 5 4>>
"@@.npc_manager;You are looking very cute. I bet you have nice sissy dreams dressed like that.@@"
<<case 3 2>>
"@@.npc_manager;Good job experimenting with your sleep arrangements; you only improve at something through constant effort and I always enjoy chronicling your continued advancement.@@"
<<case 1 0>>
"@@.npc_manager;Overall I am unimpressed. I believe you can do far, far better in selecting your sleep attire.@@"
<<case -1>> /* bold undergarments or chastity missing*/
<<if $scene.underwearStyle == 'bold'>>
"@@.npc_manager;I hope you are not harboring any secret rebellious thoughts dressing so bold and unfettered. As the saying goes - if you disrespect me in your dreams, you better wake up and send me an apology@@"<br>
<br>
/* TODOfuture; the unidirectional progression of submission means this probably needs to be reworked when the dom path is added. */
<<if setup.getTotalValue("submission") < 5>>
<<printThought $player "I don't care if she doesn't like them; these panties make me feel confident!">>
<<elseif setup.getTotalValue("submission") < 10>>
<<printThought $player "Why did I even buy those panties? <<=setup.getNpcName('npc_manager', 'formal')>> is right, they really do not suit me.">>
<<else>>
<<printThought $player "I hope she is not too upset, but it is not wrong for me to stand up for myself, is it?">>
<</if>>
<<else>> /* no chastity */
"@@.npc_manager;I realise I gave you the key to your cage, but I hoped you would only use it for cleaning. Sleeping unsecured like that is a recipe for disaster and could your entire sissy training at risk.@@"<br>
<br>
<<if setup.getTotalValue("submission") < 5>>
<<printThought $player "I don't care if I have to wear it to work, on my own time I want access to my <<getWordPenis $player>>">>
<<elseif setup.getTotalValue("submission") < 10>>
<<printThought $player "<<=setup.getNpcName('npc_manager', 'formal')>> is right, I should just give her the keys to my cage so I'm not tempted in the future.">>
<<else>>
<<printThought $player "I wish she would accept that I deserve freedom on my own time!">>
<</if>>
<</if>>
<<case -2>> /* bold undergarments and chastity*/
"@@.npc_manager;I do not know who you think you are fooling, flaunting your clitty out of chastity with such... aggressive undergarments. Keep this up and I may be forced to bring you to heel. I know this is your personal time but even in private such behaviour is quite unbecoming a proper SISSY secretary.@@"<br>
<br>
/* TODOfuture; the unidirectional progression of submission means this probably needs to be reworked a ~dom path is added. */
<<if setup.getTotalValue("submission") < 5>>
<<printThought $player "I don't care if she doesn't like them; these panties make me feel confident!, and I hate having my <<getWordMyPenis $player>> locked away...">>
<<elseif setup.getTotalValue("submission") < 10>>
<<printThought $player "Why did I even buy those panties? <<=setup.getNpcName('npc_manager', 'formal')>> is right, they really are not me, and I can't be trusted with my key, I should give it to her permanently.">>
<<else>>
<<printThought $player "I hope she is not too upset, but it is not wrong for me to want to be more assertive and in control of myself, is it?">>
<</if>>
<<case -5 -6 -7>> /* -5 male pyjamas, -6 male pyjamas w/bold or no chastity, -7 male pyjamas w/bold and no chastity */
"@@.npc_manager;I have to say, I am enormously disappointed in your choice of sleeping attire. It is like you are learning nothing from your training, the moment you are out of arms reach you flaunt every rule there is! This is not the kind of thing I want to watch you evolve into at all, it is like once you think you are out of my sight you become a completely different person. Being a SISSY secretary is not an act, it is who you are, and you need to stop fighting it, unless you want to fail out of another job?@@"<br>
<br>
<<if setup.getTotalValue("feminization") < 5>>
Though you fall asleep with fears of her punishment you are also bolstered by the fact that you are managing to cling to your masculinity and resist her control.
<<elseif setup.getTotalValue("feminization") >= 10 && setup.getTotalValue("submission") >= 10>>
You are deeply shamed by her feedback, but it is true, these pyjamas are just wrong for you. Flailing around you rip them off and pitch them in the trash, never wanting to be afflicted by their like again.
<<else>>
You are a bit nervous as you try to fall asleep, worried that your choice of sleepwear might incur her wrath.
<</if>>
<<default>>
ERROR: scene.approval out of range: <<=scene.approval>>
<</switch>>
<br><br>
<<printBedPhotoTexting $phoneList $calledTonight>> <br>
[<<moveTo "room_dreams" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to psychiatrist
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set _x = $calledTonight.pushUnique('npc_psychiatrist')>>
<<set $scene.approval = 0>>
<<set $npc_psychiatrist.flags.times_sexted +=1>>
<<if $scene.random>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<set $npc_psychiatrist.flags.times_sexted_accidentally += 1>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
'theme_psychiatrist_other_header'
>>
<</if>>
<</if>>
<<if setup.getItemFromType("shirt") == "sexy_nightie">>
<<set $scene.approval += 1>>
<<elseif setup.getItemFromType("shirt") == "pyjama">>
<<set $scene.approval -= 1>>
<<else>>
<<switch $scene.underwearStyle>>
<<case "bold">>
<<set $scene.approval += 2>>
<<case "sissy" "cute" "sissycute">>
<<set $scene.approval += 2>>
<<if setup.getItemFromType("choker") == "choker_sissy">>
<<set $scene.approval += 1>>
<</if>>
<<case "modest">>
<<set $scene.approval += 1>>
<<case "fetish">>
<<set $scene.approval += 2>>
<</switch>>
<</if>>
<<if setup.getItemFromType("shoes") == "bed_heels">>
<<set $scene.approval += 1>>
<</if>>
<<if setup.getItemFromType("plug") != "">>
<<set $scene.approval += 1>>
<</if>>
<<if $npc_psychiatrist.flags.times_sexted == 1>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_15'
4
'psychiatrist_sext_personal'
true
'theme_psychiatrist_other_header'
>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.random>>
<<if $npc_psychiatrist.flags.times_sexted_accidentally == 1>>
"@@.npc_psychiatrist;Hmm, is that what you are wearing to bed? I typically tell my patients to wait for their next session, but if you are sending this you must really need some advice, let me take a closer look.@@"<br>
<br>
<<printThought $player "Oh no, I accidentally sent a naughty sext to <<=setup.getNpcName('npc_psychiatrist', 'first')>>!">><br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
You should be embarrassed, but more than that... you are aroused. You feel yourself relaxing like you do during your sessions. After all, <<=setup.getNpcName('npc_psychiatrist', 'first')>> always has your best interests in mind; even going so far as to help you learn what those interests are.
<<elseif setup.getTotalValue("humiliation") >= 5>>
You are both embarrassed and aroused in equal measure, nervously wondering what <<=setup.getNpcName('npc_psychiatrist', 'first')>> might be thinking. Your mind immediately conjures the familiar sight of her looking at you with her large, inquisitive eyes, scratching away at her notepad.
<<else>>
You are more embarrassed than you've ever been in session, despite all the personal things you have shared with <<=setup.getNpcName('npc_psychiatrist', 'first')>> this feels somehow even more intimate.
<</if>>
<br><br>
The only solace you might take in your error is that this is still covered by doctor/patient confidentiality.
<<else>>
Reading the incoming name on the text you realise you have once again fat-fingered your sext.<br>
<br>
<<printThought $player "Am I really this clumsy, or is this my subconscious acting out? I suppose <<=setup.getNpcName('npc_psychiatrist', 'first')>> would be the person to know about that sort of things...">>
<</if>>
<</if>>
<br><br>
<<if setup.getItemFromType("shirt") == "sexy_nightie">>
"@@.npc_psychiatrist;I quite like your nightie. What do you enjoy best; how light and cute it is, or the way that soft lace feels against your skin?@@"
<<elseif setup.getItemFromType("shirt") == "pyjama">>
"@@.npc_psychiatrist;Aren't those pyjamas meant for men? A weird choice, don't you find that fake satin scratchy and uncomfortable?@@"
<<elseif setup.checkNaked()>>
"@@.npc_psychiatrist;Sleeping naked, are we? Doesn't it feel so free and unrestrictive when you do that?@@"
<<else>>
<<switch $scene.underwearStyle>>
<<case "female">>
"@@.npc_psychiatrist;Are you feeling confused? Your undergarments are so muddled, you should really focus more on clarifying your desires.@@"
<<case "bold">>
"@@.npc_psychiatrist;Hmm, that is a very bold choice of underwear; do you feel the need to be more in charge of your life?@@"
<<case "sissy" "cute" "sissycute">>
<<if setup.getItemFromType("choker") == "choker_sissy">>
"@@.npc_psychiatrist;That choice is very interesting, how it literally, and accurately, labels you. I think it is healthy to do something like this; to be so confident in what you are you shout it to the world.@@"
<<else>>
"@@.npc_psychiatrist;Ah, a very cute set of underwear. I bet you look even more adorable in person, and those bells! Do they chime out "sissy, sissy, sissy" every time you move?@@"
<</if>>
<<case "modest">>
"@@.npc_psychiatrist;Functional, if somewhat plain. I know it is just underwear but I think every choice we make either says something about ourselves, or helps take us along the path towards what we want to be.@@"
<<case "fetish">>
"@@.npc_psychiatrist;Ooooh! Kinky! You know that the sexual meaning of fetish actually comes from the field of psychiatry? Of course, there is really nothing wrong with that sort of thing, these days, but remember you can talk to me about ANYTHING during sessions...@@"
<<case "male">>
"@@.npc_psychiatrist;Masculine underwear... you know I would never have guessed, you really do present quite the puzzle sometimes...@@"
<<case "none">>
"@@.npc_psychiatrist;Sleeping without any underwear? Interesting, do you think being "free" in this fashion will grant you more pleasant dreams?@@"
<<default>>
ERROR: unhandled set style: <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<br><br>
<<if setup.getItemFromType("shoes") == "bed_heels">>
"@@.npc_psychiatrist;Those are very impressive shoes, and the way you have locked them on shows a real commitment. Heels are so interest thing - the steeper and loftier you go the more challenging they become. Much like life, I suppose; I guess wearing those means you are getting ahead fast!@@"<br>
<br>
<</if>>
<<if setup.getItemFromType("cage") != "">>
"@@.npc_psychiatrist;Is <<=setup.getNpcName('npc_manager', 'formal')>> still keeping you locked up? Well I guess if that is what you want, your <<getWordPenis $player>> does look quite cute all restrained and secure.@@"<br>
<br>
<</if>>
<<if setup.getItemFromType("plug") != "">>
<<if setup.getItemFromType("plug") == "analplug_medium_ems">>
"@@.npc_psychiatrist;Is that the plug from our sessions? It is! Do not worry, I'm not going to accuse you of stealing or anything! But, you know it seems a shame that you aren't "plugged in" for the night as well as being plugged. If my grant only afforded me more equipment to send home with you we could lean so much together...@@"
<<else>>
"@@.npc_psychiatrist;That is quite a nice looking plug in your bum. I bet it keeps all the cute dreams from leaking out while you sleep!@@"
<</if>>
<br><br>
<</if>>
<<switch $scene.approval>>
<<case 7>> /*ems plug, heels, matching sissy underwear w/collar*/
"@@.npc_psychiatrist;The only other thing I can say is wow. It is like you have transcended to another level. They say the clothes maketh the man, but they make the sissy as well and your entire outfit is working together towards that end. Such clarity of effort is the whole goal of therapy, it is so heartening to see our efforts manifesting so well for you.@@"
<<case 6 5>>/*plug, heels, matching bold or sissy underwear */
"@@.npc_psychiatrist;Overall I am really impressed with your selections. I think you are well on your way to becoming the girl of your dreams.@@"
<<case 4 3>>
"@@.npc_psychiatrist;Thank you for sending me these images. Opening yourself up like this can only be good for your mental health, and what you reveal.... well it reinforced my feelings that our therapy has really been helping you out.@@"
<<case 2 1 0>>
"@@.npc_psychiatrist;You look cute, but I feel like you are missing something. Bedtime should be a period of tranquility and comfort, what do you think you could wear that would put you more at ease?@@"
<<case -1>> /* Male sleepwear */
"@@.npc_psychiatrist;I am sorry to note that you appear very stressed. I hope you are just tired from a long, hard.... day; but if it is something else be sure to bring it up during our next session.@@"
<<default>>
ERROR: unhandled approval: <<=$scene.approval>>
<</switch>>
<br><br>
<<printBedPhotoTexting $phoneList $calledTonight>><br>
[<<moveTo "room_dreams" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to technician
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $calledTonight.pushUnique('npc_technician')>>
<<set $npc_technician.flags.times_sexted += 1>>
<<if $npc_technician.flags.times_sexted == 1>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_3'
5
'event_technician_theme_sexting'
true
'theme_technician_other_header'
>>
<</if>>
<<if $scene.random>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<set $npc_technician.flags.times_sexted_accidentally += 1>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
'theme_psychiatrist_other_header'
>>
<</if>>
<</if>>
<<if $npc_technician.relationship.relationship_stage >=1>>
<<set $scene.domAppearance = 0>>
<<switch $scene.underwearStyle>>
<<case "bold">>
<<set $scene.dom += 1>>
<<case "sissy" "cutesissy" "cute">>
<<set $scene.dom -= 1>>
<</switch>>
<<if setup.getItemFromType("choker") != "">>
<<switch setup.getItemFromType("choker")>>
<<case "choker_sissy">>
<<set $scene.dom -= 2>>
<<case "bondage_collar" "rpg_succubus_collar">>
<<set $scene.dom -= 1>>
<<case "rhinestone_choker">>
<</switch>>
<</if>>
<<if setup.getItemFromType("cage") != "">>
<<set $scene.dom -= 2>>
<</if>>
<<else>>
<<set $scene.approval = 0>>
<<if setup.getItemFromType("shirt") == "sexy_nightie">>
<<set $scene.approval += 1>>
<<elseif setup.checkNaked()>>
<<set $scene.approval += 1>>
<<else>>
<<switch $scene.underwearStyle>>
<<case "female">>
<<set $scene.approval += 1>>
<<case "bold">>
<<set $scene.approval += 5>>
<<case "sissy" "cute" "sissycute">>
<<if setup.getItemFromType("choker") == "choker_sissy">>
<<set $scene.approval += 5>>
<<else>>
<<set $scene.approval += 2>>
<</if>>
<<case "modest">>
<<set $scene.approval += 2>>
<<case "fetish">>
<<set $scene.approval += 5>>
<</switch>>
<</if>>
<<if setup.getItemFromType("cage") != "">>
<<set $scene.approval += 1>>
<</if>>
<<if setup.getItemFromType("plug") != "">>
<<set $scene.approval += 1>>
<</if>>
<<if !setup.isBodySlotVisible('penis')>>
<<set $scene.approval += 1>>
<</if>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Hey, you trying to send a pictures? Damn phone. My building has like, the worst reception. Lemme bounce the wifi.@@"<br>
<br>
<<if $scene.random>>
<<if $npc_technician.flags.times_sexted_accidentally == 1>>
<<printThought $player "Oh no, I accidentally sent those pictures to <<=setup.getNpcName('npc_technician', 'first')>>!">>
<br><br>
<<if setup.getTotalValue("humiliation") >= 10>>
You should be embarrassed, and yet instead all you are is aroused as the thought of your perverted friend looking at you all naughty in your sleepwear.
<<elseif setup.getTotalValue("humiliation") >= 5>>
You are both embarrassed and aroused in equal measure. Technically you have a bit of an arrangement, knowing her secret and all, but still... As chill as she has been you still nervously await her reply.
<<else>>
Even if <<=setup.getNpcName('npc_technician', 'first')>> has always been kind of flirty you are mortified, frozen in shock and unable to look away from your phone, and yet terrified to read her response.
<</if>>
<<else>>
<<printThought $player "Oh crap, I sent those pictures to <<=setup.getNpcName('npc_technician', 'first')>> by accident again!">><br>
<br>
<<if $npc_technician.relationship.relationship_stage >=1>>
<<printThought $player "I guess I owe her something since our last date, maybe this is just my subconscious reaching out?">>
<<else>>
<<printThought $player "Am I really this clumsy, or is this me subconsciously trying to flirt? Maybe I should just ask her on a date...">>
<</if>>
<br><br>
Fortunately <<=setup.getNpcName('npc_technician', 'first')>> has always been really cool, but you still nervously bite your lip as you await her reply.
<</if>>
<br><br>
<</if>>
<<if $npc_technician.relationship.relationship_stage >=1>>
"@@.npc_technician;Aww, a good night picture? I guess I should return the favour, one sec.@@"<br>
<br>
A moment later you get a selfie of <<=setup.getNpcName('npc_technician', 'first')>>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
she's dressed in a cute, but skimpy pair of red panties, the outline of her <<if $npc_technician.relationship.her_caged>>caged<<else>>straining<</if>> member clearly silhouetted in the stretchy material. Rounding things off is your collar proudly displayed around her neck as she smiles submissively up at the camera.
<<case "dom">>
she's dressed in bold red panties, standing confident with the camera angled so that she appears to be looking down, the shape of her hard member very noticeably straining inside her clothes.
<<case "neutral">>
she's dressed in a long shirt with a video game character on the front, flashing a cute smile and a two-finger peace sign.
<<default>>
ERROR unknown relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
"@@.npc_technician;Alright, now that you've seen me, lemme feast these eyes on what you're wearin'...@@"<br>
<br>
There's a brief ... pause of "the other person" is typing and then her responses start coming in like rapid fire bullets.
<<if setup.getItemFromType("shirt") == "sexy_nightie">>
"@@.npc_technician;That nighty? Cute and hawt.@@"
<<elseif setup.getItemFromType("shirt") == "pyjama">>
"@@.npc_technician;Pyjamas? You can totally do better than that!@@"
<<if $npc_technician.relationship.her_role == "sub">>
<br><br>
"@@.npc_technician;I mean, wouldn't something more feminine be more comfortable, Mistress?@@"
<</if>>
<<elseif setup.checkNaked()>>
"@@.npc_technician;Naked! So sexy, I wish I could cuddle up against all that sexy smooth sissy-flesh!@@"
<</if>>
<br><br>
<<switch $scene.underwearStyle>>
<<case "female">>
"@@.npc_technician;Panties... yum.@@"
<<case "bold">>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Mmm, you look so sexy and dominant, makes me wish I was cuddled at the foot of your bed!@@"
<<case "dom">>
"@@.npc_technician;Hmm, are you forgetting your role? I'm the one in charge, and don't you forget it lest I turn that cute bum red but good!@@"<br>
<br>
"@@.npc_technician;Seriously tho, you look totes hot in those.@@"
<<case "neutral">>
"@@.npc_technician;Mmm, sexy, I could see myself saying "yes Mistress" to those for sure...@@"
<</switch>>
<<case "sissy" "cute" "sissycute">>
"@@.npc_technician;Amghad! You are just SO CUTE in those undergarments! Like, seriously I'm so wet right now just looking at you...@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;If I wasn't locked in this infuriating cage I would totally jerk one out right now... tho I guess that's why you have me in this thing ><@@"
<<else>>
There is a brief pause before her next message.<br>
<br>
"@@.npc_technician;Sorry, had to go squeeze one out, looking at you like that was just turning me on way too much.@@"
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
<br><br>
"@@.npc_technician;Guess I'll be getting a punishment for that later... totes worth it!@@"
<<case "dom">>
<br><br>
"@@.npc_technician;It's just a pity you aren't here to clean up... all this yummy girl-cum that you don't get to lick up...@@"
<</switch>>
<</if>>
<<case "modest">>
"@@.npc_technician;Sensible underwear... I kind of expected something less ho-hum...@@"
<<case "fetish">>
"@@.npc_technician;Oh wow those are... mmmfff, girl after my own kinky heart, I love it!@@"
<<case "male">>
"@@.npc_technician;Male, yuck! Is that, like a joke? Not a good one, if it is...@@"
<<case "none">>
"@@.npc_technician;Sleeping commando? Fun! Nice easy access for anyone sleeping next to you...@@"
<<default>>
ERROR, missing description for: <<=$scene.underwearStyle>>
<</switch>>
<br><br>
<<if setup.getItemFromType("choker") != "">>
<<switch setup.getItemFromType("choker")>>
<<case "choker_sissy">>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;That choker tho... I mean don't get me wrong it's cute as all heck but well... it somewhat dents your dominant vibe...@@"
<<case "dom">>
"@@.npc_technician;And that choker... you just can't resist going all out to shout your sissydom to the world! I fucking love that about you! You better wear it next time we get together so I can try to pop that shit!@@"
<</switch>>
<<case "bondage_collar">>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Hey, I'm the one who is supposed to be collared! Tho... you look really good in it...@@"
<<case "dom">>
"@@.npc_technician;Mmm, collared for bed, what a good slave!@@"
<</switch>>
<<case "rpg_succubus_collar">>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Mmm, my sexy succubus queen... you look so good in that, even if it isn't quite appropriate for a domme...@@"
<<case "dom">>
"@@.npc_technician;Mmm, my sweet, sexy succubus slave, I just love that collar on you!@@"
<</switch>>
<<case "rhinestone_choker">>
"@@.npc_technician;Hmm, that's a pretty fancy choker but... isn't it going to be a bit uncomfortable to wear to bed?@@"
<<case "tie">>
"@@.npc_technician;Wearing a tie to bed? Well colour me totally confused.@@"
<<default>>
ERROR: unhandled choker <<=setup.getItemFromType("choker")>>
<</switch>>
<br><br>
<</if>>
<<if setup.getItemFromType("shoes") == "bed_heels">>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Woah, those heels are insane! You aren't going to order me to wear anything like that, are you, Mistress? I know I'm not as good with heels as you are but they look so scary ><@@"
<<case "dom">>
"@@.npc_technician;Woah, those heels! No wonder you're so good in heels! Keep it up, I love having you as my high heel slave... just don't expect me to do the same, heh.@@"
<<case "neutral">>
"@@.npc_technician;Wow, those shoes are totally crazy! No wonder you're so good at walking in heels.@@"
<</switch>>
<br><br>
<</if>>
<<if setup.getItemFromType("cage") != "">>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Looks like we're both stuck caged, what's that meme, "and they were both subs?" not that I'm calling you a sub, mind, you're still my wonderful Mistress, even if you are locked up by someone else <3@@"
<<else>>
"@@.npc_technician;Aww, you're caged and I'm free, ain't that a reversal! Not that I'm making fun of you, I promise I'm a good slave, not a brat!@@"<br>
<br>
"@@.npc_technician;Well... not always a brat...@@"
<</if>>
<<case "dom">>
<<if $npc_technician.relationship.keyholder>>
"@@.npc_technician;Caged, and me with key in hand... just as it should be!@@"
<<else>>
"@@.npc_technician;I love that you're caged, tho I am annoyed that I'm not the one responsible for keeping you locked...@@"
<</if>>
<<case "neutral">>
"@@.npc_technician;You know, you look really good in a cage, anyone ever tell you that?@@"
<</switch>>
<br><br>
<</if>>
<<if setup.getItemFromType("plug") != "">>
<<if setup.checkItemVisible(setup.getItemFromType("plug"))>>
"@@.npc_technician;Ooooh, sleeping plugged? So hot! I'm totally going to do the same!@@"
<<else>>
"@@.npc_technician;Is that the outline of a plug? So hot, I'm totally gonna sleep plugged too, we'll be like booty twins!@@"
<</if>>
<br><br>
A few moments pass before her next message.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Oh yes! I wish this was you inside me right now... Fuck your slave good...@@"
<<case "dom">>
"@@.npc_technician;Aww yea, that feels good, can't let you sissy slaves have all the butt-fun!@@"
<<case "neutral">>
"@@.npc_technician;Mmm, that feels great, I should really do this more often, thanks for the idea!@@"
<</switch>>
<br><br>
<</if>>
<<if setup.isBodySlotVisible('penis')>>
"@@.npc_technician;By the way; nice broadsword! We should totally fence sometime; victor gets to use the loser as their sheath!@@"<br>
<br>
<</if>>
<<switch $scene.domAppearance>>
<<case 1>>
"@@.npc_technician;You know, I don't quite understand how you can look so cute and dominant and the same time... but boy is it sexy!<<if $npc_technician.relationship.her_role == "dom">> Though... you'd look even better dressing to match your role.<</if>>@@"
<<case 0>>
"@@.npc_technician;Neither dom nor sub... you are quite the conundrum! A very cute conundrum tho!@@"
<<case -1 -2>>
"@@.npc_technician;Don't you look innocently submissive tho... I think, as they say, you can totally go deeper...@@"<br>
<br>
<<if $npc_technician.relationship.her_role == "sub">>
"@@.npc_technician;Ooops, forgot my place again >< sorry, Mistress but you are just too cute for your own good sometimes...@@"
<</if>>
<<case -3 -4>>
"@@.npc_technician;So I tallied the scores and... you are one of the cutest, sissiest things I've ever seen!@@"
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
<br><br>
"@@.npc_technician;Kinda makes me feel a bit inadequate but then I remember how much I love being your slave and well... go go sissy in charge!@@"
<<case "dom">>
<br><br>
"@@.npc_technician;That said, I think there's a bit more work to make you perfect... and I'm here to help!@@"
<</switch>>
<<case -5>>
"@@.npc_technician;It's officially, you are the cutest, sissiest thing there is!@@"<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Kinda makes me feel a bit inadequate but then I remember how much I love being your slave and well... go go sissy in charge!@@"
<<case "dom">>
"@@.npc_technician;I'm so grateful that you're mine, you make me so happy!@@"
<<case "neutral">>
"@@.npc_technician;Oh how I would love to make you mine...@@"
<</switch>>
<</switch>>
<<else>>
<<if $npc_technician.flags.times_sexted == 1>>
"@@.npc_technician;Woah, did you fat finger things in sending these to me?@@"<br>
<br>
"@@.npc_technician;Is this what you're wearing now? I promise I won't blackmail you or anything like that if you let me keep these pics...@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> seems to take you lack of swift reply for consent and a few moments later you get a flurry of texts commenting on your look.
<<else>>
"@@.npc_technician;More pics? For me? You are such a tease! Whatever, imma totally gonna check. You. OUT!@@"
<</if>>
<br><br>
<<if setup.getItemFromType("shirt") == "sexy_nightie">>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Oooh, that is totally a woman's nightie! You kinky boy, I love it!@@"
<<else>>
"@@.npc_technician;To be honest, this is kind of what I always imagined you wearing to bed, so cute! And no it's totally not weird for me to think about that sort of thing. You're the perv sending me naughty pics!@@"
<</if>>
<<elseif setup.getItemFromType("shirt") == "pyjama">>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Those pyjamas are kind of dull, though I guess that's normal for male clothing. Even if heels can be uncomfortable I definitely prefer my options as a girl overall.@@"
<<else>>
"@@.npc_technician;Dang, boring old pj's? I totally expected you to sleep in something more fun!@@"
<</if>>
<<elseif setup.checkNaked()>>
"@@.npc_technician;Wow, I figured you had a cute body, but it's even better than I thought; all smooth and shapely <<if setup.getTotalValue("strength") < 5>>without any<<elseif setup.getTotalValue("strength") < 10>>with hardly any<<else>>with just enough<</if>> muscle.@@"
<<else>>
<<switch $scene.underwearStyle>>
<<case "female">>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Wow, woman's underwear? You're a bit mismatched but still, I had no idea! I can totally help you coordinate better.@@"
<<else>>
"@@.npc_technician;Huh, I totally thought you'd be more coordinated, I guess you're still starting out, let me know if you need help.@@"
<</if>>
<<case "bold">>
"@@.npc_technician;Wow, I had no idea you could look so... domme!, It's honestly making me kind of hot!@@"
<<case "sissy" "cute" "sissycute">> /* not including collar */
<<if setup.getItemFromType("choker") == "choker_sissy">>
"@@.npc_technician;Wow! That collar! I had no idea you were such a sissy slut! It's weird; on the one hand, I can't believe it and yet I feel like I always kind of knew...@@"
<<else>>
"@@.npc_technician;Wow, that sissy ensemble, you were totally born to wear that, you look amazingly adorable!@@"
<</if>>
<<case "modest">>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Wow, woman's underwear? And you've matched it and everything, how long have you been doing this? You totally have to come out with me in public like that sometime!@@"
<<else>>
"@@.npc_technician;Yup, it's official; you should never wear anything but woman's underwear, you are just too hawt for anything else!@@"
<</if>>
<<case "fetish">>
"@@.npc_technician;Oooh! I love that kinky underwear, so much sexier than most 'nilla stuff...@@"
<<case "male">>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Male underwear, ho-hum. I gotta tell you - female options are SOOOO much better!@@"
<<else>>
"@@.npc_technician;Male underwear? Ew, and I KNOW you can do better...@@"
<</if>>
<<case "none">>
"@@.npc_technician;Not sleeping in underwear? Hmm, interesting choice... or did you just want to take the opportunity to flash me?@@"
<<default>>
ERROR, missing description for: <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<br><br>
<<if setup.getItemFromType("shoes") == "bed_heels">>
"@@.npc_technician;
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
Woah, you're wearing woman's shoes to bed? I never would have guessed; tho, seriously...
<</if>>
What the fuck are those heels!? I die in anything over, like, 5cm! Those things look like they should be a war-crime!@@"<br>
<br>
"@@.npc_technician;Fuck... now I kind of want to see them in action, can you even walk in them? Like, there's no way that's possible, right?@@"<br>
<br>
<</if>>
<<if setup.getItemFromType("cage") != "">>
"@@.npc_technician;Omigod, a chastity cage? I tried one of those once, before I got the hang of tucking; I thought it was kind of annoying but on you... Idunno, on you it just looks right somehow.@@"<br>
<br>
<</if>>
<<if setup.getItemFromType("plug") != "">>
"@@.npc_technician;I can't believe you're sending me pictures of your cute ass, and is that a plug? Oh man, I'm getting hard just thinking about it! Is it a big plug, or do you still have a tight little hole that needs breaking in?@@"
<br><br>
<</if>>
<<if !setup.isBodySlotVisible('penis')>>
"@@.npc_technician;Heh, you know if it wasn't for recognizing your face I could totally mistake you for a natural girl right now! I love it!@@"<br>
<br>
<</if>>
<<switch $scene.approval>>
<<case 9 8 7 6>> /* 4+ only possible with bold or full sissy */
<<if $scene.underwearStyle == "bold">>
"@@.npc_technician;Wow, I'm still staring at this pic, you look totally ready to do a scene; like your gf just came home to find you playing like that and you just take charge and force her to serve you and <<if setup.getItemFromType("cage") != "">>lick your cage<<else>>ravage her<</if>> and you make her your slave...@@"
<<elseif $scene.underwearStyle == "sissy">>
"@@.npc_technician;Like wow, you look like you belong in some sissy porno! Like you're the end product after hours of forced feminisation and then you get rewarded with a fat cock in your mouth and like the biggest facial ever...@@"
<<else>>
"@@.npc_technician;Mmm, you know, all in all you are just looking sooo cute...@@"
<</if>>
<br><br>
"@@.npc_technician;Fuck, you totally owe me for making me ruin my panties!@@"
<<case 5 4 3>>
"@@.npc_technician;So yea, I am totally saving this picture for the old spank bank. Dang but I wish I knew all this about you back when we worked together and you weren't stuck way up on the upper levels all day. You're like a princess in a tower up there!@@"
<<case 2 1>>
"@@.npc_technician;I dunno why I was expecting something more but like... you used to just dress so dull I always felt like you had some sort of kinky secret life, guess not?@@"
<<case 0>> /* not possible due to male pyjamas hiding penis */
<<default>>
ERROR approval out of range: <<=$scene.approval>>
<</switch>>
<</if>>
<br><br>
<<printBedPhotoTexting $phoneList $calledTonight>><br>
[<<moveTo room_dreams "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to exgirlfriend
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $calledTonight.pushUnique('npc_exgirlfriend')>>
<<set $npc_exgirlfriend.flags.times_sexted += 1>>
<<if $scene.random>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<set $npc_exgirlfriend.flags.times_sexted_accidentally += 1>>
<<set $player.flags.accidental_sext = true>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
'theme_psychiatrist_other_header'
>>
<</if>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
/* TODOfuture - if she warms back up to you this obviously needs additional options */
<<if $scene.random>>
<<if $npc_exgirlfriend.flags.times_sexted == 1>>
<<printThought $player "Oh crap, I just sent those pictures to my ex!">><br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
You should be embarrassed, and yet more than that you are aroused at the thought of your old flame looking at you in all your "evolved" glory.
<<elseif setup.getTotalValue("humiliation") > 5>>
You are both embarrassed and aroused in equal measure. Technically she's seen you naked, but that was when you were dating, and never anything like this...
<<else>>
You are filled with dread, what if she freaks out? Or sends her new boyfriend to kick your ass?
<</if>>
<br><br>
At this point all you can do is wait for her reaction.
<<else>>
<<printThought $player "Oh crap, I just sent another sext to my ex! Why do I keep doing this?">>
<</if>>
<br><br>
<</if>>
"@@.npc_exgirlfriend;What the hell? I know you're still getting over our breakup, but it's over.@@"<br>
<br>
<<if $scene.panties == "cotton_panties" || $scene.bra == "cotton_bra">>
"@@.npc_exgirlfriend;Wait, are those my old underthings?! You said you donated them! I don't care if we broke up, you shouldn't lie to me! Especially about something like that, I mean why didn't you say you were into crossdressing back when we were together?@@"
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'female'>>
"@@.npc_exgirlfriend;I mean you look cute; maybe if you'd told me about your fetishes and we'd experimented when we were together we might have worked something out, but it's too late now for anything like that.@@"
<<elseif setup.isBodySlotVisible('penis')>>
"@@.npc_exgirlfriend;Seriously, a dick pic? I guess grats on getting over the shame about your size, but I'm not really interested in seeing it anymore.@@"
<<elseif setup.getItemFromType("plug") != "">>
"@@.npc_exgirlfriend;Is that a plug in your ass? Is this because I told you I was doing anal when I cheated on you? I wish you'd been this adventurous when we were together, but it's too late for that now.@@"
<<elseif setup.getItemFromType("cage") != "">>
"@@.npc_exgirlfriend;What the heck? Is that... your penis inside that thing? It looks so weird!, is it painful?@@"<br>
<br>
A couple moments pass.<br>
<br>
"@@.npc_exgirlfriend;Shit, ignore my last message, I'm a little drunk. Don't send me stuff like this, we're over.@@"
<<elseif setup.checkNaked()>>
"@@.npc_exgirlfriend;What the heck? I really hope this was a mistext, good luck with your new beau, leave me alone.@@"
<<else>>
"@@.npc_exgirlfriend;Why are you sending me pictures like that? Are you drunk or something?@@"
<</if>>
<br><br>
A moment later you get a follow-up text<br>
<br>
<<if _TODOfuture>> /% $gym.classes.yoga.level_fem > 0 %/
"@@.npc_yogateacher;Hey, mon this is <<=setup.getNpcName('npc_yogateacher', 'first')>> is that really you? You shoulda told me in class, mon, you beautiful!@@"
<<else>>
"@@.npc_yogateacher;Hey, mon this is <<=setup.getNpcName('npc_yogateacher', 'first')>> is that really you? You lookin' beautiful, like a proper girl!@@"
<</if>>
<br><br>
<<printThought $player "Wait... is he coming onto me?">><br>
<br>
"@@.npc_exgirlfriend;Sorry about that, it's me again, <<=setup.getNpcName('npc_yogateacher', 'first')>> is a bit... yea, but seriously, don't send me stuff like this again, I'm deleting it; it's over between us, move on with your life.@@"<br>
<br>
<<printBedPhotoTexting $phoneList $calledTonight>><br>
[<<moveTo "room_dreams" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to landlord
#status: STUB 0.5.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $calledTonight.pushUnique('npc_landlord')>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
You send an image to <<=setup.getNpcName('npc_landlord', 'first')>> but it bounces, apparently his phone is so old it doesn't accept attachments? <br>
<<printThought $player "Wow, I didn't think you could even buy a phone with that few features...">><br>
<br>
<<printBedPhotoTexting $phoneList $calledTonight>> <br>
[<<moveTo "room_dreams" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to barkeeper
#status: STUB 0.5.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $calledTonight.pushUnique('npc_barkeeper')>>
<<set $npc_barkeeper.flags.times_sexted += 1>>
<<if $scene.random>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<set $npc_barkeeper.flags.times_sexted_accidentally += 1>>
<<set $player.flags.accidental_sext = true>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
'theme_psychiatrist_other_header'
>>
<</if>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
/%TODOfuture can't even get her # until prostitution goes in.%/
<<printBedPhotoTexting $phoneList $calledTonight>><br>
[<<moveTo "room_dreams" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to barista
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $calledTonight.pushUnique('npc_barista')>>
<<set $npc_barista.flags.times_sexted += 1>>
<<if $scene.random>>
<<applyExperience 'humiliation' 8 'almost' $SEEN_FRIEND>>
<<set $npc_barista.flags.times_sexted_accidentally += 1>>
<<set $player.flags.accidental_sext = true>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
'theme_psychiatrist_other_header'
>>
<</if>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
Your phone suddenly explodes with a flurry of from your "friend" from the office coffeeshop.<br>
<br>
<<if $scene.random>>
<<if $npc_barista.flags.times_sexted_accidentally == 1>>
<<printThought $player "Oh shit, I accidentally sexted that slutty girl at work!">><br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
Eclipsing your surprise is your arousal - you wonder if <<=setup.getNpcName('npc_barista', 'first')>> might forward your sext to someone else? Given how ditzy and perverted she is, maybe she already has? The thought only turns you on more as start reading her responses.
<<elseif setup.getTotalValue("humiliation") >= 5>>
From interacting with her <<=setup.getNpcName('npc_barista', 'first')>> is likely the last person to get offended by a sext, hell, she's ditzy enough she might not even remember who you are.... You're still a bit nervous though as you move to the first message in her reply chain.
<<else>>
Even though she has arguably done more embarrassing things in your presence you are still mortified at what you have done, even as you find yourself unable to resist reading her replies.
<</if>>
<<else>>
<<printThought $player "Shit, I sent it to <<=setup.getNpcName('npc_barista', 'first')>> by accident, again!">><br>
<br>
<<printThought $player "How does this keep happening, am I becoming as ditzy as <<=setup.getNpcName('npc_barista', 'first')>>? <<if setup.getTotalValue('bimbofication') >= 10>>That would be nice, she always seems so happy and blank!<</if>>">>
<</if>>
<br><br>
<</if>>
<<if setup.getItemFromType("shirt") == "sexy_nightie">>
<<if $fetish.daddy>>
"@@.npc_barista;Aww, that's such a cute nightie! I had one like that, but then daddy ripped it off. It was ok though, he came on my tits a few minutes later to make up for it!@@"
<<else>>
"@@.npc_barista;Aww, that's such a cute nightie! I used to have one like that, but it got ripped off "in the throws of passion..." that sort of thing is fun sometimes!@@"
<</if>>
<<elseif setup.getItemFromType("shirt") == "pyjama">>
"@@.npc_barista;Like, what are you wearing that for? That sort of clothing is for MEN, why would you dress like some stupid boy when being a cutie sissy is, like, so much better?@@"
<<elseif setup.checkNaked()>>
"@@.npc_barista;Oooo, naked, I love sleeping naked, that way there's nothing in the way if someone wants to take advantage of me in the middle of the night!@@"
<<else>>
<<switch $scene.underwearStyle>>
<<case "female">>
"@@.npc_barista;Like, bleh, you need to better match your underwear. Guys say they don't care but they totally get harder when you put the extra effort in!@@"
<<case "bold">>
"@@.npc_barista;Ooooh, you look so dommy! I've never submitted to a sissy before, I bet that'd be fun! Would you spank me?@@"
<<case "sissy" "cute" "sissycute">>
"@@.npc_barista;Yay sissy! I love your underwear!@@"
<br><br>
<<if setup.getItemFromType("choker") == "choker_sissy">>
"@@.npc_barista;Like, ohmygawd that choker!, I have one kind of like that, only it's made of leather and it says BIMBO, we should go out together! I bet we'd get, like so much cock!@@"
<</if>>
<<case "modest">>
"@@.npc_barista;Cute undies, if I was a man I'd totally, like, rip them off and ravish you! Would you do the same for me?@@"
<<case "fetish">>
"@@.npc_barista;Oooh, that's some kinky underwear, yum!@@"
<<case "male">>
"@@.npc_barista;Male underwear? Are those like, your boyfriend's, or something? I've tried that but like, ew; girly underwear is sooo much more comfortable, or even better; going without, I love being easy access!@@"
<<case "none">>
"@@.npc_barista;Sleeping without underwear? I've been there! Usually because it got lost earlier in the evening...@@"
<<default>>
ERROR, missing description for: <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<br><br>
<<if setup.getItemFromType("shoes") == "bed_heels">>
"@@.npc_barista;Bed heels! Those look even steeper than the ones I wear, you totally have to tell me where you bought them!@@"<br>
<br>
<</if>>
<<if setup.getItemFromType("cage") != "">>
"@@.npc_barista;Ugh, normally chastity devices are just, like, the WORST but with your little <<getWordPenis $player>> I think it kind of works. Getting fucked is the better side of things anyway, so maybe for you it's good to keep you from getting distracted from the important things, stuffing a cock in each of your slut holes!@@"<br>
<br>
<</if>>
<<if setup.getItemFromType("plug") != "">>
"@@.npc_barista;That plug looks so great, I used to have one just like it! It's too bad you can't wear two at a time like I can, I can't imagine how much it would suck to only have two holes for men to use instead of three... that's like, barely half as much cock!@@"
<<elseif setup.isBodySlotVisible('penis')>>
"@@.npc_barista;Aww, your penis is, like, gone, does that mean you're a girl now?@@"
<</if>>
<br><br>
"@@.npc_barista;Sorry girlfriend, the guys just got here and I'm hungry for some cock, see you at work, cum-kisses!@@"<br>
<br>
The flurry of texts finally stops. You wait in case she sends anything more but it seems your slutty friend has moved on to her next distraction.<br>
<br>
<<printBedPhotoTexting $phoneList $calledTonight>><br>
[<<moveTo "room_dreams" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to admin
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $calledTonight.pushUnique('npc_admin')>>
<<set $npc_admin.flags.times_sexted += 1>>
<<if $scene.random>>
<<applyExperience 'bimbofication' 12 'very' $SEEN_FRIEND>>
<<set $npc_admin.flags.times_sexted_accidentally += 1>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
'theme_psychiatrist_other_header'
>>
<</if>>
<</if>>
<<if $npc_admin.stage == 1>>
<<if $npc_admin.flags.flirted>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_admin' 1>>
<<applyExperience 'humiliation' 8 'slightly' $SEEN_FRIEND>>
<</if>>
<<else>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' $npc_admin.penis_size 'little' $SEEN_FRIEND>>
<<case 'boyfriend'>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyExperience 'penis' $npc_admin.penis_size 'little' $SEEN_FRIEND>>
<<case 'friend'>>
<<incrementEmotion 'anger' 'npc_admin' 1>>
<<applyExperience 'humiliation' 8 'slightly' $SEEN_FRIEND>>
<</switch>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.random>>
<<if $npc_admin.flags.times_sexted_accidentally == 1>>
Before you even read the message you notice the wrong icon - you sent your sext to <<=setup.getNpcName('npc_admin', 'first')>> by mistake!!<br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
You should be embarrassed, and you are... and yet also highly aroused at the thought of your "bro" seeing you in all your debauched glory.
<<elseif etup.getTotalValue("humiliation") >= 5>>
<<printThought $player "What have I done?">><br>
<br>
Despite how well <<=setup.getNpcName('npc_admin', 'first')>> has been taking your changes you feel like you may have just crossed a line. Nervously you read his reply.
<<else>>
You can't believe you've sent one of your oldest friends such a message, hopefully he'll think it was a mistake?
<</if>>
<br><br>
<<else>>
Reading the incoming name on the text you realise you have once again fat-fingered your sext.<br>
<br>
<<printThought $player "Why do I keep doing this? Do I want to drive him away?<<if setup.getTotalValue('feminized') >= 10>> or do I think showing him who I really am will take our relationship in a new direction?<</if>>">>
<</if>>
<br><br>
<</if>>
<<if $npc_admin.stage == 1>>
<<if $npc_admin.flags.flirted>>
There's a long wait before you get a text back.<br>
<br>
"@@.npc_admin;Hey, so... was that meant for me? I'm just gonna go ahead and pretend you didn't just send me a cute selfie, aight?@@"<br>
<br>
<<printThought $player "Did he just... call me cute?">>
<<else>>
"@@.npc_admin;Yo, why you sending me stuff like this? I hope you just messed up and this was meant for a new honey, in which case... tell me about her! but if this is something else, like... a call for help? I know you've been "figuring things out" since the breakup, but if anyone is forcing you to do these things.... I'm deleting this, but remember you can always come to me for assistance.@@"
<</if>>
<<else>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
"@@.npc_admin;Hey, if it isn't my favorite cute girl, what sluttyness are you gettin' up to before be?... Damn girl, you're lookin' FINE, here I guess I oughta return the favor, eh?@@"<br>
<br>
A few moments pass and you are treated to a big, beautiful picture of his cock. It looks smaller in his hand than it would between your daintier fingers but it is still gorgeously perfect. There's an arrow drawn pointing towards the tip with the text "wish you were here" next to it.<br>
<br>
"@@.npc_admin;Aight, well I'll catch you later, have a good night, slut!@@"
<<case 'boyfriend'>>
"@@.npc_admin;Aww, a pre-bed selfie? How sweet, lemme return the favor.@@"<br>
<br>
A few moments pass and you are treated to a big, beautiful picture of his cock. It looks smaller in his hand than it would between your daintier fingers but it is still gorgeously perfect.
<<case 'friend'>>
"@@.npc_admin;Hey, so... we talked about this, right? I just don't see you that way and I'd appreciate it if you don't send me any sexy selfies, right?@@"
<<default>>
ERROR: unexpected scene.date.verdict <<=$scene.date.verdict>>
<</switch>>
<</if>>
<br><br>
<<printBedPhotoTexting $phoneList $calledTonight>><br>
[<<moveTo "room_dreams" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: fail to text manager a bed selfie
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $npc_manager.flags.sent_bed_selfie>>
<<initRoom>>
<<moveTo $beforetasklocation>>
<</if>>
<<if $roomchange==true>>
<<if !setup.checkItemOwned("bed_heels")>>
<<set $npc_manager.flags.uniform_upgrade.bed_heel_punish = true>>
<</if>>
<<if setup.getItemFromType("shoes") == "bed_heels">>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
/* note: that npc_manager accidentally mentions things she could only know if she could track you and see you in your apartment. Foreshadowing! dun dun duuuun!*/
<<if $beforetasklocation == "room_dreams" || $beforetasklocation == "room_sleepless" || $beforetasklocation == "room_wake_up">>
You are awoken by a text from <<=setup.getNpcName('npc_manager', 'formal')>>.
<<else>>
You get a text from from <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>
<br><br>
"@@.npc_manager;What is going on, <<=$player.first_name>>? I told you to send me a picture of you wearing bed heels before you went to sleep. Where is it?@@"<br>
<br>
<<if $beforetasklocation == "room_dreams" || $beforetasklocation == "room_sleepless" || $beforetasklocation == "room_wake_up">>
Before you can react a second text comes in.<br>
<br>
<<if setup.getItemFromType("shoes") == "bed_heels">>
"@@.npc_manager;How brainless are you? I said to put on your bed heels and send me a picture. Get that camera out and follow ALL of my instructions, no picture means no credit!@@"<br>
<br>
[<<moveTo "event_bedroom_bed_heels" "Take a picture in your bed heels and send it to her." 1 "<<set $currentcall = false>>">>]
<<elseif setup.checkItemOwned("bed_heels")>>
"@@.npc_manager;I told you to buy bed heels, wear them to bed and send me a picture!, Did you think I just wanted to to go shopping?@@"<br>
<br>
[<<moveTo event_bedroom_bed_heels "Put on the bed heels and take the picture she requested." 1 "<<set $currentcall = false>>">>]
<<else>>
"@@.npc_manager;I told you to buy a pair of bed heels and send me a picture before you went to sleep! I am very disappointed in your complete failure to follow instructions.@@"<br>
<br>
<<printThought $player "How did she guess I screwed up so bad?">><br>
<br>
Your blood runs cold; you totally forgot to inquire at the shoe store as <<=setup.getNpcName('npc_manager', 'formal')>> instructed.<br>
<br>
[<<moveTo event_bed_heels_photo_excuse "Beg her forgiveness." 1>>]<br>
[<<moveTo $beforetasklocation "Pretend you didn't get her message and leave things for tomorrow." 1 "<<set $currentcall = false>>">>]
<</if>>
<<else>>
"@@.npc_manager;What are you doing <<if setup.inPassageTag($beforetasklocation,'home')>>up<<else>>out<</if>> this late? You should be in bed, with me looking at a picture of your cute feet all stretched out in your new heels by now!@@"<br>
<br>
<<if setup.getItemFromType("shoes") == "bed_heels">>
You consider just taking the photo now, since you're already wearing the requisite footwear You decide that your manager would probably still be upset with you for not being home.<br>
<br>
<<if setup.inPassageTag($beforetasklocation,'home')>>
[<<moveTo "event_bedroom_bed_heels" "Tell her you were just about to turn in." 60>>]
<<else>>
[<<moveTo "event_bedroom_bed_heels" "Tell her you're on the way and hurry back to your bedroom to fulfill the assignment." 1200>>]
<</if>>
<<elseif setup.checkItemOwned("bed_heels")>>
[<<moveTo "event_bedroom_bed_heels" "Text her back that you're on your way to fulfill the assignment to send her a bed selfie." 60>>]
<<else>>
You curse yourself for forgetting to inquire at the shoe store, long closed at this hour.<br>
<br>
[<<moveTo "event_bed_heels_photo_excuse" "Run home and mash out a message begging her forgiveness." 60>>]
<</if>>
<br>
[<<moveTo $beforetasklocation "Pretend you didn't get her message and leave things for tomorrow." 1 "<<set $currentcall = false>>">>]
<</if>>
</div>/*#
#desc: try to make an excuse for failing to sent a bed selfie to manager after not buying bed heels
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $roomchange==true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You try to beg for forgiveness but there really isn't any excuse for your neglectful behaviour. Driving home your failure <<=setup.getNpcName('npc_manager', 'formal')>> doesn't even text you back, though your phone informs you that she did read your message.<br>
<br>
<<printThought $player "Oh shit, I really should have gone to the shoe store...">><br>
<br>
[<<moveTo "room_dreams" "Fearful of what tomorrow will bring you don't even remember to change, falling into bed still clothed." 60>>]
</div>/*#
#desc: first bed heels photoshoot - get changed and stand up
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<addItem 'bed_heels_box'>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<addItem 'black_ballet_boots'>>
<<swapItem $player $now "black_ballet_boots">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_10'
5
'psychiatrist_high_heel_video_shoot_1'
false
'theme_psychiatrist_other_header'
>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
You shake on the deal and the shop owner waves another employee over to work the counter. The contrast between the pair of them is somewhat jarring; the shop owner a buxom shortstack barely a head shorter than you even in her monstrous heels, while her counterpart towers over you even in booted flats, an Amazonian giantess who looks like she could probably give <<=setup.getNpcName('npc_admin', 'first')>> a run for it at the gym.<br>
<br>
"@@.npc_shoestore_manager;Great, come with me to the back and we can do the "before" photoshoot.@@"<br>
<br>
Following her to the back, still gawking at her ease in the stilt-like platforms, you find a small photo studio. From the look of things the store must do its own shoots with what you judge to be a pretty professional setup tucked away. Walking over to one of many towering stacks of shoe boxes she grabs a dark black one seemingly at random and hands it to you.<br>
<br>
"@@.npc_shoestore_manager;Here, get changed into these while I get the lights adjusted and everything ready. Don't walk yet! I want your first cute steps to be on camera!@@"<br>
<br>
She zips off before you can respond, busying herself with various tech.<br>
<br>
Spotting a chair at the edge of what you estimate to be the filming area you walk over and sit down before taking the lid off the shoebox.<br>
<br>
Once again your jaw drops in shock at the <<if setup.getTotalValue("feminization") >= 12>>genius<<else>>fiendishness<</if>> of woman's shoe designers. The boots before you dwarf even the bed heels! They will literally force you to walk on nothing but the tip of your pointed toes and the narrow dagger-like heel.<br>
<br>
"@@.npc_shoestore_manager;Come on, hurry up and slip into those ballet boots so we can get started!@@"<br>
<br>
Now knowing the term for this manner of extreme footwear things make a little more sense as you recognise that the position they will force you into is, in fact, the ballet "en pointe." <br>
<br>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("foot") > 10>>Excitedly<<else>>Reluctantly<</if>> you pull off your current footwear and start lacing the ballet boots up your calves. Made of sturdy and elegant black leather they are actually more comfortable than you might have imagined - at least while you're sitting down without putting any weight on. Carefully you tighten them as much as you can all the way up your calf before knotting the laces just below your knee. It takes a bit of time but you figure that you will probably be grateful for the support.<br>
<br>
Glancing up from her camera as you finish the second boot the clerk nods.<br>
<br>
"@@.npc_shoestore_manager;Great, you're ready. Now when I give the signal stand up and walk across the room. Don't try to look at the camera or anything, just... casual.@@"<br>
<br>
Walking seems like a stretch in these extreme footwear but you nod, waiting for her signal before attempting to rise to your feet.<br>
<br>
"Standing" is perhaps generous as it takes you several seconds just to wobble into something resembling vertical. Your legs shake as you follow her direction to somehow balance without leaning against anything.<br>
<br>
<<printThought $player "My toes! This hurts so much!">><br>
<br>
"@@.npc_shoestore_manager;Brave girl, you can do it! Alright, now walk across the room, then come back and sit down and we'll call it good.@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_2" "Continue." 300>>]
</div>/*#
#desc: first bed heels photoshoot - hobble around for the camera in ballet boots
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4 5>>
<<set _nextDate to setup.setNextDate($now, 7+6-$now.getUTCDay(), 16, 0)>>
<<case 6>>
<<set _nextDate to setup.setNextDate($now, 8, 16, 0)>>
<</switch>>
<<addTaskById 'bed_heels_photoshoot' _nextDate>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
The previously small room suddenly feels like a massive stadium but you made an agreement to do this and don't see much alternative but to push through.<br>
<br>
Just raising one foot off the ground almost has you fall the other direction but you manage to stab your pointed foot back down a few inches in front of where you started and then stagger another couple inches as you stabilize.<br>
<br>
<<printThought $player "Owe, owe, now my calves ache!">><br>
<br>
"@@.npc_shoestore_manager;That's good, keep it up!@@"<br>
<br>
You resist the urge to glare daggers at her for inflicting these infernal heels on you, instead focusing on the ground in front of you as you try to take a step and then another.<br>
<br>
What you're doing could hardly be mistaken for graceful, hell, it barely passes for walking. Your knees are deeply bent and your arms wide for balance but somehow you make steady progress. Focused intently on balancing and staring at the six inches of floor in front you almost bang into the wall.<br>
<br>
"@@.npc_shoestore_manager;Watch it there, you're doing good, halfway! I know it's tough but that's the point, believe me that as hard as it is now you will be AMAZED at the difference a week sleeping in those bed shoes will make. Now just turn around, come back and sit down.@@"<br>
<br>
You are only half paying attention as you reach out your hand to steady yourself. The wall is suddenly the best friend you've ever had. You are on fire from the hips down but you brace yourself against the wall as you make a slow rotation to get back facing the way you came.<br>
<br>
Taking a deep breath you push off the wall for a boost. This proves a mistake as you take two too-quick steps, wobble, and then, finally, fall, barely throwing your arms out to soften the impact.<br>
<br>
Almost as if to mock your own difficulties <<=setup.getNpcName('npc_shoestore_manager', 'first')>> sprints to your side, looking down with concern. "@@.npc_shoestore_manager;You ok?@@" You nod as you push yourself up onto hands and knees. "@@.npc_shoestore_manager;Great; that's fine, I know it hurts but it'll only make your transformation more impressive at the end, now get back up and keep going.@@"<br>
<br>
On hands and knees you look across at the chair, an oasis in the far distance that you hope isn't a mirage. Gritting your teeth you almost will yourself back to your feet. Moving in fits and jerks you half fall half stumble the rest of the way forward before practically diving past the final steps to land in the chair.<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
<<printThought $player "Owww, my legs, sure they may be gorgeous but why would anyone want to wear those things?">>
<<else>>
<<printThought $player "Owww, my legs, why would anyone choose to wear those things?">>
<</if>>
<br><br>
Draped over the chair you try to catch your breath as the clerk wraps things up with the camera and then walks over.<br>
<br>
"@@.npc_shoestore_manager;Come on, baby, it's not THAT bad.@@"<br>
<br>
You'd like to call her out on that, but with the ease she seems to manage her sky-scraper heels you doubt she'd do anything but laugh at you.<br>
<br>
"@@.npc_shoestore_manager;Now get changed back so I can return to minding the store.@@"<br>
<br>
You nod weakly and start to unlace the ballet boots, only for the clerk to snort and take over, her nimble fingers practically flying through the laces before sliding your own footwear back on with no less skill or efficiency.<br>
<br>
The clerk hands you the pink package containing the bed heels.<br>
<br>
"@@.npc_shoestore_manager;Alright, I will see you a week from <<if $now.getUTCDay() == 6>>Sunday<<else>>today<</if>>. Remember, EVERY NIGHT; don't screw it up.@@"<br>
<br>
You promise to do as instructed. <<if setup.getTotalValue("submission") >= 10>>After all, that's what <<=setup.getNpcName('npc_manager', 'formal')>> seems to want from you, anyway.<</if>><br>
<br>
The Amazonian assistant is summoned and the strong woman lifts you out of the chair with one hand and places you back on your feet. You give the store owner your contact information and promise to come back for the "after" photoshoot. Thanking you she sends you on your way.<br>
<br>
Yet to fully recover from your ordeal your calves and toes ache even back in your "normal" footwear.<br>
<br>
[<<moveTo "room_mall" "Hobble back into the mall." 600 "<<swapItem $player $now $scene.shoes>><<deleteItem $player $now 'black_ballet_boots'>>">>]
</div>/*#
#desc: call if fail to show up to bed heel 2nd photoshoot
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $roomchange == true>>
<<set _nextDate to setup.changeDate($now, 'hours', 1)>>
<<restartTask 'bed_heels_photoshoot' _nextDate>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;Hey, this is <<=setup.getNpcName('npc_shoestore_manager', 'first')>>, the proprietor of <<printShopName 'mall_shoe_store'>>. You were going to come in for the "after" photoshoot today, you have been practicing as instructed, right?@@"<br>
<br>
You affirm that you have been, not that you had much choice with <<=setup.getNpcName('npc_manager', 'formal')>> insisting on the nightly texts.<br>
<br>
"@@.npc_shoestore_manager;We are about to close up shop, but I can stick around a bit if you can hurry in now.@@"<br>
<br>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2" "Say you're on your way." 600>>]
<<else>>
<<printThought $player "Crap, I need to go in but I can't go out like this!">><br>
<br>
[<<moveTo $beforetasklocation "Say you'll be there soon." 600>>]
<</if>>
</div>/*#
#desc: second bed heels photoshoot intro
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<completeTask 'bed_heels_photoshoot' $now true>>
<<set $scene.first=true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
Once again you are in the back room of <<printShopName 'mall_shoe_store'>> for a video shoot. This time it looks like everything was already setup beforehand, the impossibly-steep ballet boots prominently laid out next to your chair.<br>
<br>
"@@.npc_shoestore_manager;Lemme just double check everything while you slip on that heels. I can't wait to see how you've developed!@@"<br>
<br>
With a smaller camera in hand she stands over you patiently.<br>
<br>
"@@.npc_shoestore_manager;Go ahead and ignore me, I just want to get some filler shots of you putting them on.@@"<br>
<br>
Even though you can feel the change the bed heels have wrought on your feet and ankles the ballet boots are still the scariest footwear you've seen to date. Taking a deep breath you start lacing them up.<br>
<br>
The sturdy leather of the boots closing around your calves you can already feel the difference from the last time. Your toes feel significantly less pinched and the en pointe angle feels somehow more natural. The whole time the clerk is circling around you with the camera. Wearing similarly tall, if not taller, platforms as always she moves easily, looking to have a bit of flair with the camera as she pans around to show all angles and occasionally zooming erotically close.<br>
<br>
After a final pass of the fully laced boots the clerk stows the portable and moves to the tripod-mounted camera she used the last time.<br>
<br>
"@@.npc_shoestore_manager;Alright, same as before. Stand up, walk across the room, then walk back and sit down. Let's see what a week of training has done for you!@@"<br>
<br>
<<printThought $player "Here goes nothing">><br>
<br>
Pushing yourself to your feet you can already feel the difference, able to get vertical on the first try whereas before you struggled just to stand at all.<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2_2" "Continue." 300>>]
</div>/*#
#desc: second bed heels photoshoot intro (alternate where you paid full price)
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $scene.first=false>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
You are lead into the back room of <<printShopName 'mall_shoe_store'>> where you find a small video studio. Digging through a stack of shoeboxes she presents you with a pair of impossibly-steep ballet boots.<br>
<br>
"@@.npc_shoestore_manager;Lemme just double check everything while you slip on that heels. I can't wait to see how you walk in them!@@"<br>
<br>
With a smaller camera in hand she stands over you patiently.<br>
<br>
"@@.npc_shoestore_manager;Go ahead and ignore me, I just want to get some filler shots of you putting them on.@@"<br>
<br>
Even though you can feel the change the bed heels have wrought on your feet and ankles the ballet boots are still intimidatingly steep. Taking a deep breath you start lacing them up.<br>
<br>
The sturdy leather of the boots close around your calves and force your feet into a full en pointe angle that, somehow, feels strangely natural. The whole time the clerk is circling around you with the camera. Wearing similarly tall, if not taller, platforms as always she moves easily, looking to have a bit of flair with the camera as she pans around to show all angles and occasionally zooming erotically close.<br>
<br>
After a final pass of the fully laced boots the clerk stows the portable and moves to the tripod-mounted camera she used the last time.<br>
<br>
"@@.npc_shoestore_manager;Alright, stand up, walk across the room, then walk back and sit down. Let's see your skills!@@"<br>
<br>
<<printThought $player "Here goes nothing">><br>
<br>
Pushing yourself to your feet you take a moment to find your balance.<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2_2" "Continue." 300>>]
</div>/*#
#desc: second bed heels photoshoot - stride more skillfully in ballet boots
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_11'
5
'psychiatrist_high_heel_video_shoot_2'
false
'theme_psychiatrist_other_header'
>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("heels") >= setup.getItemObj('black_ballet_boots').heels.difficulty>>
Perched on the heels you stand tall, proud, and perfectly balanced, rising with grace and poise from your seat.<br>
<br>
The clerk flashes a thumbs up, clearly impressed and you start walking, your arms hanging natural as your hips sway seductively with each smooth, short step.<br>
<br>
<<if $scene.first>>
<<printThought $player "Wow, how was this so hard before? Not it's like I'm walking in the clouds...">>
<<else>>
<<printThought $player "Wow, my feet are basically en pointe but this isn't bad at all!">>
<</if>>
<br><br>
Before you know it you have reached the far wall. Winking at the camera you give a twirling flourish before striding back. Midway across the floor you show off with a little leap, your legs shooting out forward and back in close to a full grand ecart jump splits that rewards you with the clerk audibly gasping in surprise.<br>
<br>
Back on the ground you skip a bit faster for the final few steps before spinning in place and delicately sitting down on the chair; one leg crossed over the other with your hands demurely on your knees as you flutter your eyes in the direction of the camera.<br>
<br>
<<if $scene.first>>
"@@.npc_shoestore_manager;Woah, I mean, I knew you were going to improve but this... You are like some kind of savant! If I hadn't filmed it I don't even know if I'd believe it had only been a week!@@"
<<else>>
"@@.npc_shoestore_manager;You. Are. Amazing! This is why every woman needs a pair of bed heels, you and me, sister, we're going to change the world!@@"
<</if>>
<br><br>
<<if setup.getTotalValue("feminization") >= 12>>
The compliment fills you with <<if setup.getTotalValue("submission") >= 10>>submissive <</if>>pleasure and you smile at the clerk and give a little seated bow.
<<else>>
You're not sure how to feel about your newfound mastery of such a feminine skill, so you just smile politely back at the clerk.
<</if>>
<br><br>
"@@.npc_shoestore_manager;So watching that frankly amazing display I had an idea for another shoot that would REALLY impress some of my customers, if you'd be up for it?@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_3" "Of course!" 300>>]<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_decline" "Maybe some other time." 300>>]
<<elseif setup.getTotalValue("heels") >= 9>>
Now, so long as you concentrate, you can stand almost straight up, your knees only slightly bent as your arms are poised slightly away from your side for added balance.<br>
<br>
The clerk nods and you start walking. It isn't exactly comfortable, and you have to focus hard to keep your weight even between your toes and the slender heels, but it is a world of improvement over your first time but you do manage it more or less.<br>
<br>
Progressing across the room your gait is a bit stiff and not always even, but quite serviceable considering the extreme circumstances and it isn't long before you reach the far wall. Reflexively you put your hand out for stability, bracing yourself partially as you mince in a little circle to turn back towards the chair.<br>
<br>
"@@.npc_shoestore_manager;Doing great, halfway there!@@"<br>
<br>
Even though your calves and toes are starting to hurt you are emboldened by your success, doing your best to walk a little straighter and let your hands sway naturally at your sides on the return trip rather than extend them stiffly out for balance.<br>
<br>
Reaching the chair you are definitely looking forward to being off your toes but you have the poise to turn and lower yourself gently<<if $scene.first>> rather than flop down like you did last time<</if>>. You look towards the camera as the clerk gives you a thumbs up and cuts the tape.<br>
<br>
"@@.npc_shoestore_manager;Not bad, you aren't perfect but you have to agree that for a week the transformation is nearly miraculous. Anyway, I know I promised you could do the shoot anonymously, but I'd like to remind you of the other opportunity. If you are willing to record a short testimonial video and let me use your name I can give you a little cash bonus on top of the free shoes that were part of our original agreement.@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_1" "Say sure." 300>>]<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_testimonial_no" "Decline." 300>>]
<<else>>
ERROR, should not happen! <<=setup.getTotalValue("heels")>> lower than expected!
<</if>>
</div>/*#
#desc: decline the option of doing a 3rd ballet heel photoshoot
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;That is too bad. Well, feel free to come back if you change your mind and have more time later for a third shoot, I can't promise it'll be easy but I just HAVE to see you show off those skills some more!@@"<br>
<br>
"@@.npc_shoestore_manager;Anyway, I know I promised you could do the shoot anonymously, but I would like to throw out another opportunity. If you are willing to record a short testimonial video and let me use your name I can give you a little cash bonus on top of the free shoes that were part of our original agreement.@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_1" "Say sure." 60>>]<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_testimonial_no" "Decline." 60>>]
</div>/*#
#desc: 3rd ballet photoshoot, walk around in armbinder
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_13'
5
'psychiatrist_high_heel_video_shoot_3'
false
'theme_psychiatrist_other_header'
>>
<<setScene>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<addItem 'black_ballet_boots'>>
<<swapItem $player $now "black_ballet_boots">>
<<addItem 'armbinder'>>
<<wearItem $player $now "armbinder" true>>
<<setThreshold 'heels' 'wearing_heels' 'expert' true>>
<<set $npc_shoestore_manager.flags.shot_ballet_heels_final = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
Leaving you seated the clerk disappears into yet another storage room before returning holding what looks like a long leather bag.<br>
<br>
"@@.npc_shoestore_manager;This is an armbinder. It will keep your limbs tightly bound behind your back, which makes balancing even more challenging... but that doesn't look like it would be a problem for you.@@"<br>
<br>
<<printThought $player "Well that type of balancing may not be a problem, balancing my increasingly crazy life, on the other hand....">><br>
<br>
Motioning for you to rise to your feet she moves behind you and guides your arm into the triangular sheath of the armbinder. Even with her own platforms your ballet-raised height is too much and after a moment of struggle she calls in her Amazonian assistant to help.<br>
<br>
You feel like a toy next to the large woman but she is nothing but gentle as she pulls the soft garment-leather sheath up your arms. Strapping it around your shoulders she finishes off by firmly zipping things closed.<br>
<br>
<<if setup.getTotalValue("bondage") >= 10>>
The feel of the leather pulling your arms together is exactly the sort of restriction you crave. When your elbows touch you can't help but let out a soft moan of arousal.
<<elseif setup.getTotalValue("bondage") >= 5>>
Tighter and tighter it isn't until your elbows are forced together so that your arms form a single sleek unit that she finishes up, leaving you feeling quite helpless... and more than a little aroused.
<<else>>
The way the armbinder forces your limbs together is more than a little claustrophobic, but the assistant's strength is irresistible and before long your elbows are touching and you are standing quite helpless.
<</if>>
<br><br>
"@@.npc_shoestore_manager;Alright, let me start filming and then you can do what you do - walk around and show off how confident and skilled wearing bed heels has made you.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
You give a little curtsey
<<else>>
You nod your head
<</if>> and start walking. The lack of use of your arms definitely requires more focus, but you still balance easily and stride gracefully.<br>
<br>
You find a side effect of the armbinder is to force your chest out
<<switch setup.calcBreastSize($player)>>
<<case "massive">>
further emphasizing your ginormous breasts, their heavy sway adding an additional challenge to each step.
<<case "large">>
your large breasts thus on stunning display, jiggling provocatively with each step.
<<case "medium">>
resulting in your modest breasts appearing fuller and more attractive, bouncing softly with each step.
<<case "small">>
helping make your small breasts appear almost respectable
<<case "none">>
but it is something of a wasted effort given your washboard flat chest.
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize($player)>>
<</switch>>
<br><br>
Following the clerk's instructions you vary things up, from a standard walk to a hip-swaying seductive saunter and even a high-stepping variant that for some reason makes you feel like a pony. With expert skill you glide through them all, finally coming to a stop to face the camera and give <<if setup.getTotalValue("feminization") >= 10>>a hands-free curtsey<<else>>a bow<</if>>.<br>
<br>
"@@.npc_shoestore_manager;Astounding! Just wonderful, wonderful. This is exactly what I wanted. Thank you again for your amazing help!@@"<br>
<br>
Calling in her assistant once more the clerk fiddles with footage while your armbinder is removed, the tight leather steadily loosening until your arms are able to pull free.
<<if setup.getTotalValue("bondage") >= 10>>
You are saddened to have the control of your arms returned to you. Being helpless is so much better.
<<else>>
Working the kinks out of your shoulders caused by the severe position.
<</if>>
<br><br>
"@@.npc_shoestore_manager;Well I think that does it - though feel free to come by again if you want to record a personal testimonial video. Given how thoroughly you've mastered those heels I think it's only right that you keep them as my gift to you - so long as you wear them out of the shop! Talk about advertisement!@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("bimbofication") >= 10>>
While you'd rather they were in your preferred pink as opposed to sleek black there's no way you can turn down such an offer, the clerk helpfully bagging up your old shoes before sending you on your way.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600 "<<removeItem $player $now 'armbinder' true>><<deleteItem $player $now 'armbinder'>>">>]
<<else>>
[<<moveTo "room_foyer" "You thank the clerk as she hands you a bag with your old shoes and head home." 600 "<<removeItem $player $now 'armbinder' true>><<deleteItem $player $now 'armbinder'>>">>]
<</if>>
</div>/*#
#desc: bonus ballet photoshoot, bdsm style
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $npc_shoestore_manager.flags.shot_ballet_heels_bdsm = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_14'
5
'psychiatrist_high_heel_video_shoot_bdsm'
false
'theme_psychiatrist_other_header'
>>
<<setScene>>
<<addItem 'armbinder'>>
<<wearItem $player $now "armbinder" true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
Walking up to the clerk you smile, toying with the ring at the front of your collar as you ask if, perhaps the two of you could shoot another advertisement?<br>
<br>
Looking up at you she grins "@@.npc_shoestore_manager;oh you minx... yes I have just the perfect idea, come with me.@@"<br>
<br>
Leading you into the back groom she leaves you for a moment to retrieve the leather armbinder.<br>
<br>
"@@.npc_shoestore_manager;Alright, let's get you ready to show off your full skills.@@"<br>
<br>
You turn around and present your arms behind your back as she summons her Amazonian assistant to help. As always you feel dwarfed by the large woman but she is nothing but gentle as she pulls the soft garment-leather sheath up your arms. Strapping it around your shoulders she finishes off by firmly zipping things closed.<br>
<br>
<<if setup.getTotalValue("bondage") >= 10>>
The feel of the leather pulling your arms together is exactly the sort of restriction you crave. When your elbows touch you can't help but let out a soft moan of arousal.
<<elseif setup.getTotalValue("bondage") >= 5>>
Tighter and tighter it isn't until your elbows are forced together so that your arms form a single sleek unit that she finishes up, leaving you feeling quite helpless... and more than a little aroused.
<<else>>
The way the armbinder forces your limbs together is more than a little claustrophobic, but the assistant's strength is irresistible and before long your elbows are touching and you are standing quite helpless.
<</if>>
<br><br>
Dismissing her assistant, though staring at the amazon's muscled ass until she has left the room, the shop owner finally turns her attentions back towards you. Casual as you like she produces a leash and clips it to the front of your collar. Pointing a remote towards the camera assembly she starts the film rolling before stepping forward and giving a slight tug.<br>
<br>
"@@.npc_shoestore_manager;Come along now, slave.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought $player "Of course, Mistress.">>
<<else>>
<<printThought $player "What? I guess I don't have a choice, as usual...">>
<</if>>
<br><br>
Bound as you are you have no choice but to obey.<br>
<br>
Staying a few steps behind you follow the clerk while the leash sways loosely between you,
<<switch setup.calcBreastSize($player)>>
<<case "massive">>
bouncing between your massive bitch-tits, their size only further enhanced by the way the armbinder forces your chest out, the heavy sway adding an additional challenge to each step.
<<case "large">>
the dangling lead further drawing attention to your large breasts, thrust out and jiggling provocatively with each step thanks to the armbinder.
<<case "medium">>
swinging in front of your modest breasts, their appearance fuller and more attractive thanks to the way the armbinder forces your chest out and up.
<<case "small">>
swinging in front of your breasts, their miniscule size enhanced by the way you are forced by the armbinder to thrust them forward.
<<case "none">>
swinging in front of your washboard chest, even the added help of the armbinder to force your chest up and forward doing nothing for this dearth of feminine shape.
<<default>>
ERROR, unhandled breast size: <<=setup.calcBreastSize($player)>>
<</switch>>
Even with the added challenge presented by the armbinder you have no trouble matching her casual pace, the two of you walking a leisurely loop before stopping in the centre of the filming area.<br>
<br>
Turning towards you she nods.<br>
<br>
"@@.npc_shoestore_manager;Kneel.@@"<br>
<br>
<<if setup.getTotalValue("strength") >= 10>>
The combination of your bound arms and the inability to bend at the ankle makes her command a challenge, but your time working out comes to the rescue. Leaning forward for balance you do a 1-legged squat until you are able to lower the other knee to the ground. Now shifting to the side you do a slight hop and twirl your other leg under you before sitting back on your heels with your head obediently bowed.
<<else>>
With your arms bound and your ankles unable to bend it becomes a bit tricky to lower yourself. In the end you half squat then sort of fall forward, your knees banging painfully due to your heel-enhanced height.
<</if>>
<br><br>
Stepping closer brings the shopkeepers crotch inches from your face, her platform shoes like steep pillars on either side of your knees. You are near enough to smell her feminine heat, the scent serving to stimulate your own lusts. There is no doubt that this little scene has you both very aroused.<br>
<br>
Running her fingers through your hair she faces the camera. "@@.npc_shoestore_manager;See what a proper bed heel routine can do for your slave? Do not settle for anything but the best - lock your sub tonight and they will be en pointe in no time.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
You quiver with submissive lust as the clerk pulls away.
<<else>>
Her hand pulling away quickly the clerk suddenly steps back.
<</if>>
The room is silent for several moments save for the loud, aroused sound of the clerk's breathing.<br>
<br>
"@@.npc_shoestore_manager;Holy shit that was intense. I just want to ravish you right now, and there would be nothing you could even do about it....@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
"Why would I want to, Mistress?" You reply, looking up and fluttering your eyes.<br>
<br>
"@@.npc_shoestore_manager;Fuck! You are a succubus! No, no, this is a business arrangement but believe me that <<=setup.getNpcName('npc_shoestore_assistant', 'first')>> is going to get it tonight...@@"<br>
<br>
<<if !$npc_shoestore_manager.flags.know_her_bdsm_relationship>>
<<set $npc_shoestore_manager.flags.know_her_bdsm_relationship = true>>
<<printThought $player "Wow, her her assistant is her slave? They must look like quite the pair in-scene.">>
<<else>>
You can't help but smile at the memory of seeing the two radically different sized women "in scene."
<</if>>
<br><br>
Breathing heavy she circles around behind you, watching you the whole time with wary lust.
<<else>>
You realise that she is right, but you don't know what to do about it, merely remaining kneeling in hopes that she holds on to her self control as you try not to panic at your helplessness.<br>
<br>
She watches you for almost a minute before seeming to make a decision and finally stepping away and slowly walking around behind you.
<</if>>
<br><br>
The clerk behind you, you feel her start to loosen the armbinder.<br>
<br>
<<if setup.getTotalValue("strength") >= 10>>
With a display of flexibility and power you reverse the process you used to get onto your knees, rising to your feet with your back still towards her.<br>
<br>
"@@.npc_shoestore_manager;Goddamn. you. are. magic. Stay still while I get this armbinder the rest of the way off.@@"
<</if>>
<br><br>
You wait quietly as she unlaces and removes the armbinder.
<<if setup.getTotalValue("bondage") >= 10>>
You are almost sad to have the use of your arms returned to you. Being helpless feels so much better.
<<else>>
You take a few moments to work the kinks out of your shoulders caused by the severe position.
<</if>>
<br><br>
"@@.npc_shoestore_manager;Alright, thanks for the footage but... I need to get away from you before I lose control of myself.@@"
<br><br>
Calling in her assistant once more the clerk fiddles with footage while your armbinder is removed, the tight leather steadily loosening until your arms are able to pull free.
<<if setup.getTotalValue("bondage") >= 10>>
You are saddened to have the control of your arms returned to you. Being helpless is so much better.
<<else>>
Working the kinks out of your shoulders caused by the severe position.
<</if>>
<br><br>
"@@.npc_shoestore_manager;Well I think that does it - though feel free to come by again if you want to record a personal testimonial video. Also well... let me tell that you could totally have a future in erotic videos if you could find the right agent.@@"<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 600 "<<removeItem $player $now 'armbinder' true>><<deleteItem 'armbinder'>>">>]
</div>/*#
#desc: don't give bed heels testimonial
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<swapItem $player $now $scene.shoes>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;Well I am disappointed in your decision, but I understand. Being known for this sort of thing can get around, though some would consider that a perk. Still, if you change you mind in the future and have some spare time, we will be here.@@"<br>
<br>
You nod. The clerk helps you out of the ballet heels and back into your "normal" shoes before thanking you and sending you on your way.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 60>>]
</div>/*#
#desc: decide what type of testimonial to give about your experience using bed heels
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_shoestore_manager', 'first')>> that you are ready to record a testimonial. Waving for her assistant to mind the shop she smiles and leads you into the back room. You find a chair setup directly facing the camera and she motions for you to sit down.<br>
<br>
"@@.npc_shoestore_manager;Alright, when I give the signal say your piece. I'll note that we try to cater to quite a few types of clients so if you wanted to do different recordings dressed or acting so as to target a different market segment I am more than willing to pay you for the additional time.@@"<br>
<br>
"@@.npc_shoestore_manager;If you need to change, just go behind that screen.@@"<br>
<br>
<<if $npc_shoestore_manager.flags.testimonials.casual>>
[@@.link_locked;You have already given a casual, vanilla testimonial.@@]<br>
<<else>>
[<<moveTo 'event_mall_shoe_store_bed_heels_testimonial_2' "Give a casual testimonial." 60 "<<set $scene.testimonial_type='casual'>>">>]<br>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials['overly feminized']>>
[@@.link_locked;You have already given an especially effeminate testimonial.@@]<br>
<<else>>
<<if setup.getTotalValue("feminization") >= 12 && (setup.checkVisibleClothingTag('female') + setup.checkVisibleClothingTag('nude') >= 90) && setup.getCurrentMakeup($player) != "" && setup.getCurrentMakeup($player) != "nomakeupmakeup" && $player.makeup.messed < 25>>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_2" "Focus your testimonial on how girly your new skills make you feel." 60 "<<set $scene.testimonial_type='overly feminized'>>">>]<br>
<<else>>
[@@.link_locked;You need to look, and feel, fully feminine in style and makeup to give this style of testimonial.@@]<br>
<</if>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials.submissive>>
[@@.link_locked;You have already given an especially submissive testimonial.@@]<br>
<<else>>
<<if setup.getTotalValue("submission") >= 10 && $scene.collar != "" && setup.getItemObj($scene.collar).hasOwnProperty("tags") && setup.getItemObj($scene.collar).tags.includes("leash_attachment")>>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_2" "Talk about how bed heels make you a better slave." 60 "<<set $scene.testimonial_type='submissive'>>">>]<br>
<<else>>
[@@.link_locked;You need to look, and feel, the part of a submissive collared slave to give this style of testimonial.@@]<br>
<</if>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials['brainless bimbo']>>
[@@.link_locked;You have already, like, given a bimbo testimonial.@@]<br>
<<else>>
<<if setup.getTotalValue("bimbofication") >= 10 && setup.checkVisibleClothingTag('slutty') >= 75 && setup.getCurrentMakeup($player) == "ultimatebimbo">>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_2" "Talk about how, like, totally amazing bed heels are." 60 "<<set $scene.testimonial_type='brainless bimbo'>>">>]<br>
<<else>>
[@@.link_locked;You need to look, and feel, like a bimbo slut to give this style of testimonial.@@]<br>
<</if>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials.humiliating>>
[@@.link_locked;You have already given an embarrassingly slutty testimonial.@@]<br>
<<else>>
<<if setup.getTotalValue("humiliation") >= 15 && setup.checkVisibleClothingTag('slutty') >= 75 && setup.getCurrentMakeup($player) != "" && setup.getCurrentMakeup($player) != "nomakeupmakeup" && $player.makeup.messed > 75 && setup.calcBreastSize($player) == 'massive'>>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_2" "Debase and humiliate yourself for the camera." 60 "<<set $scene.testimonial_type='humiliating'>>">>]<br>
<<else>>
[@@.link_locked;You need to look like a totally ruined, big-titted slut to give this type of testimonial.@@]<br>
<</if>>
<</if>>
<br>
<<if setup.checkOutsideDecency($player)>>
[<<moveTo "room_mall" "Recall that you need to be somewhere else and tell her you'll come back later." 60 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
[@@.link_locked;You need to change into something more "normal" before you head back into the mall.@@]
<</if>>
</div>/*#
#desc: give a themed testimonial about your experience using bed heels
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<setScene>>
<<set $player.money.total += $npc_manager.flags.uniform_upgrade.stipend_amt*.25>> /% so that the sum of doing all 5 comes to ~ the same as the stipend_amt value to kind of "help" the character along (if they did shoes first, which is the "cheapest" choice) %/
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<if $scene.started_in_bedheels != "bed_heels">>
<<swapItem $player $now "bed_heels">>
<</if>>
<<if !setup.checkThemeExist('npc_psychiatrist', 'other', 'theme_psychiatrist_other_12')>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_12'
5
'psychiatrist_high_heel_video_shoot_testimonial'
true
'theme_psychiatrist_other_header'
>>
<</if>>
<<set $scene.key_reward = !setup.checkItemOwned('bed_heels_key') && $npc_shoestore_manager.flags.testimonials['casual'] && $npc_shoestore_manager.flags.testimonials['overly feminized'] && $npc_shoestore_manager.flags.testimonials['submissive'] && $npc_shoestore_manager.flags.testimonials['humiliating'] && $npc_shoestore_manager.flags.testimonials['bimbo']>>
<<if $scene.key_reward>>
<<addItem "bed_heels_key">>
<</if>>
<<applyExperience 'foot' 11 'very' $EXPOSED>>
<<switch $scene.testimonial_type>>
<<case "overly feminized">>
<<applyExperience 'feminization' 20 'very' $EXPOSED>>
<<case "submissive">>
<<applyExperience 'submission' 20 'very' $EXPOSED>>
<<case "humiliating">>
<<applyExperience 'humiliation' 20 'very' $EXPOSED>>
<<case "bimbo">>
<<applyExperience 'bimbofication' 20 'very' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/shoe_store_photo.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
<<set $npc_shoestore_manager.flags.testimonials[$scene.testimonial_type] = true>>
<<if setup.getItemFromType("shoes") == "bed_heels">>
"@@.npc_shoestore_manager;Wow, wearing bed heels out and about? You are just amazing! Be sure to get them into the shot during your testimonial.@@"
<<else>>
Getting you ready the clerk has you change into a pair of bed heels matching the ones you already own.<br>>
<br>
"@@.npc_shoestore_manager;Try to get them into the shot as part of your testimonial. Don't worry, I'll unlock them after the shoot.@@"
<</if>>
<br><br>
<<switch $scene.testimonial_type>>
<<case "casual">>
Sitting down casually and facing the camera you give a small nod.<br>
<br>
"Hi!, My name is <<=$player.first_name>> and as you've seen how my skills have been totally transformed thanks to wearing the proper bed heels." <br>
<br>
The camera pans down to show off the towering shoes locked to your feet.<br>
<br>
"I know they seem intimidating. I was scared myself, at first. I mean the height, that locking strap! But at the end of the day, well... I think the results speak for themselves." Rising to your feet you wait for the clerk to zoom back out before taking a couple demure demonstrative steps. "If you wear heels you really owe it to yourself to buy a pair today, and wear them tonight. Trust me, you are going to LOVE the results." <br>
<br>
"@@.npc_shoestore_manager;Generic, but not bad, it will be a nice coda to your videos and maybe help entice the more... vanilla clientele.@@"
<<case "overly feminized">>
Putting on your girliest smile you wave at the camera. "Hi!, my name is <<=$player.first_name>> and I don't know about you but there's nothing I love more than feeling beautiful and feminine." <br>
<br>
You flutter your eyelids before continuing.<br>
<br>
"Of course everyone knows a girl should always be wearing heels, but which ones? Being feminine is all about looking elegant, beautiful and light as a feather, so high is certainly better, but learning to walk properly takes so much time! What's a busy girl to do?" <br>
<br>
You smile wide. "The answer, of course, is bed heels!" <br>
<br>
You lift your legs into frame and do a little flutter kick to show off the shoes locked on your feet.<br>
<br>
"Coming in your choice of colour - though what's more perfectly girly than pink? - These are everything a busy girl or sissy could ever want. They lock for all-night security and do the bestest job in the world training you to walk better and longer in the highest shoes you can find! You've all seen MY transformation, now make yours a reality!" <br>
<br>
"@@.npc_shoestore_manager;That was great, if I didn't already own a dozen pair... well you would have just sold me for sure!@@"
<<case "submissive">>
Moving the chair out of the way you instead choose to kneel before the camera with your eyes submissively down-turned.<br>
<br>
Giving the clerk the signal to start you kneel quietly for several moments before slowly looking up into the camera.<br>
<br>
"Hello, this slave's name is <<=$player.first_name>> and she has a message to help all the wonderful slaves and owners out there. Being a slave is hard. Sure it's the best thing ever and this slave loves her Mistress more than anything but between constantly servicing her needs while trying to look the best for my owner well... keeping on top of it all is a struggle, especially since this slave is totally a bottom!" <br>
<br>
You smile as you shift your position slightly, sitting to one side to give a clear view of the pink heels locked to your feet.<br>
<br>
"When it comes to walking in heels - which my Mistress says is one of this slave's many responsibilities, well, there is nothing better than when my owner locks these on my feet and lets me curl up for the night at the foot of her bed. It may seem crazy but you've all seen the results - plus look at these things! They're cute, steep and they lock! Can you think of anything more perfect for a slave?" <br>
<br>
"Trust me, whether you're an owner looking out for their sub, or a slave looking to push her skills to the next level, THESE are what you need!" <br>
<br>
"@@.npc_shoestore_manager;Wow, you're just too cute. If you weren't already owned I'd claim you for myself!@@"<br>
<br>
<<if $player.owner != "">>
<<printThought $player "It's not fair! Sure <<=setup.getNpcName($player.owner, 'formal')>> is the best ever but it sucks that you can't be a slave to everyone, serving all the time.">>
<<else>>
<<printThought $player "Owned? But I'm not... well, I guess I kind of am owned by <<=setup.getNpcName('npc_manager', 'formal')>>...">>
<</if>>
<<case "humiliating">>
You straddle the chair with your legs wide, your <<=setup.calcBreastSize($player)>> tits thrust out to put your whole slutty body on display.<br>
<br>
"Hello, this worthless whore's name is slut <<=$player.first_name>> and just like you, she loves heels; the higher, thinner and skankier the better!" <br>
<br>
As you talk you shift your body, showing off your curves and rolling your hips to idly fuck the chair.<br>
<br>
"That used to present a problem. I spend so much time on my back there is never the opportunity to practice balancing on the heels I really wanted! Talk about a conundrum!, It was worse than having too few guys show up to your gang-bang and having to wait on refractory periods! Fear not, slut sister, because I have found the solution for you, me, and all the other skanky hoes." <br>
<br>
Stretching one leg up you do a vertical splits, lewdly displaying yourself and rubbing your crotch with one hand as you point to the shoe locked to your raised leg.<br>
<br>
"Lock these on every night and well... you've seen the results! No more do you have to resort to basic pumps when you're at the club, you can wear the steepest, fuck-me heels and strut it like a slut all night long! I've been fucked so hard I can barely walk... like, every night if I'm lucky, and twice on Sundays! But thanks to my training with these sexy things I'm always ready to slip on a pair of my best steep fuck-me boots and go prowling for someone new to pound my worthless holes. Believe me, if you don't get a pair of these well... your man is probably going to end up fucking someone who does, maybe even me!" <br>
<br>
The clerk looks at you with a mix of disgust and arousal. "@@.npc_shoestore_manager;Wow, not many girls could pull that off, or appreciate it, but those that would... great job with the testimonial! Just recording it makes me feel like I should take a shower!@@"
<<case "bimbo">>
Sitting on the edge of the chair you fold your legs slightly and turn side on towards the camera.<br>
<br>
"HEEEEYYY girlfriend! My name is... uh, <<=$player.first_name>>! I may not know much, like, at all, but what I do know is that you need to wear a pair of these heels to bed tonight!" <br>
<br>
Reaching back you grab hold of the heel of your right shoe and bring it into frame to show off, sluttily arching your back in the process. "Sure it seems weird to lock your heels on rather than kick them off as soon as some stud wants to take you for a tumble but first of all, careful! You can lose a lot of nice shoes that way! and second these are for when you're sleeping...<<if $fetish.get_raped>> not that being passed out is a reason for a guy not to fuck me, teehee. Don't you love waking up full of cum and not being sure where it's, like, from? I know I do!<</if>>" <br>
<br>
"See, the way they, like, work, is you wear them to bed and they train your feet and strengthen your calves for walking in heels. It's kind of like how spending the night in a glory hole teaches you how to swallow cum, only you don't even need to do anything! Just lock these on, pair the release to your alarm clock, which is automatic, not hard like plugging in a computer - what is with power cords? I want to have things stuck in me, not the other way around! Anyway, basically, you put this on, head to bed and boom! It won't be long before you're strutting it like I am! Then maybe we can meet up!, I'm always looking for other sky-high bimbo's to club with - those cocks aren't gonna double team themselves!" <br>
<br>
Puckering your slutty lips you blow a kiss to the camera to finish things off.<br>
<br>
"@@.npc_shoestore_manager;Wow, you definitely sold me that these are the heels a bimbo needs. Great job.@@"
<<default>>
ERROR: UNKNOWN TESTIMONIAL TYPE <<=$scene.testimonial_type>>
<</switch>>
<br><br>
"@@.npc_shoestore_manager;Here's your pay, if you think you can make a testimonial targeted towards a different audience come back and I'll pay you more.@@"
<<if $scene.key_reward>>
<br><br>
You pocket your money but it seems that <<=setup.getNpcName('npc_shoestore_manager', 'formal')>> has something else for you. "@@.npc_shoestore_manager;So I think you've done just about every style of testimonial I could ask for, so I think you've earned this.@@" <<=setup.getNpcName('npc_shoestore_manager', 'formal')>> hands you a small round object with a round push-button on one side. "@@.npc_shoestore_manager;That's the "key" for your bed heels; in case you want to lock, or un-lock, them on a cadence other than your nightly sleep. Not that I imagine a heel-slut like yourself stopping that but, well... I am sure you can come up with some other fun uses for locking heels, hmm?@@"<br>
<br>
You thank her for the gift and pocket the electronic "key."
<</if>>
<br><br>
<<if $scene.shoes != "bed_heels">>
[<<moveTo "room_mall" "Change out of the bed heels and leave." 600 "<<set $player.cutscene.lockinventory = true>><<swapItem $player $now $scene.shoes>>">>]
<<else>>
[<<moveTo "room_mall" "Thank her and leave." 600 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
</div>/*#
#desc: ask about bed heels at shoe store
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.push('bedheels')>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_shoestore.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
You approach the woman behind the counter to ask if they have any "bed heels" in stock.<br>
<br>
"@@.npc_shoestore_manager;What type are you looking for <<if setup.getCurrentMakeup($player) != "" || setup.analyzeWornTags(['female','male','unisex']) != "male">>madam<<else>>sir<</if>>?@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_proper" 'Remember the words of <<=ps(setup.getNpcName("npc_manager", "formal"))>> instructions and ask for something "nice and secure."' 60>>]<br>
[<<moveTo "event_mall_shoe_store_bed_heels_wimpy" "Ask for whatever is best for beginners." 60>>]
</div>/*#
#desc: ask about bed heels at shoe store
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_shoestore.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;Well, I wouldn't call bed heels a beginner product in any way.@@"<br>
<br>
<<if setup.getItemFromType("shoes") == "pink_thigh_highs" && setup.getTotalValue("heels") < setup.getItemObj("pink_thigh_highs").heels.difficulty>>
She glances down at your towering heels critically. Even leaning against the counter for balance you are a bit wobbly and unstable.<br>
<br>
"@@.npc_shoestore_manager;Well, I guess you need all the help you can get at this point.@@"
<<elseif !setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>
She looks with obvious disdain at your flat footwear.<br>
<br>
<<if setup.getItemFromType("shoes").tags.includes("male")>>
"@@.npc_shoestore_manager;One should really take advantage of your day to day to practice in heels before you push into nocturnal wear. Or are you looking for some confidence before wearing heels in public?@@"
<<else>>
"@@.npc_shoestore_manager;One should really take advantage of your day to day to practice in heels before you push into nocturnal wear.@@"
<</if>>
<<elseif setup.getTotalValue("heels") < setup.getItemObjFromType("shoes").heels.difficulty>>
She glances down at the shoes you still haven't quite mastered.<br>
<br>
"@@.npc_shoestore_manager;Bed heels may be a little over kill if those are all you want to wear, but if you are looking to rise up to something higher in the future well, they say the best best investments are the ones you make in yourself. Let me check what I have in the back.@@"
<<else>>
"@@.npc_shoestore_manager;I guess you're looking to practice first before upgrading your daily wears? That's smart, and these heels will definitely make the sky the limit in a short while. Let me check what I have in the back.@@"
<</if>>
<br><br>
As she moves away from the counter you catch a shocking glance at her feet. The clerk being buxom but quite short of frame you had figured she was just standing on a box behind the counter but no, she walks confidently atop what have to be over twenty-centimeter high platforms not even counting the other ten in the heel! Even with all that she is still short but you're beyond astounded at her choice of footwear.<br>
<br>
She disappears for a few minutes before returning wearing a slight frown and carrying a baby pink shoebox.<br>
<br>
"@@.npc_shoestore_manager;I am sorry but it looks like bed heels have been really selling fast of late, we are nearly out of stock.@@"<br>
<br>
<<printThought $player "How can that be?, I've never even heard of such a thing until recently and I STILL don't actually know what they are...">><br>
<br>
"@@.npc_shoestore_manager;Anyway, this is the last style we have left, and everything else is back-ordered at the warehouse so I have no clue when we'll have anything else available.@@"<br>
<br>
<<=setup.getItemObj('bed_heels').offer_desc>>
<br>
"@@.npc_shoestore_manager;As I was saying, these are pretty extreme, but they are guaranteed to give results. The locks provide extra security from you kicking loose in your sleep and will automatically synchronise with your alarm clock so as to prevent the wearer from robbing themselves of progress in a sleepy, frustrated stupor. Anyway, since this wasn't what I would normally recommend to a beginner like yourself I'll give you a 10% discount - that's only <<=.9 * setup.getItemObj("bed_heels").price>> instead of their normal <<=setup.getItemObj("bed_heels").price>>. The offer is only good right now, if you come back later, they will be full price, if we even still have them in stock.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought $player "<<=setup.getNpcName('npc_manager', 'formal')>> did say you should get a pair to train with, the last thing you want is to disobey her...">>
<<else>>
<<printThought $player "<<=setup.getNpcName('npc_manager', 'formal')>> did say you should get a pair to train with, it's probably not a good idea to disobey...">>
<</if>>
<br><br>
<<if $player.money.total >= .9 * setup.getItemObj("bed_heels").price>>
[<<moveTo event_mall_shoe_store_bed_heels_purchase_confirm "Buy bed heels at the reduced price." 60 "<<set $scene.bedheelsprice=.9*setup.getItemObj('bed_heels').price>>">>]<br>
<</if>>
[<<moveTo event_mall_shoe_store_bed_heels_bargain "Beg her for a further discount." 60>>]
</div>/*#
#desc: shoe store owner introduces you to bed heels
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_shoestore.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;I know exactly what you're looking for, let me just run to the back.@@"<br>
<br>
She disappears for a few minutes before returning carrying a baby pink box.<br>
<br>
"@@.npc_shoestore_manager;It is good to meet such a discerning customer, and it is your lucky day. Would you believe we are out of every other style? Bed heels have really been popular this season, though it seems most buyers are not as as astute as yourself to go straight for our most effective model.@@"<br>
<br>
<<printThought $player "How can bed heels be so popular? I had never even heard of the things until recently...">><br>
<br>
"@@.npc_shoestore_manager;Anyway, this really is easily the best produce on the market and I doubt you would settle for anything less but just so you know everything else is SUPER back-ordered at the warehouse and I have no clue when we'll be getting any other styles back in stock.@@"<br>
<br>
<<=setup.getItemObj('bed_heels').offer_desc>>
<br><br>
"@@.npc_shoestore_manager;A little daunting, aren't they?, Still, beauty is pain and these will DEFINITELY have you strutting around in any other heel you like in no time.@@"<br>
<br>
<<if setup.getItemFromType("shoes") == "pink_thigh_highs" && setup.getTotalValue("heels") < setup.getItemObj("pink_thigh_highs").heels.difficulty>>
She glances down at your towering heels critically. Even leaning against the counter for balance you're a bit wobbly and unstable.<br>
<br>
"@@.npc_shoestore_manager;No offense, but it looks like you could use the help, amirite?@@"
<<elseif !setup.getItemFromType("shoes").hasOwnProperty("heels")>>
She looks down at your feet critically.<br>
<br>
"@@.npc_shoestore_manager;Flats? You're going to be in for some long, productive nights to break that habit.@@"
<<if setup.analyzeWornTags(['female','male','unisex']) == "male">>
<br><br>
"@@.npc_shoestore_manager;Before long you won't be able to find male shoes at all, cowboy boots barely top out at 6cm and with the help of these you'll think that's practically ground-level.@@"
<</if>>
<<elseif setup.getTotalValue("heels") < setup.getItemObjFromType("shoes").heels.difficulty>>
She glances down at the shoes you still have yet to master.<br>
<br>
"@@.npc_shoestore_manager;These might be a little over kill if those are all you want to wear, but if you are looking to rise up to something higher in the future well, the best investments are in yourself.@@"
<<else>>
"@@.npc_shoestore_manager;I guess you are looking to practice a bit first before upgrading your daily wears? That is smart, and these heels will definitely make the sky the limit.@@"
<</if>>
<br><br>
"@@.npc_shoestore_manager;Anyway, these cost <<=setup.getItemObj("bed_heels").price>>. I know it sounds like a lot but trust me when I say these are the top of the line model and your only regret will be that you didn't buy them earlier. Not to pressure you, but you should bear in mind our stock situation. If you do not buy today I cannot guarantee we will still have these tomorrow.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought $player "<<=setup.getNpcName('npc_manager', 'formal')>> did specify that you needed to send her a picture of you in bed heels tonight, the last thing you want is to disobey her...">>
<<else>>
<<printThought $player "<<=setup.getNpcName('npc_manager', 'formal')>> did specify that you needed to send her a picture of you in bed heels tonight, it's probably not a good idea to disobey...">>
<</if>>
<br><br>
You currently have <<=$player.money.total>> credits.<br>
<br>
<<if $player.money.total >= setup.getItemObj("bed_heels").price>>
[<<moveTo "event_mall_shoe_store_bed_heels_purchase_confirm" "Buy the bed heels." 60 "<<set $scene.bedheelsprice=setup.getItemObj('bed_heels').price>>">>]<br>
<</if>>
[<<moveTo event_mall_shoe_store_bed_heels_bargain "Beg her for a discount." 60>>]
</div>/*#
#desc: shoe store owner offers you the option of featuring in an advertisement in exchange for bed heels
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_shoestore.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
It takes no minor measure of pleading but finally you convince the clerk of your desperation. Taking pity on you she offers an alternate arrangement by which you could take possession of the bed heels.<br>
<br>
"@@.npc_shoestore_manager;Look, I will let you in on a secret; most girls who try bed heel training? They kick them off within the first hour of sleep each night. A week later? No results, banished to the back of the closet and forgotten. That is why this model is so revolutionary - they literally force your body into developing, and there's no escape until morning! It's perfect!@@"<br>
<br>
"@@.npc_shoestore_manager;Anyway, full disclosure, the reason we still have this model in stock is that we kind of over-ordered, and there are more still shipping... eventually. I absolutely have faith in this product I just think we need some better marketing and I could convince more people to skip the basic stuff and go right for what really works. After that, well, there's no better advertising than proof of success and the resulting word of mouth.@@"<br>
<br>
"@@.npc_shoestore_manager;Here is my proposal. You have a nice pair of legs on you and you obviously need training. We shoot a video of you walking in a pair of our other challenging shoes. Then you go home and you sleep in these bed heels every night for a week. I guarantee when you come back afterward you won't believe how much more proficient you've become. Cut the footage together, post it online and boom, THAT will sell product. So yea; you get your bed heels, I get evidence that will help me sell more, and all those nascent heel aficionados get the training they need; everyone wins.@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
<<printThought $player "Oooh, that sounds like fun, I'd definitely like to be better in heels!">><br>
<br>
<</if>>
<<if setup.getTotalValue("bimbofication") >= 10>>
<<printThought $player "Free heels? Could there be anything better!?" 40>><br>
<br>
<</if>>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("bimbofication") >= 10>>
The clerk smiles at your obvious enthusiasm for the idea.<br>
<br>
<</if>>
"@@.npc_shoestore_manager;If you are concerned about your identity, it's fine, we can do the shoot anonymously. Though if you're willing to give a public testimonial on camera at the end well... I would definitely give you a bit extra, on top of the shoes. Don't worry about it though, you don't have to decide until you come back for the "after" photoshoot.@@"<br>
<br>
"@@.npc_shoestore_manager;Well, what'll it be? This offer is limited time only, if you can't do it I'll have to find someone else.@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("bimbofication") >= 10>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_1" "How could you possibly say no?" 60>>]
<<elseif setup.getTotalValue("submission") >= 12 && $player.money.total < setup.getItemObj("bed_heels").price>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_1" "Her offer is a little scary, but you can't disappoint your mistress and leave the store empty-handed." 60>>]
<<else>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_1" "Accept her offer." 60>>]<br>
<<if $player.money.total >= setup.getItemObj("bed_heels").price>>
[<<moveTo "event_mall_shoe_store_bed_heels_purchase_confirm" "Decline her offer and pay full price." 1 "<<set $scene.bedheelsprice=setup.getItemObj('bed_heels').price>>">>]<br>
<</if>>
[<<moveTo "room_mall_shoe_store" "Decide not to buy the bed heels." 60>>]
<</if>>
</div>/*#
#desc: purchase bed heels
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $player.money.total -= $scene.bedheelsprice>>
<<addItem 'bed_heels_box'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_shoestore.png" "./images/characters/npc_shoestore_manager.png">>
<div id="invframe" class="scrolltext">
You give the clerk <<=$scene.bedheelsprice>> and she boxes up the bed heels and hands them to you with a wide smile.<br>
<br>
"@@.npc_shoestore_manager;You've made a great purchase, believe me, enjoy!@@"<br>
<br>
[<<moveTo room_mall_shoe_store "Walk away." 1>>]
</div>/*#
#desc: ask about a "uniform upgrade" at the lingerie shop
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_shopkeeper', 'first')>> if she knows about, or perhaps sells? Something called "bed heels." <br>
<br>
Her eyes light up and she smiles. "@@.npc_shopkeeper;oh my, looking to train up are we? How wonderful! To answer your question, no, we do not stock that sort of thing, but my good friend <<=setup.getNpcName('npc_shoestore_manager', 'first')>> across the way at <<printShopName 'mall_shoe_store' true>>.@@"<br>
<br>
You thank her for the suggestion.<br>
<br>
<<printThought $player "Guess it makes sense to find heels at the shoe store...">><br>
<br>
[<<moveTo "room_mall_lingerie_shop_fetish" "Back to the store." 60>>]
</div>/*#
#desc: ask manager for uniform stipend
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $npc_manager.stage == 3 && !$currentTasks.hasOwnProperty('task_uniform_upgrade')>>
<<set $player.money.total += $npc_manager.flags.uniform_upgrade.stipend_amt>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade')>>
You mention the A-SLUT uniform upgrade programme and she smiles.<br>
<br>
<<if $currentTasks['task_uniform_upgrade'].finished>>
"@@.npc_manager;Unfortunately I have nothing more for you in regards to helping your progress as A-SLUT. You have been doing a lovely job thus far however so just keep it up and I will be sure to inform you when further opportunities arise.@@"
<<else>>
"@@.npc_manager;Yes, and you are already enrolled, do not think you will be getting any more out of me until after you finish proving that you deserve your place in the programme.@@"
<</if>>
<br><br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<<elseif $player.flags.uniform_upgrade.aslut_enrollment_refused>>
<<moveTo "event_uniform_stipend_1_reenroll">>
<<elseif $npc_manager.stage < 3>>
"@@.npc_manager;Stipend? My my, someone has been reading their contract! Unfortunately it would seem you did not read it well enough - that programme is for full SISSY secretaries and you, alas, are still in your probationary trial period. I would love to make an exception but...@@" She looks at you with a familiar hunger that sends a chill down your spine. "@@.npc_manager;No, best to wait, going too fast could lead to unfortunate results. Patience is a virtue.@@"<br>
<br>
<<printThought $player "She's been taking things slow? What?">><br>
<br>
Though intimidated, a part of you wonders what exactly could be hiding behind this whole stipend thing... looks like you need to finish your trial period first to find out.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<<else>>
"@@.npc_manager;Stipend... Oh, aren't you the clever one. Spent some time reading, did you? I hope you didn't strain your pretty little head. I presume you must mean the A-SLUT? The Allotment for Sissy Learning and Uniform Transformation.@@"<br>
<br>
<<if setup.getTotalValue("smart") > 7>>
<<printThought $player "Of course that's what they'd call it.">>
<<else>>
<<printThought $player "That can't be a thing, can it?">>
<</if>>
<br><br>
<<if $npc_manager.stage < 3>>
"@@.npc_manager;There is just one teensy little issue - the A-SLUT programme is only available to full-time, non-probationary employees. Being that you are still in the midst of proving yourself well...@@" She smiles in a manner that is not quite comforting. "@@.npc_manager;Another thing to look forward to, hmm?@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<<else>>
She walks around to her desk drawer and pulls out a stack of credits.<br>
<br>
"@@.npc_manager;Now given that I already gifted you a new, compliant uniform,<<if setup.getItemFromType('shirt') == 'satin_blouse_pink' && setup.getItemFromType("legwear") == 'skirt_pink_leather' && setup.getItemFromType("shoes") == 'pink_mary_janes'>> you look very cute in it, by the way<<else>> though it seems like you have decided to wear something else today.<</if>> This does not quite seem necessary, but contractually you are correct. I would never want you to think I was going against the rules, or treating you in any way unfairly.@@"<br>
<br>
You take the <<=$npc_manager.flags.uniform_upgrade.stipend_amt>> credits gratefully, counting them in quick triumph as she walks back around to her desk.<br>
<br>
"@@.npc_manager;Of course a smart girl like yourself read that ENTIRE section of the contract, or would you like me to explain the mandate automatically incurred by your accepting that payment?@@"<br>
<br>
<<if $player.flags.uniform_upgrade.fully_understand_contract>>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("submission") >= 10>>
<<printThought $player "I knew this was coming, I should just go along.">>
<<else>>
<<printThought $player 'I knew this was coming, it is probably safer just to go along with her "game" ... or do I tip my hand and try to impress her with how much I understood?'>>
<</if>>
<<else>>
<<printThought $player "Uh-oh, what have I gotten into now?">>
<</if>>
<br><br>
[<<moveTo "event_uniform_stipend_1_refund" "Return the money." 60>>]<br>
[<<moveTo "event_uniform_stipend_1_explain_2" "Ask her to explain." 60>>]<br>
<<if setup.getTotalValue("smart") >= 12>>
[<<moveTo "event_uniform_stipend_1_smart" "Tell her you already know" 60>>]
<<else>>
[<<moveTo "event_uniform_stipend_1_dumb" "Lie and tell her you already know" 60>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: try to return A-SLUT stipend to manager
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Wide-eyed you hurriedly try to give her back the credits.<br>
<br>
She looks disappointed, then amused, as she shakes her head in refusal.<br>
<br>
"@@.npc_manager;Even if I wanted to take that money back, the rules for the A-SLUT programme are very specific and binding. Payments can only be returned in the case of a broken contract; in which case the employee is required to repay both the principle and another double again in punitive fees.@@"<br>
<br>
<<if $player.money.total >= 3*$npc_manager.flags.uniform_upgrade.stipend_amt>>
<<printThought $player "What? That would wipe away so much of my savings!">><br>
<br>
[<<moveTo "event_uniform_stipend_1_refund_success" "Pay the fine." 60>>]<br>
[<<moveTo "event_uniform_stipend_1_explain_2" "Keep the money." 60>>]
<<else>>
[<<moveTo "event_uniform_stipend_1_explain_2" 'You cannot afford such a fine, you have no choice but to "accept your fate"' 60>>]
<</if>>
</div>/*#
#desc: manager explains A-SLUT stipend
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<include uniformUpgradeTask>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Now then, when we defined the secretary-level job responsibilities, and had legal draw up the contract, we were aware that it can take some time to pick out or accessorize a new outfit. Thus, you have until Monday to make your purchase. Oh, I just cannot wait to see what you come up with!@@"<br>
<br>
<<printThought $player "What have I gotten myself into...">><br>
<br>
[<<moveTo "event_uniform_stipend_1_suggestions" "Ask her for suggestions." 60>>]<br>
[<<moveTo "event_uniform_stipend_1_punishment" "Thank her and leave." 60>>]
</div>/*#
#desc: try to pay back the A-SLUT stipend and fine
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> looks quite astonished when you produce the requested credits.<br>
<br>
"@@.npc_manager;Well well, it appears that somebody has been diligent at squirreling away their paychecks. That is quite a lot of money for one in your position. Would it not be better to just accept the stipend and get a fun new addition to your outfit?@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_explain_2" "Change your mind, it is a lot of money..." 60>>]<br>
<<if setup.getWillpower($player)>0>>
[<<moveTo "event_uniform_stipend_refuse" "Stay firm and give her the money." 60>>]
<<else>>
[@@.link_locked;You try to find the willpower to turn down her offer... but come up empty.@@]<br>
<</if>>
</div>/*#
#desc: pay back A-SLUT stipend and fine
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.flags.uniform_upgrade.aslut_enrollment_refused = true>>
<<set $player.money.total -= 3*$npc_manager.flags.uniform_upgrade.stipend_amt>>
<<set $player.flags.uniform_upgrade.fully_understand_contract = true>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_16'
8
'psychiatrist_uniform_upgrade_refuse'
false
'theme_psychiatrist_manager_header'
>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> looks more disappointed than you've ever seen as she quietly accepts your pile of credits.<br>
<br>
"@@.npc_manager;I am sorry to see you declining such a wonderful opportunity. Still, in case you change your mind, I will leave the invitation to join A-SLUT open indefinitely.@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_punishment" "Thank her and leave." 60>>]
</div>/*#
#desc: Intelligently explain the A-SLUT stipend to your manager
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.flags.uniform_upgrade.smart_stipend_explain = true>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<switch $now.getUTCDay()>>
<<case 1>>
<<set _dueDate to setup.setNextDate($now, 7, 8, 0)>>
<<case 2>>
<<set _dueDate to setup.setNextDate($now, 6, 8, 0)>>
<<case 3>>
<<set _dueDate to setup.setNextDate($now, 5, 8, 0)>>
<<case 4>>
<<set _dueDate to setup.setNextDate($now, 4, 8, 0)>>
<<case 5>>
<<set _dueDate to setup.setNextDate($now, 3, 8, 0)>>
<<default>>
ERROR: unexpected day! <<=$now.getUTCDay()>>
<</switch>>
<<set $scene.dueDate = _dueDate.getDate()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> is momentarily taken aback by your confident nod.<br>
<br>
"@@.npc_manager;Oh? Just so we are both on the same page, how about you explain what you think accepting that money entails?@@"<br>
<br>
"It means that I have to use it to pay for uniform upgrades, and that I have until the begining of the following week; so Monday the <<=$scene.dueDate>>, to present myself, my purchases, and all associated receipts for managerial - that would be you, of course - approval." <br>
<br>
"In addition, by accepting enrollment into the Allotment for Sissy Learning and Uniform Transformation I have entered a binding agreement to an automatic contract extension. Failure to comply with new directives will, of course, result in punishments, as well as potential, and additional, punitive claw-backs of any funds allocated to the employee for purposes of education or uniform improvements, subject to a multiplicative factor if the employee; that would be me, has their contract terminated before their responsibilities have been discharged." <br>
<br>
Now she is definitely surprised.<br>
<br>
<<printThought $player "Was it really such a good idea to tip my hand like this?">><br>
<br>
"@@.npc_manager;Well, it looks like you DID do your homework. Once again you surpass my expectations. Enrolling you in A-SLUT is definitely the right move for a go-getter like yourself. Since you know what you need to do let me once again congratulate you and say that I will be very much looking forward to seeing what you come up with next week!@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_punishment" "Thank her and leave." 60>>]
</div>/*#
#desc: try and fail to intelligently explain the A-SLUT stipend to your manager
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'bimbofication' 8 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"Well, um, see, by accepting the stipend I enrolled in the... Allotment for Sissy Learning and Uniform Transformation which is a programme meant to accelerate my career advancement and-" <br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> cuts you off before you can babble further.<br>
<br>
"@@.npc_manager;Clearly you did not read, or rather, understand, the rest of the contract, which I suppose would have been too much to ask, really. To be honest, based on your employment history, I am surprised you managed to even puzzle out as much as you did... Anyway, how about I just explain things so you do not have to worry your pretty little head?@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_explain_2" "Embarrassed you silently nod and listen." 60>>]
</div>/*#
#desc: Ask manager if you can re-enroll in A-SLUT programme
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.alreadyEnrolled = false>>
<<set $scene.alreadyFinished = false>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade')>>
<<set $scene.alreadyEnrolled = true>>
<<if $currentTasks['task_uniform_upgrade'].finished>>
<<set $scene.alreadyFinished = false>>
<</if>>
<<applyExperience 'bimbofication' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<include uniformUpgradeTask>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_16.5'
9
'psychiatrist_uniform_upgrade_reenroll'
false
'theme_psychiatrist_manager_header'
>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.alreadyEnrolled>>
You bring up the idea of enrolling in the A-SLUT programme. She stares at you and blinks twice before responding.
<<if $scene.alreadyFinished>>
"@@.npc_manager;Silly girl, not only have you already enrolled, you successfully upgraded your uniform! What a silly request, you cannot enroll twice!@@"
<<else>>
"@@.npc_manager;Did you forget? You already enrolled... and you still have work to do at finding an appropriate uniform upgrade.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_manager' 300>>
<<else>>
"@@.npc_manager;Oh, I am so happy that you have finally come around! Trust me, being in A-SLUT is like strapping a rocket to the back of your career. You could be surpassing your predecessor in no time!@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought $player "If that is <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desire it must be the best thing for me.">>
<<elseif setup.getTotalValue("bimbofication") >= 10>>
<<printThought $player "How cool!, I wonder if it could help me become more like <<=setup.getNpcName('npc_barista', 'first')>>?">>
<<elseif setup.getTotalValue("feminization") >= 12>>
<<printThought $player "That sounds great, I've always been jealous of how feminine she looks in the photo above my desk.">>
<<elseif setup.getTotalValue("humiliation") >= 10>>
<<printThought $player "This sounds like it could be really humiliating... Why does that make me so excited?">>
<<else>>
<<printThought $player "Oh no, what have I agreed to?">>
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> almost sprints around her desk before returning to shove a wad of credits into your hands.<br>
<br>
"@@.npc_manager;This is so exciting! I just cannot tell you how much I am looking forward to next Monday and seeing what you come up with!@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_suggestions" "Ask her for suggestions." 60>>]<br>
[<<moveTo "room_office_after_work" "Thank her and leave." 60>>]
<</if>>
</div>/*#
#desc: Ask manager for suggestions on how to spend your uniform stipend
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Sorry, my dear, but you are in the advanced class now. A-SLUT means that you are taking charge of your career so the training wheels are off; I would be robbing you of important development opportunities if I dictated your choice.@@" She bites her lip, practically scorching you with her smouldering gaze before concluding. "@@.npc_manager;Besides, remember that the ideal secretary should be able to anticipate, and fulfill, her superior's desires without even needing to be commanded. By now you must have developed a sense of the kind of thing I would approve of.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought $player "Oh Mistress.... take me now!">>
<<else>>
<<printThought $player "What SHE would approve of? What have I gotten myself into?">>
<</if>>
<br><br>
<<if $player.flags.uniform_upgrade.aslut_enrollment_refused>>
[<<moveTo "room_office_after_work" "Thank her and leave." 60>>]
<<else>>
[<<moveTo "event_uniform_stipend_1_punishment" "Thank her and leave." 60>>]
<</if>>
</div>/*#
#desc: Manager punishes you for trying to find a loophole in your contract
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 3 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You turn to depart. You reach for the door just as <<=setup.getNpcName('npc_manager', 'formal')>> orders you to stop.<br>
<br>
"@@.npc_manager;Ah, ah, ah, are you forgetting something? As much as I appreciate your initiative in becoming part of A-SLUT the fact remains that you tried to find a loophole in your contract and essentially double-dip after I had so graciously gifted you a brand new uniform! Though it pains me to say it, there can be no question that you are due for a punishment.@@"<br>
<br>
You know by now that objecting will only make it worse for you so you release your grip on the doorknob and step back. Moving to her desk you dutifully turn around to present your backside as she fetches the paddle.<br>
<br>
SMACK! as always, the first blow takes you by surprise and you gasp in pain.<br>
<br>
"@@.npc_manager;Did that hurt, sissy?@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager;Well get used to it, you are-@@"<br>
<br>
The loud SMACK! and your resulting yelp of pain drowns out her next word.<br>
<br>
"@@.npc_manager;A-SLUT now,@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager;and that means expectations rise...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager;...but the rewards become all the sweeter.@@"<br>
<br>
Braced for another slap you are instead surprised to feel her hand gently caressing your sore bottom. Her tender touch causes you to let out a cute gasp that turns into a moan when she traces over your <<if setup.getTotalValue("anal") >= 5 >>well-trained<<else>>pert<</if>> hole, <<if setup.getItemFromType('plug') != "">>wiggling your plug<</if>> before reaching between your legs <<if setup.getItemFromType("cage") != "">>to cradle your <<getWordMyPenis $player>><<else>>squeeze your sissy package<</if>>.<br>
<br>
"@@.npc_manager;Mmmm, that is a good sissy. You are going to be the best! Show how much you want it. Tell me how much you appreciate being enrolled in the A-SLUT programme.@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_punishment_accept" 'Obey and thank her for this new step in your "career"' 600>>]<br>
[<<moveTo "event_uniform_stipend_1_punishment_reject" "Remain trembling and silent." 600>>]
</div><<switch $now.getUTCDay()>>
<<case 1>>
<<set _nextDate to setup.setNextDate($now, 7, 8, 0)>>
<<case 2>>
<<set _nextDate to setup.setNextDate($now, 6, 8, 0)>>
<<case 3>>
<<set _nextDate to setup.setNextDate($now, 5, 8, 0)>>
<<case 4>>
<<set _nextDate to setup.setNextDate($now, 4, 8, 0)>>
<<case 5>>
<<set _nextDate to setup.setNextDate($now, 3, 8, 0)>>
<<default>>
ERROR: unexpected day! <<=$now.getUTCDay()>>
<</switch>>
<<addTaskById 'task_uniform_upgrade' _nextDate>>/*#
#desc: Thank manager for entrolling you in A-SLUT
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<include uniformUpgradeTask>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_15'
8
'psychiatrist_uniform_upgrade_task'
false
'theme_psychiatrist_manager_header'
>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> moves close, her body pressed against your back, one hand cradling your throat as she whispers and gently nips at your ear.<br>
<br>
"Thank you, Mistress, thank you for making me A-SLUT." You cry out, your words sending a shudder through both of your bodies.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> steps away, leaving you hanging as she puts the paddle back in its drawer.<br>
<br>
"@@.npc_manager;I think that will do, for today. Remember - next Monday you need to be wearing something new for me.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
</div>/*#
#desc: Too dumbstruck to thank manager for entrolling you in A-SLUT
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<include uniformUpgradeTask>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_15'
8
'psychiatrist_uniform_upgrade_task'
false
'theme_psychiatrist_manager_header'
>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You are too overwhelmed to respond, the feeling of your manager's body pressed against your own, her hand possessively cradling your throat.<br>
<br>
"@@.npc_manager;Cat got your tongue? That is ok, I will never say no to a silent submissive sissy. We both know the truth, even when you are too shy to vocalise it.@@"<br>
<br>
She gives your tender rear a final squeeze before walking away and putting the paddle back in its drawer.<br>
<br>
"@@.npc_manager;You are dismissed. Remember - next Monday you need to have something new for me.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
</div>/*#
#desc: calculate uniform upgrade you purchased
#status: RELEASED 0.6.0.0
#*/
<<if !$npc_manager.flags.uniform_upgrade.item_comments['pink_thigh_highs'] && setup.getItemFromType("shoes") == "pink_thigh_highs">>
<<set $scene.uniform_upgrade = "pink_thigh_highs">>
<<elseif !$npc_manager.flags.uniform_upgrade.item_comments['pink_satin_corset'] && setup.getItemFromType("corset") == "pink_satin_corset">>
<<set $scene.uniform_upgrade = "pink_satin_corset">>
<<elseif !$npc_manager.flags.uniform_upgrade.item_comments['gold_hoop_earrings'] && setup.getItemFromType("earring") == "gold_hoop_earrings">>
<<set $scene.uniform_upgrade = "gold_hoop_earrings">>
<<else>>
<<set $scene.uniform_upgrade = "">>
<</if>>/*#
#desc: mux to based on which uniform upgrade you purchased
#status: RELEASED 0.6.0.0
#*/
<<initRoom>>
<<include calcUniformUpgrade>>
<<set $beforetasklocation = "room_office_sissy_secretary_work_morning_start">> /% this is so the morning inspection proceeds properly%/
<<completeTask "manager_morning_inspection_task" $now true>>
<<set $scene.aslutoverride = true>>
<<switch $scene.uniform_upgrade>>
<<case "pink_thigh_highs">>
<<set $npc_manager.flags.uniform_upgrade.item_comments[$scene.uniform_upgrade] = true>>
<<moveTo "event_manager_daily_check_pink_thigh_highs">>
<<case "pink_satin_corset">>
<<set $npc_manager.flags.uniform_upgrade.item_comments[$scene.uniform_upgrade] = true>>
<<moveTo "event_manager_daily_check_pink_satin_corset">>
<<case "gold_hoop_earrings">>
<<set $npc_manager.flags.uniform_upgrade.item_comments[$scene.uniform_upgrade] = true>>
<<moveTo "event_manager_daily_check_gold_hoop_earrings">>
<<case "">>
<<moveTo "event_manager_daily_check_upgrade_fail">>
<<default>>
ERROR unexpected scene uniform_upgrade
<</switch>>/*#
#desc: First time showing up to work with bespoke earrings
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.uniform_upgrade.item_comments.earrings = true>>
<<set $scene.makeup = setup.getCurrentMakeup($player)>>
<<set $scene.firstTask = $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<if $scene.firstTask>>
<<completeTask 'task_uniform_upgrade' $now true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<if setup.daystoDate($now, setup.getTaskDueDate('task_uniform_upgrade')) != 0>>
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office to greet you with a smile. "@@.npc_manager;My, my, it looks like someone is showing off their inner A-SLUT ahead of schedule!@@" She notes as soon as she notices your new earrings.
<<else>>
Practically laying in wait for you <<=setup.getNpcName('npc_manager', 'formal')>> has you stand in the middle of her office as soon as you get in before she slowly walks around you like a cat stalking its prey. Almost immediately her gaze focuses in on the bright gold earrings hanging on either side of your neck. Ending her loop standing in front of you she holds your chin with one hand and turns your head back and forth, the earrings swaying slightly, brushing your neck and tugging on your earlobes to remind you of their presence.
<</if>>
<<else>>
Striding out of her office to begin your inspection <<=ps(setup.getNpcName('npc_manager', 'formal'))>> attention immediately zeros in on your new earrings.
<</if>>
<br><br>
"@@.npc_manager;Very nice@@" she states with a nod. "@@.npc_manager;Feminine, flashy, a little classy in that "I paid a lot to look this cheap" way. I approve.@@"<br>
<br>
<<printThought $player "Oh thank <<getWordGod $player>>. <<if setup.getTotalValue('submission') >= 10>>I'm so happy <<=setup.getNpcName('npc_manager', 'formal')>> approves.<</if>>">><br>
<br>
<<if $scene.makeup == "">>
"@@.npc_manager;One problem, however.@@" She adds, your heart sinking in fear. "@@.npc_manager;Seeing you with those oh-so-feminine earrings reminds me how plain your face is. I mean you have natural cuteness, sure, but you should be showing off so much more...@@"
<<else>>
<<if $player.makeup.messed > 75>>
Rubbing her finger across your cheek smudges your already-ruined makeup even further.<br>
<br>
"@@.npc_manager;No, this will not do at all. I suppose some might appreciate the trashy whore look you have going but this is a professional environment and I expect far better from you.@@"
<<elseif $player.makeup.messed > 50>>
Examining your damaged makeup she frowns.<br>
<br>
"@@.npc_manager;Hmm, it looks like you made an effort, but you need to take more pride in your work. You are not painting a house, you cannot just throw makeup up and leave it for a decade, you have to vigilantly pay attention and touch things up throughout the day.@@"
<<elseif $scene.makeup == "nomakeupmakeup">> /* note: from this point forward makeup is definitionally in good condition */
Examining your visage with a critical eye she rubs just below your ear to confirm that you are, in fact, wearing makeup.<br>
<br>
"@@.npc_manager;Credit where credit is due; you have pulled off a very subtle job. You really nailed applying just enough makeup to perfectly round out your cute face without really changing anything. That said... well, that is not really the point of a sissy's makeup, is it?@@"
<<elseif $scene.makeup == "normalmakeup">>
Examining your girly face she finally nods in approval.<br>
<br>
"@@.npc_manager;Hmm, this really is almost expertly done. The glint of your earrings really works with the makeup to set off your feminine features.@@"
<<elseif $scene.makeup == "expertmakeup">>
Examining your girly face she finally nods in approval.<br>
<br>
"@@.npc_manager;Not really my style but somehow it fits you, yes, whoever taught you that seems to have a real eye for how to best highlight your character.@@"
<<elseif $scene.makeup == "ultimatebimbo">>
Examining your whorish countenance her expression remains analytical.<br>
<br>
"@@.npc_manager;What did you use to apply this... a trowel? Still, I suppose it suits you... Someone who knew you before might not even recognise you, though it honestly seems odd for those pink lips not to be wrapped around a juicy cock, would you not agree?@@"<br>
<br>
<<if setup.getTotalValue("penis") >= 10>>
<<printThought $player "Of course! A fat cock sounds wonderful!">>
<<else>>
<<printThought $player "Oh <<getWordGod $player>>, is that what I look like? A brainless cum-dumpster?">>
<</if>>
<br><br>
"@@.npc_manager;Still, I do not object. It may be more than I would have recommended but I do not see any problems with you continuing to do yourself up in this manner.@@"
<<elseif $scene.makeup == "sissy_doll">>
Examining your doll-like countenance her lips twitch with the hint of a smile.<br>
<br>
"@@.npc_manager;Ah, my sweet sissy, always looking so cute, you really are becoming my lovely doll...@@"
<<elseif $scene.makeup == "moviestar">>
Examining your head-turning, expert makeup she nods in approval.<br>
<br>
"@@.npc_manager;Some might say that this sort of thing was too much for the office but I... well I just love to see a SISSY secretary who strives to be the very best in all things. Keep up the good work!@@"<br>
<<else>>
Looking at your face from several angles she finally shakes her head in disapproval.<br>
<br>
"@@.npc_manager;No, this will not do at all. You have such a cute face, all you need is the proper makeup to really bring your natural femininity to the fore. <<if $npc_manager.satisfaction > ($npc_manager.anger + 5)>>You surpass my expectations so often I sometimes forget you are just a beginner<</if>> Your homework assignment; figure out how to apply a more suitably feminine style of makeup like a good girl!@@"
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Of course proper makeup is already part of your routine but I want you to dedicate yourself even more, maybe make your favourite style permanent so you are never without? In all things I want you to consider your body unto a work of art, to be a beautiful delight to the eyes at all times. Always remember that you are my SISSY secretary and that is a representative position, after all.@@"<br>
<br>
<<if $scene.FirstTask>>
<<completeTask 'task_uniform_upgrade' $now true>>
<<if setup.checkItemOwned("lingerie_store_receipt")>>
"@@.npc_manager;Now then, let us see if you have kept up with your OTHER requirements.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_receipt" "Remember to give her the receipt for the earrings." 60 "<<set $scene.item='gold_hoop_earrings'>>">>]<br>
[<<moveTo "event_manager_daily_check_stage_3" "Proceed to your normal morning inspection." 60>>]
<<else>>
[<<moveTo "event_manager_daily_forgot_receipt" "You are about to strip to your undergarments for your daily inspection but she pauses, as if remembering something." 60 "<<set $scene.item='gold_hoop_earrings'>>">>]
<</if>>
<<else>>
With a nod and a smile she continues on to your normal inspection.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 60>>]
<</if>>
</div>/*#
#desc: First time showing up to work with bespoke corset
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.top = setup.getItemFromType("shirt")>>
<<if $scene.top == "">>
<<set $scene.top = setup.getItemFromType("dress")>>
<<if $scene.top == "">>
<<set $scene.top = setup.getItemFromType("strapless_dress")>>
<</if>>
<</if>>
<<removeItem $player $now $scene.top true>>
<<set $scene.laced = $player.timebased.tightlacing>>
<<if $scene.laced < 75>>
<<set $player.timebased.tightlacing = 100>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 1>>
<</if>>
<<set $scene.firstTask = $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<if $scene.firstTask>>
<<completeTask 'task_uniform_upgrade' $now true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<if setup.daystoDate($now, setup.getTaskDueDate('task_uniform_upgrade')) != 0>>
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office to greet you with a smile. "@@.npc_manager;Hmm, there is something different about your outfit...@@"<br>
<br>
Stepping closer her hands wrap around your waist, caressing the stiff steel bones of your corset through your clothing.
<<else>>
You wonder how long <<=setup.getNpcName('npc_manager', 'formal')>> was waiting as, no sooner have you entered her office's antechamber she appears to ambush you. She has you stand in the middle of her office as she paces a slow circle around you. As if unable to put her finger on what has changed she makes two passes before smiling and moving closer. Her hands reach out and she grabs your waist, her fingers digging through your clothing to tighten against the stiff steel bones of your corset.
<</if>>
<<else>>
Striding out of her office to begin your inspection <<=ps(setup.getNpcName('npc_manager', 'formal'))>> attention she pauses for a moment before moving closer, her hands wrapping around your corseted waist.
<</if>>
<br><br>
"@@.npc_manager;Aha!, I thought you were looking a bit more curvy.@@"<br>
<br>
You stand helpless as her fingers unbutton your <<=setup.getItemName($scene.top)>>, peeling it off to reveal the corset and your <<=setup.getItemName(setup.getItemFromType('bra'))>> underneath.<br>
<br>
"@@.npc_manager;Oh, very chic, and fantastic craftsmanship. This is exactly the kind of thing to take a burgeoning sissy from womanly to wow.@@"<br>
<br>
<<if setup.getTotalValue("feminization") < 10>>
<span id ="thoughtFade">
<<fadeout 5s 5s>>
<<printThought $player 'But what if I do not want to be womanly?'>>
<</fadeout>>
</span>
<<timed 10s>>
<<replace "#thoughtFade">>
<<fadein 5s>>
<<printThought $player "I want to be womanly." 40>>
<</fadein>>
<</replace>>
<</timed>>
<br><br>
<</if>>
<<if $scene.laced > 75>>
Tossing your <<=setup.getItemName($scene.top)>> to the side she circles behind and runs her fingers down your spine and then over the neatly, and fully, laced corset back.<br>
<br>
"@@.npc_manager;Very good <<=$player.first_name>>. Most first-timer's stop lacing partway, leaving something ugly and only barely helpful. You, on the other hand, have once again proven what a good, overachieving sissy you are! I am so glad to have been assigned you as my secretary.@@"<br>
<br>
<<printThought $player "Assigned?, I thought she chose me?">> /* foreshadowing! */
<<else>>
<<if $scene.laced > 25>>
Removing your <<=setup.getItemName($scene.top)>> she circles around behind. Even without seeing her you can sense her shaking her head in dismay.<br>
<br>
"@@.npc_manager;I suppose it is all I could have expected from a novice; and at least you tried to lace it more than the minimum. Lesson time: a corset works best, and looks best, when it is laced ALL the way down, and my SISSY secretary should always strive for the best. Turn around.@@"<br>
<br>
You feel her untying the corset, the garment relaxing to give your body a momentary reprieve as she resets things.<br>
<br>
"@@.npc_manager;Now then. Show me how to do it PROPERLY.@@"
<<else>>
She peels off your <<=setup.getItemName($scene.top)>> and circles around behind.<br>
<br>
"@@.npc_manager;Oh no, this will not do at all!@@"<br>
<br>
You can feel her fingernail running from your neck down your spine, gently scratching your skin in between the wide-open laces in the rear of the corset.<br>
<br>
"@@.npc_manager;A proper corset should be laced until the back is touching all the way down - that is how it does the most good!@@"<br>
<br>
You feel her untying things, the barely laced corset soon only held up by resting on your hips.<br>
<br>
"@@.npc_manager;No, no, this will not do at all, here, try again.@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> presses the laces into your hands and waits as you attempt to pull them tighter.<br>
<br>
<<if setup.getTotalValue("strength") >= 10>>
It takes a bit of trial and error but, aided by her instruction, you get the hang of how to pull symmetrically without releasing slack. The work you've put in at the gym pays off as the corset steadily tightens around you.
<<elseif setup.getTotalValue("strength") >= 5>>
Even with her advice you're only able to get about halfway before your strength fails you and the laces just won't budge.<br>
<br>
Obviously frustrated she takes the laces from you and gives a mighty yank. Air is forced out of your lungs in a great woosh, the strength she so casually brings to bear a little scary. Feeling almost cut in half you think it's over only for the garment to tighten even further as she pulls out slack you didn't even think was there.
<<else>>
You strain as hard as you can but even with her giving technique suggestions you just don't have the strength to tighten the corset more than a couple centimeters or so.<br>
<br>
Taking the laces in hand <<=setup.getNpcName('npc_manager', 'formal')>> sets to work. Air is forced out of your lungs in a great woosh, the strength she so casually brings to bear a little scary. Feeling almost cut in half you think it's over only for the garment to tighten further as she pulls out slack you didn't even think was there.
<</if>>
<br><br>
By the end you are forced to take short, shallow breaths as <<=setup.getNpcName('npc_manager', 'formal')>> is good to her word, the back closing up and the corset tied off tight.<br>
<br>
Reaching around behind to run your fingers over the laces you are amazed at how the multi-inch gap has disappeared.<br>
<br>
<<printThought $player "My waist must look so tiny now...">>
<</if>>
<br><br>
Her hands back around your now oh-so-tiny waist <<=setup.getNpcName('npc_manager', 'formal')>> stands behind your back as you turn as one to face a mirror.<br>
<br>
"@@.npc_manager;Now THOSE are some proper sissy curves.@@"<br>
<br>
<<printThought $player "I look like something out of a Victorian novel...">><br>
<br>
"@@.npc_manager;I expect you to lace it like this whenever you wear a corset; which I hope you do often. If you find yourself struggling I will assist you in lacing it down in the morning... for a price.@@"<br>
<br>
<<if $scene.firstTask>>
<<completeTask 'task_uniform_upgrade' $now true>>
<<if setup.checkItemOwned("lingerie_store_receipt")>>
"@@.npc_manager;Now then, let us see how you are doing on your OTHER requirements.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_receipt" "Remember to give her the receipt for the corset." 60 "<<set $scene.item='pink_satin_corset'>>">>]<br>
[<<moveTo "event_manager_daily_check_stage_3" "Proceed to your normal morning inspection." 60 "<<wearItem $player $now $scene.top true>>">>]
<<else>>
[<<moveTo "event_manager_daily_forgot_receipt" "You expect her to move on to your daily undergarments inspection but she pauses, as if remembering something.." 60 "<<set $scene.item='pink_satin_corset'>>">>]
<</if>>
<<else>>
"@@.npc_manager;Now, if would put your top back on we may proceed with your morning inspection from the beginning.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 60 "<<wearItem $player $now $scene.top true>>">>]
<</if>>
</div>/*#
#desc: First time showing up to work with bespoke thigh highs
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<set _nextDate to setup.setNextDate($now, 0, 23, 0)>>
<<addTaskById 'bed_heels_photo' _nextDate>>
<<set $scene.firstTask = $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<if $scene.firstTask>>
<<completeTask 'task_uniform_upgrade' $now true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<if setup.daystoDate($now, setup.getTaskDueDate('task_uniform_upgrade')) != 0>>
Stepping out of her office <<=setup.getNpcName('npc_manager', 'formal')>> pauses, her gaze moving towards your shiny boots as she makes her approach. "@@.npc_manager;Oh yes, look at my eager A-SLUT, and ahead of schedule!@@"
<<else>>
No sooner have you stepped foot into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office when she appears and has you stand in the middle of her lair as she paces a slow circle around you.
<</if>>
<<else>>
Stepping out of her office <<=setup.getNpcName('npc_manager', 'formal')>> pauses, her gaze moving towards your shiny boots as she makes her approach.
<</if>>
Like a hungry beast her gaze glides down your body to trace from your pointed toes around and up your steep heels and past your knees
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>
to where they disappear under your tight skirt. Lifting your skirt to inspect she nods at how
<<else>>
and to near the top of your thighs where
<</if>>
the shiny pink boots continue up to stop just shy of your <<if setup.getItemTypeName("cage") != "">>caged crotch<<else>><<getWordPenis $player>><</if>>. Ending her loop she comes to a stop standing in front of you. You are a little surprised to find that in these heels you're actually the same height as her.
<<if setup.getTotalValue("submission") >= 10>>
On submissive reflex you tilt your head obediently downward.
<<else>>
Despite your even height, however, she still manages to appear to look down on you.
<</if>>
<br><br>
"@@.npc_manager;Very sexy" she states with a nod. "Tight, pink, steep and slutty. What more could an aspiring bimbo desire? This is exactly the sort of thing an A-SLUT stipend was meant to be spent on.@@"<br>
<br>
<<printThought $player "Oh thank <<getWordGod $player>>.<<if setup.getTotalValue('submission') >= 10>> I'm so glad <<=setup.getNpcName('npc_manager', 'formal')>> approves of these!<</if>>">>
<br><br>
Stepping back her initial pleasure turns into a slight frown as you wobble unsteadily. "@@.npc_manager;Hmm, walk to the door and back.@@"<br>
<br>
<<if setup.getTotalValue("heels") >= setup.getItemObj("platform_wedge_heels").heels.difficulty>>
You turn sharply to obey, walking comfortably and smoothly atop the steep heels thanks to your many hours of practice. Despite your skill, however, there is no denying that your current footwear are quite a challenge and you make a tiny mistake towards the end, one foot landing just a bit off and causing your ankle to wobble as you catch yourself.<br>
<br>
"@@.npc_manager;Hmm, so close and yet... No, I believe to truely put you over the top to high heel perfection some final, severe measures must be taken.@@"
<<elseif setup.getTotalValue("heels") < 5>>
You try to obey, wobbling and swaying and almost falling the whole time, forced to steady yourself on the doorknob as you almost take a tumble in the process of making your turn. Looking back towards <<=setup.getNpcName('npc_manager', 'formal')>> you turn beet red with embarrassment. Your feet were aching just leaving your apartment and by now your calves are on fire, every impossible step shooting pain from your toes all the way up your legs.<br>
<br>
"@@.npc_manager;No, that will not do at all. I love the heels, but the effect is ruined if you can barely stand in them! A sissy is meant to be dainty and graceful, not.... clumsy and awkward! No, no no, being a SISSY secretary means more than being on your back or knees, I cannot have my secretary looking like this!@@"
<<else>>
Turning as instructed you carefully walk to the door and back. Your time spent practicing in heels certainly helps but the thick, plush carpet makes for a bit of a challenge in your current steep footwear, resulting in not the most even of gaits.<br>
<br>
"@@.npc_manager;Hmm, you do not embarrass yourself in those boots but... well, there is yet work to be done.@@"
<</if>>
<br><br>
<<printThought $player "Oh shit, is she not going to count this as an upgrade?">><br>
<br>
"@@.npc_manager;Do not get me wrong, I admire the effort, and I will count it as you technically fulfilling the requirement to purchase a uniform upgrade but until you learn to walk properly in them I do not want them in my sight!@@"<br>
<br>
<<if setup.getTotalValue('feminization') >= 10 && setup.getTotalValue('submission') > 10 && setup.getTotalValue('bimbofication') > 10>>
<<printThought $player "But they're so sexy!, why can't I just stay on my knees?">><br>
<br>
<</if>>
"@@.npc_manager;Tell you what, so your purchase does not go to waste I have a suggestion. Go to the shoe store in the mall and ask for a pair of bed heels. They keep them in the back but they will know what you are talking about. Tell them you need a nice, secure pair. Once you have them remember to sleep in them every night.@@"<br>
<br>
"@@.npc_manager;Actually, you know what? I will help you out; send me a picture tonight before you tuck in. It may be a little outside the manager employee relationship but I am willing to take the time to further aid your development, besides, I definitely want to see your cute feet in bed heels for the first time! Wear them every night and before long your calves will stretch and your toes will adjust and you will be able to strut around in those hot boots anywhere!@@"<br>
<br>
<<if $scene.firstTask>>
<<completeTask 'task_uniform_upgrade' $now true>>
<<if setup.checkItemOwned("lingerie_store_receipt")>>
"@@.npc_manager;Now then, let us see how you are doing on your OTHER requirements.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_receipt" "Remember to give her the receipt for the boots." 60 "<<set $scene.item='pink_thigh_highs'>>">>]<br>
[<<moveTo "event_manager_daily_check_stage_3" "Proceed to your normal morning inspection." 60>>]
<<else>>
[<<moveTo "event_manager_daily_forgot_receipt" "You expect her to move on to your daily undergarments inspection but she pauses, as if remembering something.." 60 "<<set $scene.item='pink_thigh_highs'>>">>]
<</if>>
<<else>>
With a nod and a smile she continues on to your normal inspection.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 60>>]
<</if>>
</div>/*#
#desc: not wearing bespoke item when uniform upgrade task is due
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<include uniformUpgradeTask>>
<<applyExperience 'submission' 3 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> almost greets you at the door, though after a single cursory glance her gaze narrows in obvious annoyance.<br>
<br>
"@@.npc_manager;Did you forget what you were supposed to do for today?@@"<br>
<br>
<<printThought $player 'Oh crap, I was supposed to wear a new "upgrade" for my uniform to work this morning!'>><br>
<br>
"@@.npc_manager;Did you think just because you are cute I would not punish you? You know better than that! I expected even more from you now that you are striving to be A-SLUT!@@"<br>
<br>
With her standing in front of you with fire in her eyes you are still surprised by a blur and her hand impacts your cheek. The sound of flesh on flesh echoes through the office, your face stinging from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> harsh slap.<br>
<br>
"@@.npc_manager;What do you think of that, you stupid girl? You come in, trying to outsmart me and when I respond with kindness, cash and encouragement what is your response? You act the disobedient bitch! Do you know what happens to uncompliant whores? They get slapped.@@"<br>
<br>
<<if setup.getTotalValue("bdsm") >= 10>>
Even as the pain blooms across your rapidly-reddening cheek it is echoed with pleasure, your arousal rising in response to your Mistress' discipline.
<<if setup.getTotalValue("submission") >= 10>>
Your heart aflutter with sissy obedience you curtsey.<br>
<br>
"I'm so sorry, <<=setup.getNpcName('npc_manager', 'formal')>>. I promise to do better if you give me another chance." You beg.<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> expression softens in response to your obsequious groveling. She reaches out to caress your pained cheek and your nuzzle into her hand in response.<br>
<br>
"@@.npc_manager;Oh, you are just too. Cute! I might regret it but I will give you another week to figure out your uniform, but no more slacking now!@@"<br>
<br>
You give another curtsey, grateful to get out without further punishment; even if you enjoyed the feel of the slap disappointing your <<=setup.getNpcName('npc_manager', 'title')>> is a pain for which there is no balm.
<<else>>
Cowering you look back with fear at <<=setup.getNpcName('npc_manager', 'formal')>>. Her face is stern for several tense moments before slowly, but only slightly, softening.<br>
<br>
"@@.npc_manager;Now it is against my better judgment, but I am feeling merciful today. I will give you another week to sort things out; make sure you show up next Monday with your new uniform upgrade!@@"<br>
<br>
Still cowering, you nod quickly, not wanting to incur her further wrath.
<</if>>
<<elseif setup.getTotalValue("submission") >= 10>>
Wincing in pain you straighten and then curtsey before your Mistress.<br>
<br>
"I'm sorry. Please give me another chance and I promise to do as instructed." You meekly beg.<br>
<br>
Her face is stern for several tense moments, her arm still cocked for another blow. Finally, to your great relief, she lowers her hand.<br>
<br>
"@@.npc_manager;I suppose you are contrite, and I am feeling a touch merciful today. I will give you another week to sort things out, Make sure you show up next Monday with your new uniform upgrade!@@"
<<else>>
Surprised by the blow and in very much pain it's all you can do not to fall over as you stare back at your manager fearfully.<br>
<br>
Her expression of anger seems to catch, as if realizing she may have pushed you too far. Slowly her raised hand comes down without striking you again.<br>
<br>
"@@.npc_manager;A failure like this does not even deserve my time to punish you. I will give you another week to rectify the situation. You are on thin ice right now, so you should be sure to really impress me with your purchase!@@"<br>
<br>
Still cowering you nod quickly before she changes her mind or strikes you again.
<</if>>
<br><br>
<<printThought $player "That was a close one, I should make sure not to fail <<=setup.getNpcName('npc_manager', 'formal')>> again.">><br>
<br>
"@@.npc_manager;Now then, time to see if you at least managed your normal tasks. Let us continue with the normal inspection.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 60>>]
</div>/*#
#desc: manager checks uniform receipt
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.overage = (setup.getItemObj($scene.item).stipend_multiplier-1)*$npc_manager.flags.uniform_upgrade.stipend_amt>> /% all items are definitionally as or more expensive than the stipend, and at this point it's only possible to have bought one of them %/
<<deleteItem $player $now 'lingerie_store_receipt'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You pause, producing the receipt from your purchase and handing it to <<=setup.getNpcName('npc_manager', 'formal')>>. Taking the slip of paper in hand she glances at it before looking up with a smile.<br>
<br>
"@@.npc_manager;What a good A-SLUT you are!, You remembered to bring me the receipt for your purchase.@@"<br>
<br>
<<if $scene.overage == 0>>
"@@.npc_manager;Hmm, it looks like you managed to find something that cost precisely what you were allotted, how fortuitous! Thank you for obeying my instructions to the letter, but now it is time for your daily inspection!@@"<br>
<br>
<<if $scene.item=='pink_satin_corset'>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120 "<<wearItem $player $now $scene.top true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120>>]
<</if>>
<<else>>
"@@.npc_manager;Hmm, according to this your new item cost more than your stipend! I guess you dipped into your savings?@@" her tone is neutral and you wonder if you made a mistake, she never said anything about staying within budget but with her well... you can never be sure when some new rule might pop into existance.<br>
<br>
<<printThought $player "Did I do something wrong? I feel like my whole life is a trap!">>
<br><br>
"@@.npc_manager;Good sissy. Despite the added bonuses the real key to the A-SLUT programme is that you only get out of it what you put into yourself. Into developing yourself, that is. Taking initiative like this, well that definitely deserves a reward!@@"<br>
<br>
Returning to her desk she pulls out some credits, holding out <<=Math.floor($scene.overage*2)>> towards you.<br>
<br>
"@@.npc_manager;Here, a little bit extra in compensation for your excellent work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_receipt_accept" "Thank her for the money." 60 "<<set $scene.bonus=2*$scene.overage>>">>]<br>
[<<moveTo "event_manager_daily_check_receipt_reject" "Remember what happened last time and check if there are any strings attached." 60 "<<set $scene.bonus=2*$scene.overage>>">>]
<</if>>
</div>/*#
#desc: accept receipt reimbursement for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.money.total += $scene.bonus>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for the bonus.
<<switch setup.getMaxStat(["feminization", "bimbofication", "submission"])>>
<<case "feminization">>
You flash her your cutest smile and state that you will use it to further expand your wardrobe.
<<case "bimbo">>
You blow her a kiss and declaring you'll put it towards something else to make her proud.
<<case "submission">>
You drop into a submissive curtsey and thank her for the gift and promise to spend it well.
<<default>>
ERROR: should never happen
<</switch>>
<br><br>
"@@.npc_manager;Now that we are all squared up, I think it is time for your inspection.@@"<br>
<br>
<<if $scene.item=='pink_satin_corset'>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120 "<<wearItem $player $now $scene.top true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120>>]
<</if>>
</div>/*#
#desc: attempt to turn down reimbursement for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.money.total += $scene.bonus>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Mindful of how all of this started with you falling into a trap accepting "free" money you hesitate, unsure if it's wise to take the handful of cash.<br>
<br>
Her lips turn downward into a frown. "@@.npc_manager;Really, you do not trust me? Fine@@"<br>
<br>
Stepping closer <<=setup.getNpcName('npc_manager', 'formal')>>
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>
reaches under your skirt and
<<if setup.getItemFromType("cage") != "">>
grabs hold of your chastity cage.
<<else>>
and grabs your tiny cock and balls in one hand.
<</if>>
<<else>>
<<if setup.getItemFromType("cage") != "">>
grabs your chastity cage through your pants.
<<else>>
places her hand over your crotch.
<</if>>
<</if>>
<br><br>
"@@.npc_manager;I solemnly swear on your cute sissy clitty that this money is a gift from me to <<=$player.first_name>> and comes with no strings attached. It is merely an token of gratitude for my secretary's adorable obedience.@@"<br>
<br>
<<if setup.getItemFromType("cage") != "">>Your <<getWordMyPenis $player>> strains against its cage in excitement, but the stout restrain holds, as always.<<else>>Your <<getWordMyPenis $player>> swells to its full size in her grasp, even as her nails dig into your tender flesh to keep it under control.<</if>> Obediently you accept the offered money and tuck it away.<br>
<br>
Releasing the grasp on your <<getWordMyPenis $player>> <<=setup.getNpcName('npc_manager', 'formal')>> steps back.<br>
<br>
"@@.npc_manager;Now then, I believe it is time for your inspection?@@"<br>
<br>
<<if $scene.item=='pink_satin_corset'>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120 "<<wearItem $player $now $scene.top true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120>>]
<</if>>
</div>/*#
#desc: forgot to bring receipt for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Well? Where is the receipt for your purchase?@@"<br>
<br>
<<if !setup.inWardrobe('lingerie_store_receipt')>>
[<<moveTo "event_manager_daily_check_receipt" "Reminded of your duty you quickly reach into your pocket." 60>>]
<<else>> /*left receipt at home*/
Your heart sinks as you have foolishly left the receipt at home.<br>
<br>
"@@.npc_manager;So forgetful!, I know they gave you one and you misplaced it so quickly! What if I had not approved of your purchase and told you to return it? You would have been out your A-SLUT stipend with no way to recover but to sell your cute ass on the street!@@"<br>
<br>
<<if setup.getTotalValue("whoring") >= 5>>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought $player "Mmmm, I'd love to have <<=setup.getNpcName('npc_manager', 'formal')>> as my pimp...">>
<<else>>
<<printThought $player "How is that different from what I normally do?">>
<</if>>
<<else>>
<<printThought $player "Wait, what?">>
<</if>>
<br><br>
"@@.npc_manager;I really should punish you for your error but... well I am still too enamoured by your purchase. You get a reprieve, this time, but do not construe that to mean I am going soft on you! Now, we need to get to your inspection or we will never get any work done! Do not think my momentary lenience will extend to anything else.@@"<br>
<br>
<<if $scene.item=='pink_satin_corset'>>
[<<moveTo "event_manager_daily_check_stage_3" "Thank her profusely for the kindness." 120 "<<wearItem $player $now $scene.top true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3" "Thank her profusely for the kindness." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: finish a-slut phase 1
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.flags.uniform_upgrade.aslut_1_complete = true>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Watching you dress <<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile of approval slowly grows until you find yourself blushing at the force of her beaming pride.<br>
<br>
"@@.npc_manager;Wow, you finally did it. A well framed, feminine face, a narrow waist and perfect balanced on those heels. Nobody would suspect that you were anything other than my cute, submissive female secretary. I know how hard you have worked to get to this point, and I am sure we both know it was worth every punishment and struggle. Congratulations once again on exceeding my expectations, you are not just in A-SLUT you are A-SLUT... or at least the ideal it represents. Do not mistake this for your journey being over, in some ways it only gets harder from here. I can say with confidence that, with my continued guidance, you will rise to every challenge.@@"<br>
<br>
You tremble slightly at the compliment, unable to think of anything to do save curtsey and softly reply with "thank you, <<=setup.getNpcName('npc_manager', 'title')>>." <br>
<br>
Looking back up you can tell that you made the correct choice; she looks more proud than you have ever seen before, her expression somehow both swoon inducing and a little scary.<br>
<br>
She sighs in contentment. "@@.npc_manager;So lovely. And when I think of what is to come...@@" She shakes her head. "@@.npc_manager;No matter, that is the future, for now... well, you had better get to work, and I as well, lest I either rip those clothes off to savour the sweetness inside or just stand her admiring our wonderful work.@@"<br>
<br>
Still blushing you watch as she leaves before returning to your desk.<br>
<br>/%TODOfuture%/
Developer's note: End of <<=setup.getNpcName('npc_manager', 'formal')>> content... for now. But don't worry, all you aspiring A-SLUTs; there will be further tasks to come in future releases!<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start working." 360>>]
</div>/*#
#desc: ask about a "uniform upgrade" at the lingerie shop
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<div id="invframe" class="scrolltext">
Mindful of the secrecy of your contract you circuitously explain that you're looking to take your outfit "to the next level" to impress a "special someone." <br>
<br>
"@@.npc_shopkeeper;Ah! Young love!, perhaps the only thing more beautiful is the things I sell. I have exactly what you need to impress your special friend - not something off the rack they may have seen before but something as unique and wonderful as your devotion to them from our bespoke section. Come with me.@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 7>>
<<printThought $player "Ooooh, this sounds fun!">><br>
<br>
<</if>>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Follow her." 60>>]
</div>/*#
#desc: ask about a uniform upgrade as "something for a friend" at the lingerie shop
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<div id="invframe" class="scrolltext">
You get the feeling <<=setup.getNpcName('npc_shopkeeper', 'first')>> doesn't believe your story about buying something for your girlfriend
<<if setup.analyzeWornTags(['female','male','unisex']) == 'female'>>
especially considering you're dressed like a
<<if setup.checkVisibleClothingTag('maid') > 50>>
sissy maid
<<elseif setup.checkVisibleClothingTag('slutty') > 50>>
slut
<<elseif setup.checkVisibleClothingTag('sissy') > 50>>
sissy
<<else>>
girl
<</if>>
<</if>> at the moment. Still she indulges your little lie as you circuitously explain your "situation." <br>
<br>
After you have finished laying out what sort of thing you're thinking of she smiles.<br>
<br>
"@@.npc_shopkeeper;I think what you need is something from our bespoke selection, come with me.@@"<br>
<br>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Follow her." 60>>]
</div>/*#
#desc: shopping for "bespoke" items for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.bespokeCount = 0>>
<<set $scene.bespokeAvailable = true>>
<<for _i range $npc_shopkeeper.bespokeItems>>
<<set _box = _i + "_box">>
<<if !setup.checkItemOwned(_i) && !setup.checkItemOwned(_box)>>
<<set $scene.bespokeCount += 1>>
<<elseif !$npc_manager.flags.uniform_upgrade.item_comments[_i]>>
<<set $scene.bespokeAvailable = false>>
<<break>>
<</if>>
<</for>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<div id="invframe" class="scrolltext">
<<if $scene.bespokeAvailable>>
<<if $scene.bespokeCount == 0>>
The shopkeeper shakes her head. "@@.npc_shopkeeper;You already own all the bespoke items I had on hand. Check back in the future; I am always looking for new, hot things to offer our most valued customers.@@"
<<else>>
Leading you to a back room <<=setup.getNpcName('npc_shopkeeper', 'first')>> eyes you severely for a few moments before fetching <<=$scene.bespokeCount>> boxes of quite different sizes.<br>
<br>
"@@.npc_shopkeeper;Here you go, I think any, or maybe all! of these three items would be just perfect for your needs.@@"<br>
<br>
<<for _itemId range $npc_shopkeeper.bespokeItems>>
<<set _item = setup.getItemObj(_itemId)>>
<<if !setup.checkItemOwned(_itemId) && !setup.checkItemOwned(_box)>>
<<set _packageId = _itemId + "_box">>
<<set _setItem = '<<set $scene.itemId="' + _itemId + '">>'>>
[<<moveTo "room_mall_lingerie_shop_bespoke_desc" "Examine the contents of the <<=setup.getItemObj(_packageId).name>>." 120 _setItem>>]<br>
<<if $player.money.total >= (_item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt)>>
<<set _tmpSetStr = "<<set $scene.item=_item>><<set $scene.itemId='" + _itemId +"'>><<set $scene.item_package='" + _packageId + "'>>">>
[<<moveTo "room_mall_lingerie_shop_bespoke_purchase" "Purchase <<=_item.name>> for <<=_item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt>> credits." 120 _tmpSetStr>>]
<<else>>
[@@.link_locked;You cannot afford <<=_item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt>> credits for <<=_item.name>>.@@]
<</if>>
<<else>>
[@@.link_locked;You already purchased <<=_item.name>>.@@]
<</if>>
<br>
<</for>>
<</if>>
<<if (setup.checkItemOwned("gold_hoop_earrings_box") || setup.checkItemOwned("pink_thigh_highs_box") || setup.checkItemOwned("pink_satin_corset_box"))>>
You should head home with your purchases rather than lug the boxes around.<br>
<br>
[<<moveTo "event_mall_lingerie_shop_bespoke_purchase_leave" "Take your purchase home." 60>>]
<<else>>
[<<moveTo "room_mall_lingerie_shop" "Return to the main store." 60>>]<br>
[<<moveTo "room_mall" "Leave the store." 60>>]
<</if>>
<<else>>
<<printThought $player 'I should really wait to see what <<=setup.getNpcName("npc_manager", "formal")>> thinks of what I have already purchased before I splurge on anything else...'>><br>
<br>
[<<moveTo "room_mall_lingerie_shop" "Return to the main store." 60>>]<br>
[<<moveTo "room_mall" "Leave the store." 60>>]
<</if>>
</div>/*#
#desc: examine a bespoke item for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.item = setup.getItemObj($scene.itemId)>>
<<set $scene.item.price = $scene.item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt>>
<<set $scene.item.inspected = true>>
<<set $scene.item_package = $scene.itemId + "_box">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<div id="invframe" class="scrolltext">
You carefully open the <<=setup.getItemObj($scene.item_package).name>> to find a <<if $scene.itemId == "gold_hoop_earrings">>pair of <</if>><<=$scene.item.name>>. Looking up you find <<=setup.getNpcName('npc_shopkeeper', 'first')>> smiling back at you with obvious pride.<br>
<br>
"@@.npc_shopkeeper;<<=$scene.item.shopkeep_desc>> will cost you a mere <<=$scene.item.price>>; a true bargain for something of this beauty and craftsmanship.@@"<br>
<br>
<<printThought $player "<<=$scene.item.browse_comment>>">><br>
<br>
<<if $player.money.total >= $scene.item.price>>
[<<moveTo "room_mall_lingerie_shop_bespoke_purchase" "Buy it." 120>>]<br>
<<else>>
[@@.link_locked;Sadly, you can't afford <<=$scene.item.name>>.@@]<br>
<</if>>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Look at something else." 60>>]
</div>/*#
#desc: purchase a bespoke item for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.item = setup.getItemObj($scene.itemId)>>
<<set $scene.item.price = $scene.item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt>>
<<set $player.money.total -= $scene.item.price>>
<<addItem $scene.item_package>>
<<switch $scene.itemId>>
<<case 'pink_thigh_highs'>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_17'
9
'psychiatrist_uniform_upgrade_pink_thigh_highs'
false
'theme_psychiatrist_manager_header'
>>
<<case 'gold_hoop_earrings'>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_18'
9
'psychiatrist_uniform_upgrade_gold_hoop_earrings'
false
'theme_psychiatrist_manager_header'
>>
<<case 'pink_satin_corset'>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_19'
9
'psychiatrist_uniform_upgrade_pink_satin_corset'
false
'theme_psychiatrist_manager_header'
>>
<</switch>>
<<if !$currentTasks['task_uniform_upgrade'].finished>>
<<addItem "lingerie_store_receipt">>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/mall_lingerie_shop.png" "./images/characters/npc_shopkeeper.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_shopkeeper', 'first')>> beams at your selection. "@@.npc_shopkeeper;Excellent choice, these are going to send all the right messages if you know what I'm saying.@@"<br>
<br>
You merely nod as she boxes things up for you,
<<if setup.getTotalValue("feminization") >= 10>>
already excited at the prospect of taking your new purchase home to try.
<<else>>
still a bit scared at the prospect of wearing what you just bought.
<</if>>
<br><br>
<<if !$currentTasks['task_uniform_upgrade'].finished>>
As you finish you remember to ask <<=setup.getNpcName('npc_shopkeeper', 'first')>> for a receipt. She prints it off with a smile.<br>
<br>
<<printThought $player 'A sense of relief flows through you as you feel certain this will satisfy <<=setup.getNpcName("npc_manager", "formal")>> as an "upgrade." <<if $scene.item.stipend_multiplier > 1>>If only you had not needed to chip in your own money on top of the stipend to pay for it.<</if>>'>><br>
<br>
<<else>>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Look at something else." 60>>]
<</if>>
[<<moveTo "event_mall_lingerie_shop_bespoke_purchase_leave" "Take your purchase home." 60>>]
</div>/*#
#desc: arrive home with bespoke purchase
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You hurry home, hoping nobody you recognise sees you carrying the large bag with "I'm a Happy Girl Because I Shop at <<printShopName 'mall_lingerie_shop'>>!" printed on the side.<br>
<br>
[<<moveTo "room_livingroom" "Once home you sit down on the couch and consider your next move." 60>>]
</div>/*#
#desc: Tighten your corset during lunch
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if setup.getTotalValue("strength") <= 5>>
<<set $player.timebased.tightlacing = $player.timebased.tightlacing * .75>>
<<else>>
<<set $player.timebased.tightlacing = 100>>
<</if>>
<<applyExperience 'strength' 10 'almost' $ALONE>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
Running your fingers along the back of your corset your suspicions are confirmed; over the course of the morning the laces have loosened just enough that the once-smooth closed line formed by the two sides meeting snugly has turned jagged with a couple of pinkie-width gaps. Taking what passes for a deep breath in the still-constrictive garment you attempt to address this problem.<br>
<br>
<<if setup.getTotalValue("strength") <= 5>>
Even the slight distance you need to tighten is too far for your weak arms. In fact, your attempts only make it worse as your body rebels, forcing the corset open wider before you can stop things. Though you are loathe to interrupt her there is really no choice but to ask for help from <<=setup.getNpcName('npc_manager', 'formal')>> if you want to have your corset "properly" laced for the afternoon.<br>
<br>
[<<moveTo "event_work_lunch_corset_help" 'Ask <<=setup.getNpcName("npc_manager", "formal")>> to re-lace you.' 120>>]<br>
[<<moveTo room_office_sissy_secretary_work_lunchbreak "Don't bother your boss." 60>>]
<<elseif setup.getTotalValue("strength") < 10>>
Though you aren't able to lace your corset this far on your own you actually manage to re-close it, a burst of energy combined with the lingering effects of being tightly compressed all morning just enough for you to manage getting that perfectly closed nonexistent reargap without assistance.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Running your fingers over the tight laces with satisfaction you check how much longer you have in your lunch break." 300>>]
<<else>>
It is no trouble for you to pull the corset to close the small gap. You imagine hearing the back panels of the corset slamming shut, the renewed pressure crushing your body in a now-familiar, almost comforting, manner.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Running your fingers over the tight laces with satisfaction you check how much longer you have in your lunch break." 240>>]
<</if>>
</div>/*#
#desc: visit manager for help tightening your corset during lunch
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if !$scene.foodDelivery.right>>
<<include checkFoodDelivery>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Knocking on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> door you peek in to find her busy, as always. <br>
<br>
<<switch $scene.foodDelivery.outcome>>
<<case 'eat' 'right'>>
Finishing up her lunch she looks up from her meal to meet your gaze.<br>
<br>
"@@.npc_manager;Yes, <<=$player.first_name>>?@@"<br>
<br>
[<<moveTo "event_work_lunch_corset_help_2" "Ask her for help with your corset." 60>>]<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Apologise for the interruption and retreat." 60>>]
<<case 'disciplinarymeasure'>>
She glances up, clearly annoyed at your having mangled her lunch order.<br>
<br>
"@@.npc_manager;What do you want? Did you screw something else up?@@"<br>
<br>
[<<moveTo "event_work_lunch_corset_help_2" "Ask her for help with your corset." 60>>]<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Apologise and retreat." 60>>]
<<case "">>
She glances up as you enter, her gaze narrowing when she notices that you are not carrying a food container. "@@.npc_manager_dom;Where is my lunch?!@@"<br>
<br>
"Coming soon!" you yelp as you retreat from her office before you absorb any more of her wrath.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue" 1>>]
<<default>>
ERROR: unexpected food deliver.outcome: <<=$scene.foodDelivery.outcome>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue" 1>>]
<</switch>>
</div>/*#
#desc: Ask manager for help tightening your corset at lunch
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.timebased.tightlacing = 100>>
<<applyExperience 'submission' 8 'almost' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.foodDelivery.outcome == 'eat'>>
"@@.npc_manager;Of course I will help you lace back up.@@"
<<else>>
"@@.npc_manager;I suppose I can help get you laced back up.@@"
<</if>>
<br><br>
Walking across her office you turn your back and she swiftly exposes and snugs up your corset, giving your prominent hips a gentle pat before lightly swatting your rear.<br>
<br>
"@@.npc_manager;There you go, back to a nice feminine hourglass, but now I think it is time we both returned to our work.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Thank her and leave to finish your lunchbreak." 120>>]
</div>/*#
#desc: manager punishes your lack of heels by making you spend the morning standing on a book
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<deleteItem $player $now $scene.shoes>>
<<set _nextDate to setup.setNextDate($now, 0, 11, 59)>>
<<addEvent 'heels_training_followup'
'{"trigger":"always","type":"date"}'
'{"szene":"event_lunch_heels_training_1"}'
_nextDate>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You hand her your shoes as instructed and nervously wait as <<=setup.getNpcName('npc_manager', 'formal')>> moves your chair out of the way and places a thick book on the floor a short distance back from your desk.<br>
<br>
"@@.npc_manager;Come, stand here.@@"<br>
<br>
She points at the book. It seems odd but question her is probably the last thing you should do. Walking over you do as she instructs, standing on the book and looking back at her in confusion only for her gaze to narrow in annoyance.<br>
<br>
"@@.npc_manager;No, not like that. Heels on the book, toes on the ground.@@"<br>
<br>
You suddenly understand what's going on - the fat book is a makeshift, and unpadded, facsimile of standing in almost seven centimeter heels. Doing as she says your feet almost immediately complain,
<<if setup.getTotalValue("submission") >= 10>>
<<if setup.getTotalValue("bdsm") >= 7>>
the ache a constant reminder of your <<=ps(setup.getNpcName('npc_manager', 'formal'))>> divine will.
<<else>>
but you don't even consider moving ad risking punishment.
<</if>>
<<else>>
though you know better by now than to move.
<</if>>
<br><br>
"@@.npc_manager;Good. Now look up there? You see that dot in the corner? That is a camera so I can keep an eye on... disobedient secretaries. If I check and see you not standing as you are now, well.... I doubt you want me to come up with something worse, do you?@@"<br>
<br>
You look at the distance between yourself and your computer desk then back at her. "But... how will I work?" <br>
<br>
Already walking away she glances over her shoulder as she opens the door to her inner office.<br>
<br>
"@@.npc_manager;Bend over? You are familiar with that, I believe. Besides, you are the secretary, it is not on me to figure out how you do your job, only confirm that it is completed to my satisfaction.@@"<br>
<br>
Somewhat awkwardly you lean forward, forced to half-fall the final distance before you're able to support some of your weight with your elbows and awkwardly reach the keyboard.<br>
<br>
"@@.npc_manager;See? That was not so hard... and you do look quite fetching bent over a desk.@@"<br>
<br>
The door to her office closes behind as you blush.<br>
<br>
<<printThought $player "It is going to be a long morning.">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start your day." 1>>]
</div>/*#
#desc: refuse to do heel training after not texting her pre-sleep selfie
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.seriousoffense = true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You get dressed and slip your heels on defiantly.<br>
<br>
"@@.npc_manager;And just what do you think you are doing, I said to leave your shoes off. I need to punish you for your failure to send me a status picture.@@"<br>
<br>
<<if setup.getTotalValue("submission") < 10>>
<<if setup.getWillpower($player) > 5>>
<<printThought $player "It's not right for her to make requirements on my time after hours!">>
<<else>>
<<printThought $player "Oh no...">>
<</if>>
<<else>>
<<printThought $player "Why did I say something so disobedient? I know better than that...">>
<</if>>
<br><br>
"@@.npc_manager;If you are going to cop an attitude like this I do not think you can properly discharge your duties as my secretary. Go home and spend some time thinking about your future at this company.@@"<br>
<br>
You are at the door when she makes a final note.<br>
<br>
"@@.npc_manager;Oh, and <<=$player.first_name>>? If you want to start regaining my favour you should head straight for the mall so that you can send me my picture tonight.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought $player "Yes <<=setup.getNpcName('npc_manager', 'formal')>>, I'm sorry <<=setup.getNpcName('npc_manager', 'formal')>>...">>
<<else>>
<<printThought $player "I really ought to stop antagonizing her like this...">>
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Leave the office." 120>>]
</div>/*#
#desc: deliver manager's lunch wearing platform wedge heels
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<include checkFoodDelivery>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<addItem "platform_wedge_heels">>
<<swapItem $player $now "platform_wedge_heels">>
<<if setup.getTotalValue("heels") >= setup.getItemObj("platform_wedge_heels").heels.difficulty>>
<<set $scene.heelsSkill = 'high'>>
<<set $npc_manager.flags.uniform_upgrade.lunch_heel_training_complete = true>>
<<setThreshold 'dexterity' 'other' 'heel_training' true>>
<<elseif setup.getTotalValue("heels") < 5>>
<<set $scene.heelsSkill = 'low'>>
<<else>>
<<set $scene.heelsSkill = 'mid'>>
<<if !setup.hasThreshold("heels", 'wearing_heels', 'intermediate')>>
<<setThreshold 'heels' 'wearing_heels' 'intermediate' true>>
<</if>>
<</if>>
<</if>>
<<if $scene.heelsSkill == "low">>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<else>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.heelsSkill == "low">>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<<else>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.heelsSkill>>
<<case "high">>
Quickly sliding your feet into the wedge heels you take an experimental step and immediately feel quite confident. Full of enthusiasm you grab the book <<=setup.getNpcName('npc_manager', 'formal')>> had you train with, balancing it carefully on your head before carefully picking up her lunch and walking towards the door to the inner office.<br>
<br>
Knocking once formally you open the door and start walking towards her desk. You are halfway across the room before she looks up, an expression of surprise quickly fading to a wide grin of... pride?, or perhaps possessive lust...<br>
<br>
She devours you with her gaze the remainder of your journey as you approach her desk and gently place her lunch down while giving a small curtsey - the book remaining balanced on your head the entire time.<br>
<br>
"@@.npc_manager;Well look at this skilled sissy. Thank you for the delightful delivery; <<if $scene.foodDelivery.right>>and it is exactly what I ordered! Good girl,<<else>>why, I am so pleased that I will forget that this is not the dish I requested. Sometimes it is all about the plating and for this presentation...<</if>> I think you deserve a reward. Hmmm, I know! You may wear those heels for the remainder of the day - and home, I would call them a gift but you have earned them for certain.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10 && setup.getTotalValue("feminization") >= 10 && setup.getTotalValue("bdsm") >= 10>>
<<printThought $player "Oooo, more shoes <<=setup.getNpcName('npc_manager', 'formal')>> is so good to me!">>
<<else>>
<<printThought $player "Wait, how is THAT considered a reward???">>
<</if>>
<br><br>
Carefully maintaining the balance of the tome atop your skull you give another dainty curtsey that has <<=setup.getNpcName('npc_manager', 'formal')>> smile even wider before carefully mincing in a tight circle and walking back out of the room.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300>>]
<<case "mid">>
Wincing just a little you pull on the wedge heels and take an experimental step. You wobble a tad but feel confident enough, picking up <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch and carefully walking towards her office.<br>
<br>
Opening the door and sliding inside you've made it several wobbly steps towards her desk before she looks up, a look of surprise turning to one of mild amusement as you stagger your way across the room to place the lunch on her desk.<br>
<br>
"@@.npc_manager;A valiant effort, but it seems you still need more training before you can add those to your repertoire.@@"<br>
<br>
She peers inside the container <<if $scene.foodDelivery.right>>"@@.npc_manager;on the upside, at least you got my order correct.@@"<<else>>"@@.npc_manager;Hmm, and you failed to get the correct order... disappointing, but I suppose your mind was on other things...@@"<</if>>
<br><br>
Frustrated that you didn't do better you nod in thanks, bracing on her desk as you turn before staggering back out of the room.<br>
<br>
Back in the antechamber you gratefully collapse into your chair, changing back into your previous shoes and tucking the impossible wedges back under the desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "You glance at the clock to see if you have time to accomplish anything else before your afternoon shift starts." 120 "<<swapItem $player $now $scene.shoes>><<deleteItem $player $now 'platform_wedge_heels' true>>">>]
<<case "low">>
You swiftly realise this was not a great idea, your feet crying out in pain from the moment you stuff them into the severe wedge heels.<br>
<br>
<<printThought $player "Should I have done some stretches first? I feel less stable than the first time! Perhaps this is not a good plan...">><br>
<br>
<<if setup.getWillpower($player)>0>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood_clumsy" "Caution is for quitters, press on with your plan." 120 "<<spendWillpower $player 1>>">>] <<hint $options "This will require exerting an act of will.">><br>
<<else>>
[@@.link_locked;You do not have the mental reserves to force your body to strain so hard@@]<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood" 'Discretion is the better part of valor, change back and just deliver <<=ps(setup.getNpcName("npc_manager", "formal"))>> lunch normally.' 60 '<<swapItem $player $now $scene.shoes>><<deleteItem $player $now "platform_wedge_heels" true>>'>>]
<<default>>
ERROR: invalid high heel skill!
<</switch>>
</div>/*#
#desc: clumsily deliver manager lunch in heels
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.affection += 1>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Too stubborn to give up on your plan you lean hard against your desk and stagger around to pick up <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch. Taking a deep breath you leap/stagger/flail across the handful of paces between your desk and the door to her office, clinging to the hefty brass doorknob for dear life.<br>
<br>
Shuffling to one side you open the door and half step, half fall inside. Somehow she hasn't noticed you yet and you try to walk across the empty gulf between you and her imposing desk.<br>
<br>
Trying to walk in these cursed heels without anything to hold onto proves to be the biggest mistake in an already very flawed plan. You've barely made it a few feet when your right ankle twists and you tumble to the ground. The clatter causes <<=setup.getNpcName('npc_manager', 'formal')>> to finally notice your presence, looking up from her work then slightly rising in her chair to watch you from above as you just give up and crawl the rest of the way to her desk.<br>
<br>
Reaching up you place the lunch box on her desk, hoping the contents haven't been too scrambled.<br>
<br>
"@@.npc_manager;No, do not try to get up. As much as I enjoy watching you crawl towards me I think we both know this was not one of your cleverest ideas. I appreciate the effort but... be a good girl and crawl back to your desk and leave those shoes for when you have improved or I am there to supervise.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought $player "I'm sorry for embarrassing you <<=setup.getNpcName('npc_manager', 'formal')>>...">>
<<else>>
<<printThought $player "Well that didn't go as planned">>
<</if>>
<br><br>
Nodding you turn around and go, feeling her gaze burning into your bubble butt until you slip through the door and out of the office.<br>
<br>
By the time you have reached your desk and changed back into your normal shoes your lunchbreak is over. Your feet still cramped and in need of massage you ignore the pain and get back to work. A message pops up <<if $scene.foodDelivery.right>>"@@.npc_manager;I forgot to thank you for getting my order correct - good girl, but maybe practice a bit more with heels before you try something like that again?@@"<<else>>"@@.npc_manager;For the record, what you delivered was NOT what I ordered. I will let it slide this once but you really need to pay attention to your core duties, even while you continue to work on expanding your skills.@@"<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Continue" 600 "<<swapItem $player $now $scene.shoes>><<deleteItem $player $now 'platform_wedge_heels' true>>">>]
</div>/*#
#desc: lunchtime heel training
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.punishment = false>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You've just putting your head down for a quick nap when <<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office.<br>
<br>
"@@.npc_manager;What is this, taking a nap? Such a waste of time! Come now, let us use your lunchbreak more productively and get in some practice at walking in heels! Here, put these on.@@"<br>
<br>
Looking up you find that she has produced a pair of steep pink wedge heels.<br>
<br>
[<<moveTo "event_lunch_heels_training_2" "Put on the shoes" 60>>]
</div>/*#
#desc: lunchtime heel training punishment intro
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.uniform_upgrade.bed_heel_punish = false>>
<<set $scene.punishment = true>>
<<set $scene.foodDelivery.done = true>> /% hack so she doesn't yell at you about food %/
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
By the time lunch rolls around your feet are on fire and your calves are practically spasming with strain. Watching the clock tick down as you eagerly look forward to relaxing a bit and recovering during your break you are instead surprised by <<=setup.getNpcName('npc_manager', 'formal')>> walking out of her office at noon sharp.<br>
<br>
"@@.npc_manager;Alright, I think you have learned the first part of your lesson. You may step off the book now.@@"<br>
<br>
Somehow flattening your feet sends fresh jolts of pain through your ankles as your arches howl in agony. You still savor the relief as you stand up, your back, too stiff from being literally bent over your computer for so long. Wincing and trying to stretch it is several seconds before you realise that <<=setup.getNpcName('npc_manager', 'formal')>> is still staring at you, and she is holding a pair of heels...<br>
<br>
"@@.npc_manager;So nice of you to notice. Put these on. While you may have learned your lesson for disobeying me it is now time to focus on the original goal and get you learned at walking in heels. Put these on.@@"<br>
<br>
[<<moveTo "event_lunch_heels_training_2" "Put on the shoes" 60>>]
</div>/*#
#desc: lunchtime heel training
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if !$scene.hasOwnProperty('shoes')>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<</if>>
<<addItem "platform_wedge_heels">>
<<swapItem $player $now "platform_wedge_heels">>
<<set $npc_manager.flags.uniform_upgrade.lunch_heel_training += 1>>
<<if setup.hasThreshold('heels', 'heel_training', 'basic_training')>>
<<applyExperience 'heels' 11 'terrible' $SEEN_FRIEND>>
<<else>>
<<setThreshold 'heels' 'heel_training' 'basic_training' true>>
<</if>>
<<applyExperience 'dexterity' 7 'normal' $SEEN_FRIEND>>
<<set $scene.first_time = $npc_manager.flags.uniform_upgrade.lunch_heel_training == 1>>
<<applyFatigue $player 10>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("heels") >= setup.getItemObj("platform_wedge_heels").heels.difficulty>>
You slip into the shiny pink wedge ankle boots with ease, by now well used to heels of their stature.
<<else>>
<<if $npc_manager.flags.uniform_upgrade.lunch_heel_training == 1>>
The pair of shiny pink wedge ankle boots have heels that utterly dwarf your Mary Jane's and you wonder how you are expected to walk, much less "master" such steep footwear. Zipping them up and strapping them on you find that the larger base makes them a bit easier to balance on than thinner heels, though their steepness still has your calves, ankles and arches whimpering in pain.
<<else>>
Once again you zip up the pink wedge ankle boots. <<if setup.getTotalValue("heels") >= setup.getItemObj('platform_wedge_heels').heels.difficulty>>They feel surprisingly comfortable this time.<<elseif setup.getTotalValue("heels") > 5>>Though steep they don't feel quite as intimidating as previously.<</if>>
<</if>>
You look down in slight surprise as you now stand slightly taller than your boss, you find her holding out <<if $scene.punish>>the book that served up your morning's torment<<else>>a thick hardcover book<</if>>.
<</if>>
<br><br>
"@@.npc_manager;It is time for some good old-fashioned training techniques. Balance this on your head and start walking. You are done when you make a full loop of this room without it falling or the end of your break, whichever happens first.@@"<br>
<br>
<<if setup.getTotalValue("heels") >= setup.getItemObj('platform_wedge_heels').heels.difficulty>>
Your training in heels has really paid off as you find it almost natural to stand in what you would have once considered ludicrously steep footwear. Taking the book with a nod you place it gently on your head and begin to walk, gracefully completing a full circuit with ease and finishing off with a gentle curtsey.<br>
<br>
Obviously impressed <<=setup.getNpcName('npc_manager', 'formal')>> graces you with a smile before removing the book and rewarding you with a head-pat.<br>
<br>
"@@.npc_manager;Very good! Your training is coming along quite nicely.@@" You blush and thank her for taking the time to help.
<<else>>
<<if setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bdsm") >= 10>>
Even though it makes you wince to bend your legs you give a slight curtsey, grateful for her thoughtfully gracing you with even this harsh attention.
<<else>>
If you weren't effectively hobbled by your towering footwear you would be tempted to run, instead you let her balance the book on your head and take a step.
<</if>>
<br><br>
<<if setup.getTotalValue("heels") > 5>>
Though the wedge heels are far too high for you, and your feet ache from your morning position, you are not a complete incompetent. You manage to keep the book balanced for a couple steps before it slips. Gritting your teeth in determination you reset and try again.<br>
<br>
Despite brief periods of success you still spend most of your lunch period under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> critical gaze but somehow, with ten minutes to go, you manage to put it all together. Reaching the end of the circuit around the small room you want to collapse in relief but are cognisant to remain standing and still, the book still balanced on your head.<br>
<br>
"@@.npc_manager;Very good, you still have a lot of practice to do before anyone would mistake you for graceful, but that will suffice for today.@@"
<<else>>
You haven't even put your foot down from your first step when the book slips off your head. You replace it and focus harder but little changes over the course of your lunch break. Your calves and feet are already exhausted from the morning's punishment. The heels are nigh impossible on their own and you are unsure if you could even manage the book balancing in flats - years working in front of a computer don't exactly translate to great posture.<br>
<br>
Still, you have no choice but to continue to try under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful gaze, listening intently to her occasional tips though it does not seem to help much. Eventually your lunch period ticks away with the completion of a full loop unaccomplished.
<</if>>
<br><br>
Your lunch training finally finished <<=setup.getNpcName('npc_manager', 'formal')>> rolls your office chair across the room towards you.
<</if>>
<br><br>
"@@.npc_manager;I think that will do for today. You may put your normal shoes back on, but leave those wedges under your desk. They belonged to your predecessor, perhaps looking down at them will remind you of her success and motivate you to improve yourself.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start Working." 1800 '<<swapItem $player $now $scene.shoes>><<deleteItem $player $now "platform_wedge_heels">>'>>]
</div>/*#
#desc: check corset lacing
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<</if>>
<div id="invframe" class="scrolltext">
You reach behind your back to check the lacing on your corset.<br>
<br>
<<if $player.timebased.tightlacing == 100>>
You cannot fit so much as a fingernail between the rear panels of your corset, your are perfectly and completely laced down, the corset <<if setup.getTotalValue("bdsm") > 5>>delightfully<</if>>crushing you into a more feminine shape.<br>
<br>
Your hands shift to marvel at your oh-so-narrow waist, fit to take the breath away from you and any who look upon you.<br>
<br>
<<if $player.flags.uniform_upgrade.autoLacing>>
<<printThought $player "Those auto-laces really live up to the hype...">><br>
<br>
<</if>>
[<<moveTo "event_corset_lacing_loosen" "Loosen your laces." 30>>]<br>
[@@.link_locked;There is no further tightening to be done.@@]
<<elseif $player.timebased.tightlacing == 0>>
Your corset hangs loose around your body, the lacings having not been tightened in the slightest.<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought $player "Hmm, I should really do something about this.">>
<<else>>
<<printThought $player "Why am I even wearing this thing?">>
<</if>>
<br><br>
[@@.link_locked;Any looser and the corset would just fall off your body.@@]<br>
[<<moveTo "event_corset_lacing_1" "Tighten your laces." 30>>]
<<else>>
<<if $player.timebased.tightlacing >= 75>>
You can barely fit a finger in between the rear panels of the corset. It will take a fair bit of strength to cinch tighter and close this lingering gap.
<<elseif $player.timebased.tightlacing >= 50>>
There is a couple-finger gap in the back of the corset. It will take a bit of effort to pull it tighter so that it may more fully sculpt your body.
<<elseif $player.timebased.tightlacing >= 25>>
The corset is snug, but will do little to shape your body unless you tighten it further.
<<else>>
The corset is technically laced, but only barely with a substantial gap between the rear panels.
<</if>>
<br><br>
[<<moveTo "event_corset_lacing_loosen" "Loosen your laces." 30>>]<br>
[<<moveTo "event_corset_lacing_1" "Tighten your laces." 30>>]
<</if>>
<br>
[<<moveTo $locationbeforeuseage "Leave the laces as they are." 1 "<<set $roomchange = false>>">>]
</div>/*#
#desc: unlace corset
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<if !$player.flags.uniform_upgrade.autoLacing>>
<<set $player.timebased.tightlacing = 0>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.flags.uniform_upgrade.autoLacing>>
You attempt to loosen the auto-laces but they remain firm; the only way to obtain even the slightest slack would result in the corset falling from your body. The result is that you're stuck, either laced all the way down or totally un-corseted.<br>
<br>
<<if setup.getTotalValue("feminization") > 15>>
<<printThought $player "Well that's an easy choice, bring on that hip shelf, yay!">>
<<elseif setup.getTotalValue("submission") > 15>>
<<printThought $player "Well, I know what <<=setup.getNpcName('npc_manager', 'title')>> would prefer...">>
<<else>>
<<printThought $player "The high price of convenience...">>
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage "Back." 120 "<<set $roomchange = false>>">>]
<<else>>
Unknotting the laces you relax and let the corset loosen. Letting out a sigh of relief you retying it without pulling it snug in the slightest.<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought $player "Why did I do that? This isn't how to wear a corset!">><br>
<br>
<</if>>
[<<moveTo $locationbeforeuseage "Done." 120 "<<set $roomchange = false>>">>]
<</if>>
</div>/*#
#desc: attempt to lace your corset
#status: RELEASED 0.6.0.0
#*/
/* Theoretically, apartment manager could help with this, TODOfuture until his relationship is implemented */
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<if setup.getTotalValue("strength") <= 5>>
<<set $player.timebased.tightlacing = 25>>
<<elseif setup.getTotalValue("strength") >= 10>>
<<set $player.timebased.tightlacing = 75>>
<<else>>
<<set $player.timebased.tightlacing = 50>>
<</if>>
<<applyExperience 'strength' 10 'slightly' $ALONE>>
<</if>>
<<createBGR "./images/scenes/TODOscene_lace_corset_1.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("strength") <= 5>>
You tug at the lacings of your corset but you just do not have the strength to pull it closed around your body. Straining and puffing you manage to shrink the gap by perhaps half an inch before needing to give up. You are too weak, there is just no way you are getting it tighter without someone's help.<br>
<br>
[<<moveTo $locationbeforeuseage "Looks like that's all you can do on your own." 120 "<<set $roomchange = false>>">>]
<<elseif setup.getTotalValue("strength") >= 10>>
Your toned arms pull strong and steady, drawing the corset closed and forcibly reshaping your body in the process. Spring steel and strength wins out over flesh and bone, the garment drawing in and then forcing itself further as it sculpts you into a feminine hourglass shape. Pausing for a moment to let your body adjust you note that you still have a few centimeters gap to close if you want to take it all the way.<br>
<br>
This seems like a nice compromise between a slight hourglass shape and your ability to breath.<br>
<br>
[<<moveTo $locationbeforeuseage "Tie it off." 120 "<<set $roomchange = false>>">>]<br>
[<<moveTo "event_corset_lacing_2" "No half measures; lace it the rest of the way." 300>>]
<<else>>
Putting all your strength into it you slowly compress the corset around your body. Your breaths coming short and quick your tummy is crushed and your ribs flex inward as the steel bones of the corset ruthlessly reshape your body. Starting to feel dizzy you pause for a moment. Checking behind you find there is still a couple centimeters of gap.<br>
<br>
Your body has a bit of hourglass shape and you can still breath, sort of.<br>
<br>
[<<moveTo $locationbeforeuseage "That's good enough." 120 "<<set $roomchange = false>>">>]<br>
[<<moveTo "event_corset_lacing_2" "Attempt to lace it the rest of the way." 300>>]
<</if>>
</div>/*#
#desc: attempt to finish lacing your corset
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "">>
<<include enterroom_locked>>
<<if $roomchange == true>>
<<if setup.getTotalValue("strength") >= 10>>
<<set $player.timebased.tightlacing = 100>>
<</if>>
<<applyExperience 'strength' 10 'slightly' $ALONE>>
<</if>>
<<createBGR "./images/scenes/TODOscene_lace_corset_1.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("strength") < 10>>
Try as you might you just are not strong enough to lace the corset any tighter. You need help if you want to finish closing it.<br>
<br>
[<<moveTo $locationbeforeuseage "Resign yourself that this is the best you can do on your own." 60 "<<set $roomchange = false>>">>]
<<else>>
Between already having squished down what little cushion your body has, plus the added challenge of your shortened breaths it gets harder and harder to lace the corset further. Fortunately for the sake of pleasing the Goddess of fashion (if not, perhaps, your organs) you are strong enough to keep pulling. Centimeter by centimeter the corset closes around you, forcing your body and flesh into new arrangements until finally you are able to run your fingers along the perfectly closed back, unable to detect the slightest gap.<br>
<br>
The combination of excitement at your new, amazingly feminine curves and the restrictive hug of the corset shortens your breaths<<if $player.body.breastsize[0] > 0>> and makes your <<getWordBreasts $player>> heave even larger<</if>>. Tying everything tight you run your fingers down your sides in amazement - between your perfect posture and unearthly curves you are now showing off a full hourglass figure to die for.<br>
<br>
[<<moveTo $locationbeforeuseage "Stop admiring your curves and do something else." 60 "<<set $roomchange = false>>">>]
<</if>>
</div>/*#
#desc: open bed heels and try on for first time
#status: RELEASED 0.6.0.0
#*/
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<</if>>
<<if $roomchange==true>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem $player $now "bed_heels_box">>
<<addItem 'bed_heels'>>
<<else>>
<<set setup.getItemObj('bed_heels_box').status.firstszene = false>>
<</if>>
<<if getUTCHours($now) gte 18 or getUTCHours($now) lt 6>>
<<set _setId = setup.clothingSetExists('Sleep Clothes')>>
<<useClothSet $player $now _setId>>
<<wearItem $player $now "bed_heels" true>>
<<if !$inventory['bed_heels'].status.lock>>
<<manipulateItem $player $now 'bed_heels' 'lock' true>>
<</if>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $locationbeforeuseage != "room_bedroom">>
You decide the bedroom would be the best place to unpack your new purchase and head there before continuing the unboxing.
<</if>>
Dropping the shoebox for your recently purchased bed heels on the bed you remove the lid and stare down at the insane pink locking footwear.<br>
<br>
<<printThought $player "Maybe if I keep staring they'll get shorter?">><br>
<br>
Several minutes pass but there is no use delaying the inevitable. Hopping up on the bed you shed your current footwear and reach for one of the shoes. Pointing your toes you slide it on.<br>
<br>
<<if getUTCHours($now) gte 18 or getUTCHours($now) lt 6>>
You strain to arch your foot steep enough to accommodate the ridiculous heel, eventually managing to clip the small front strap over your foot only to cry out in pain. As soon as the latch catches it tightens further, forcing your foot to snugly follow the extreme arch of the shoe. Even worse you find that tugging on the strap doesn't release it, and it's far too tight for you to slide off your foot without taking some skin with it.<br>
<br>
Digging under the layers of pink tissue paper packaging you find a manual.<br>
<br>
<<printThought $player "Who needs a manual for shoes? Though I guess these are far from normal footwear...">><br>
<br>
Flipping through you read that the shoes are configured from the factory to lock automatically when worn in the evening, and then not release until the following morning when their synchronised alarm triggers.<br>
<br>
Checking the other shoe you find a small indicator light tucked under the heel that indicates that the magic of the smart home has already synchronised the footwear with your alarm clock. Reading further you discover that the shoes are also diabolically configured that once you start locking one you have to finish both; if you delay too long or fail to comply they will administer punishing shocks.<br>
<br>
Shuddering in fear you hurriedly finish with the first shoe, closing the other small strap around your foot before hesitantly locking closed the intimidatingly tall main ankle strap. Sporting a visible latch the ankle strap locks locks closed with a loud click that echoes through the room. Knowing what to do now the second shoe goes on easier and soon you're locked in twin impossibly-high heels.<br>
<br>
Given that merely sitting on the bed has your toes and calves crying out in pain you don't even want to consider walking in the shoes. Crawling around the bedroom you finish preparing yourself for sleep.<br>
<br>
[<<moveTo "room_dreams" "Attempt to sleep." 0>>]<br>
<<set _link = "Recall your task and take a photo for " + setup.getNpcName('npc_manager', 'formal') + ".">>
[<<moveTo "event_bed_heel_picture" _link 0>>]
<<else>>
Letting go of the shoe for a moment it almost instantly slides right back off your foot.<br>
<br>
Trying again and holding it in place you try to close the straps only for them to fail to latch. Confused you dig through the box to find the instructions.<br>
<br>
<<printThought $player "Who needs a manual for shoes? Though I guess these are far from normal footwear...">><br>
<br>
A bit of reading has you learning that the factory settings are such that the shoes, which lock automatically, will only latch before bed. Glancing at the clock confirms that is hours away; probably for the best given that once locked onto your foot they will not release until an alarm triggers the following morning. You check and note a pink status light tucked inside the heel indicating that they've already synchronised with your alarm clock - the miracle of the smart home in action.<br>
<br>
[<<moveTo "room_bedroom" "Put the heels away for later." 300>>]
<</if>>
<<else>>
You consider opening up the box but you decide you had better wait until you got home.<br>
<br>
[<<moveTo $locationbeforeuseage "Back" 30>>]
<</if>>
</div>/*#
#desc: open and try on pink corset for the first time
#status: RELEASED 0.6.0.0
#*/
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<</if>>
<<if $roomchange==true>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear $player $now>>
<<deleteItem $player $now "pink_satin_corset_box">>
<<addItem 'pink_satin_corset'>>
<<wearItem $player $now "pink_satin_corset" true>>
<<else>>
<<set setup.getItemObj('pink_satin_corset_box').status.firstszene = false>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $locationbeforeuseage != "room_bedroom">>
You decide the bedroom would be the best place to unpack your new purchase and head there before continuing the unboxing.
<</if>>
Sitting on the edge of your bed you pitch the embarrassingly-labeled bag and look at the box containing your new corset.<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
<<printThought $player "MY corset... This is so exciting!">>
<<elseif setup.getTotalValue("feminization") >= 10>>
<<printThought $player "MY corset... That feels so weird to say, didn't these go out of fashion like, over a century ago?">>
<<else>>
<<printThought $player "MY corset... That feels so wrong to say, this isn't just woman's clothing it's like... a historical extreme of woman's clothing!">>
<</if>>
<br><br>
Deciding that it's better to at least try it on now rather than to be time-crunched in the morning you strip down to your undergarments and open the box.<br>
<br>
Laying on a bed of pink tissue paper you can't deny that the pink satin of the corset looks attractive. Picking it up you are surprised how weighty it is, reminded that the seller told you it was boned with spring steel. Its stout construction is confirmed as you feel how stiff and rigid the garment is. There is no more delaying the inevitable and you open the corset to start shimmying it up your body.<br>
<br>
Even fully unlaced it takes a bit of work to pull it past your rear and you spend a minute or so guessing how high on your torso you're supposed to put it, finally settling with it covering you from your hips all the way up to <<if $player.body.breastsize[0] > 0>>just below your <<=setup.calcBreastSize($player)>> breasts<<else>>to a few inches below your nipples, the top edge curving slightly as if to accommodate nonexistent breasts.<</if>>
<br><br>
Feeling around behind it seems the corset is several inches from closing. You try tugging on the laces but things start feeling tight before the gap has narrowed much at all. Pausing to look in the mirror you actually kind of like the criss-cross look of the laces running over your spine. Even "loose" the stiff garment acts to give you nigh perfect posture and greatly limit your ability to bend or lean over.<br>
<br>
Deciding that this is good enough for a trial run you loosen the laces and shimmy out of the corset before stowing it in your wardrobe. Changing back into your clothes you sneak out of the apartment to throw the packaging in the trash, glad to not run into anyone else as you make your way out then back to your residence.<br>
<br>
[<<moveTo "room_foyer" "Continue." 300 "<<removeItem $player $now 'pink_satin_corset' true>><<useClothSetPop 'tmp' $player $now>>">>]
<<else>>
You consider opening up the box but you decide you had better wait until you were at home.<br>
<br>
[<<moveTo $locationbeforeuseage "Back" 30>>]
<</if>>
</div>/*#
#desc: open and try pink thigh highs for the first time
#status: RELEASED 0.6.0.0
#*/
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<</if>>
<<if $roomchange==true>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear $player $now>>
<<deleteItem $player $now "pink_thigh_highs_box">>
<<addItem 'pink_thigh_highs'>>
<<wearItem $player $now "pink_thigh_highs" true>>
<<if !setup.hasThreshold("heels", 'wearing_heels', 'intermediate')>>
<<setThreshold 'heels' 'wearing_heels' 'intermediate' true>>
<</if>>
<<else>>
<<set setup.getItemObj('pink_thigh_highs_box').status.firstszene = false>>
<</if>>
<<set $sceneVisibility = $INCOGNITO>>
<<applyExperience 'heels' 10 'very' $EXPOSED>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createBGR "./images/locations/flat_bedroom_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $locationbeforeuseage != "room_bedroom">>
You decide the bedroom would be the best place to unpack your new purchase and head there before continuing the unboxing.
<</if>>
Standing at the side of of your bed you pitch the embarrassingly-labeled bag and look at the box containing your new knee-high boots. Taking a deep breath you remove the lid. Pulling the boots out of the box you lay them out on the bed. Even compared to the king sized bed the boots look large; twin pink columns of hot sex.<br>
<br>
<<if setup.getTotalValue("bimbofication") >= 10>>
<<printThought $player "These are like... beyond fuck-me boots. I can't wait to try them on!">>
<<elseif setup.getTotalValue("bimbofication") >= 5>>
<<printThought $player "These are like... beyond fuck-me boots. I can't believe I'm going to have to wear these...">>
<<else>>
<<printThought $player "These are like... beyond fuck-me boots. Do I really have the courage to wear these to work?">>
<</if>>
<br><br>
Deciding that it is better to try them on now rather than to be time-crunched before leaving for work you strip down to your undergarments and sit on the edge of the bed to put them on.<br>
<br>
Pulling the boots up your legs is a strange sensation. Much stiffer than your stockings they feel more constraining, and yet also... protective? Finally getting the first boot all the way up your thigh your toes slide into place and your heel seats squarely atop the thin heel. Giving the top edge a final tug you feel a slight tingle up and down your leg as the nanites attend to resizing it to your precise dimensions. Seamless and shiny your leg looks like it was dipped in pink candy shell, your toes mashed into a sexy point and your foot arched provocatively high.<br>
<br>
Moving to the other leg it goes on much the same and soon you are sitting in a final moment of nervousness.<br>
<br>
<<printThought $player "I have to try walking in these or I'll be dead going to work...">><br>
<br>
<<if setup.getTotalValue("heels") >= 5>>
With a hand on the edge of your bed for balance you push yourself to a standing position. You wobble a bit, and your calves and toes are far from happy thanks to heels nearly double the height of your Mary Jane's but so long as you focus all of your attention on balance and keep your arms out you are able to walk.
<<elseif setup.getTotalValue("heels") > 2>>
Even leaning against the edge of the bed it's a bit tricky to stand up in the heels. Unable to quite straighten your knees you walk with horrible posture, leaned over with your arms wide for balance as you take one hobbling step after the other.
<<else>>
Just trying to stand in the heels proves a feat as you feel like you're constantly about to fall forward, teetering every which way on the impossibly tall and slender heels. Moving from furniture to wall for balance you try to walk. The prospect of trying to make it just up the hall to the elevator - much less all the way to work seems nigh impossible without resorting to crawling.
<</if>>
<br><br>
Feeling like you really ought to practice you make a few loops through the apartment until your calves and feet are in too much pain to continue. You pause a final time to wobble in front of a full-length mirror. Even with your obvious flaws there is no denying how good they make your legs look. Lengthening and slimming your lower half the top edge of the boots stop just shy of your <<if setup.getItemTypeName("cage") != "">>caged <<else>><<getWordPenis $player>><</if>>
<br><br>
Removing the boots you hope the practice was enough. The normally short trip to work seeming quite intimidating, maybe you should take a taxi? Your wallet won't be happy, but your feet certainly will.<br>
<br>
Putting your clothes back on you put the boots away in your wardrobe and sneak out of the apartment to discard the packaging. Fortunately you don't run into anyone else in the hallway in the course of making your way out and then back to the foyer.<br>
<br>
[<<moveTo "room_foyer" "Continue." 300 "<<removeItem $player $now 'pink_thigh_highs' true>><<useClothSetPop 'tmp' $player $now>>">>]
<<else>>
You consider opening up the box but you decide you had better wait until you were at home.<br>
<br>
[<<moveTo $locationbeforeuseage "Back" 30>>]
<</if>>
</div>/*#
#desc: try on gold hoop earrings for the first time
#status: RELEASED 0.6.0.0
#*/
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<</if>>
<<if $roomchange==true>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem $player $now "gold_hoop_earrings_box">>
<<addItemWardrobe 'earring_box_empty'>>
<<addItem 'gold_hoop_earrings'>>
<<wearItem $player $now "gold_hoop_earrings" true>>
<<else>>
<<set setup.getItemObj('gold_hoop_earrings_box').status.firstszene = false>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createBGR "./images/locations/flat_bathroom_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $locationbeforeuseage != "room_bedroom">>
You decide the bathroom would be the best place to unpack your new purchase and head there before continuing the unboxing.
<</if>>
Taking the hoop earring box out of the somewhat comically large bag you pitch the embarrassingly-labeled sack and head to the bathroom mirror. Opening the box you admire how the earrings gleam in the light, you've never owned anything before that was real gold.<br>
<br>
<<printThought $player "My first expensive piece of jewelry... I think they are more expensive even than most of what <<=setup.getNpcName('npc_exgirlfriend', 'first')>> owned, definitely more than anything I bought her on my meager salary">><br>
<br>
You feel <<if setup.getTotalValue("bimbofication") >= 10 || setup.getTotalValue("feminization") >= 12>>like a high class call-girl<<elseif setup.getTotalValue("bimbofication") < 5 || setup.getTotalValue("feminization") < 5>>a bit weird<<else>>like a classy lady<</if>> bringing them up to your ears.<br>
<br>
Thanks to advanced nanotech the advanced earrings make their own perfectly even holes almost painlessly; a quick poke and they're dangling from your ears without you needing to hold them in place.<br>
<br>
Swinging and gleaming in the bright light of the bathroom you can't help but remember something you heard at an art museum you once went to with <<=setup.getNpcName('npc_exgirlfriend', 'first')>>, about how the right frame can transform a merely decent painting into a masterpiece.<br>
<br>
<<if setup.getTotalValue("feminization") >= 10>>
<<printThought $player "I love how these look!">>
<<else>>
<<printThought $player "This feels so strange. I shouldn't be wearing earrings, it's only because of that cursed contract... right?">>
<</if>>
<br><br>
Turning your head back and forth causes the earrings to sway and brush your neck. Each touch of the cool metal reminds you of their presence, even after your ears adjust and their weight is no longer noticeable. Taking a deep breath you decide that's enough for now, taking them off and putting them away in your wardrobe. You look at the pretty little box they came in, perhaps you might find a use for it someday? You toss it in the back of the wardrobe for later before walking back into the bedroom.<br>
<br>
[<<moveTo "room_bedroom" "Continue." 300 "<<removeItem $player $now 'gold_hoop_earrings' true>>">>]
<<else>>
Not wanting to lose the small, expensive earrings you decide to wait until you are home to take them out of their box.<br>
<br>
[<<moveTo $locationbeforeuseage "Back" 30>>]
<</if>>
</div>/*#
#desc: first time returning home after recieving pink uniform
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange==true>>
<<set $player.flags.uniform_upgrade.contract_curiosity = true>>
<</if>>
<<set $player.location to "Foyer">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You arrive home in your new pink female "uniform."
<<if $player.flags.fem_style.unisex == "forced" && $player.flags.fem_style.female == "forced">>
You find yourself recalling the the scent of your incinerated male clothing. This new pink attire was granted in a somewhat less destructive manner and yet it represents another part of your old life destroyed by your new company. You still can't quite believe what has happened and you find yourself wondering if it is even legal. You recall the overly long, too-complex contract you signed without fully understanding, perhaps it is time to take another shot at reading it?
<<else>>
You reflect on all that has happened since starting this new job, all the changes... a veritable whirlwind that you feel has yet to stop... or maybe it's actually accelerating? This thought has your mind turning back towards your contract... perhaps somewhere in its arcane language there might be a hint as to what is to come? No matter your personal feelings it seems prudent to investigate.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Continue." 60>>]
</div>/*#
#desc: talk to psychiatrist about wearing bed heels
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You explain how you have started wearing the so-called extreme "bed heels" while you sleep, and how <<=setup.getNpcName('npc_manager', 'formal')>> has you send her pictures to confirm that you are doing so. You even pull out your phone to show her the last picture you sent.<br>
<br>
"@@.npc_psychiatrist;That is very interesting; the dichotomy of learning to walk better whilst laying down. I am, of course, familiar with bed heels, the ones you showed me, however look quite interesting indeed.@@"<br>
<br>
"@@.npc_psychiatrist;Knowing that you will be locked all night in their severe embrace... well, knowing that and placing the shoes on your feet it, in a way, makes the locks superfluous - it is your desire for self-improvement, a noble goal, that puts the shoes on and keeps them there.@@"<br>
<br>
<<printThought $player "<<if setup.getTotalValue('bondage') >= 10>>Yea, but locking them on makes it so much better...<<else>>But they're still LOCKED ON.<</if>>">>
<br><br>
"@@.npc_psychiatrist;Continuing on to the actions of your manager... This is a new intrusion into your personal life, and yet you accepted it. They say one should strive to find a way to get paid to do what you love - is that what is happening here? Are you intentionally blending your work and home life in the hopes that you can grow in both in harmony?@@"
<br><br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought $player "I do love obeying <<=setup.getNpcName('npc_manager', 'formal')>>. Obviously being hers to control all the time would be better than just when I'm at work...">>
<<else>>
<<printThought $player "No, I work to live, not the other way around.... but why have I submitted to all of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> orders and not searched for a new job?">>
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about the pre-bed sext you sent her
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<<set $npc_psychiatrist.flags.sent_sext_discuss = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You mention the sext you sent <<=setup.getNpcName('npc_psychiatrist', 'first')>> and she smiles, the memory clearly a positive one.<br>
<br>
"@@.npc_psychiatrist;I believe I already gave you my thoughts on that matter, though the fact that you bring it up again... Clearly you are seeking additional validation from me for your actions, perhaps from others as well? While you should always be careful with sending pictures such things are normal in this day and age; the real validation comes from inside, and you already have that, do you not?@@"<br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
<<printThought $player "Of course I love dressing up and taking photos, but sharing it with others makes it so much hotter!">>
<<else>>
<<printThought $player "I guess I shouldn't be so concerned what other people think, I'm in my apartment so I can wear what I want.">>
<</if>>
<br><br>
"@@.npc_psychiatrist;I thought as much - I saw the photos. I noticed they were very well done for an amateur, not sloppy at all. Such care tells me that you are proud of what is in those pictures - yourself, and what you are wearing. That is good, you should be proud, because you are beautiful and when you wear the things you want it only serves to makes you more lovely still.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about sending a pre-bed sext to a random contact
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> how you accidentally sent a sext to someone other than who you intended.<br>
<br>
"@@.npc_psychiatrist;I see, such things happen, and they can certainly be embarrassing, but I think you need to look at the larger picture. First; you cannot control everything, sometimes the best move is to surrender to fate, but by doing so you actually accept and embrace it, and thus you have not surrendered at all, merely arrived at your chosen destination by a different path.@@"<br>
<br>
You're still trying to follow the byzantine path of what she just said as she continues on.<br>
<br>
"@@.npc_psychiatrist;Second is that, once again, you talk to me about what is effectively concern over the opinions of others. Know that, if you wish to get approval from others, there are myriad ways but in doing so you give them power over you. Of course, if that is what you want, then it comes full circle once again and whatever is done to you can become what you wanted all along.@@"<br>
<br>
You blink a few times, still struggling to untangle the web of "logic" she just laid out.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist the first high heel video shoot
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about your clumsy efforts to walk in ballet boots that were filming the marketing segment for the shoe store in the mall.<br>
<br>
"@@.npc_psychiatrist;It takes real courage to show that sort of vulnerability, especially on camera. I am proud of you, this really shows your internal strength. More important is that you can use the video yourself. Once you have completed the "after" portion you will have documented proof of your accomplishment and your advancement. These sorts of milestones are the stepping stones by which one can make even greater leaps forward; as their confidence is buoyed by such a concrete record of prior success.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist the second high heel video shoot
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about how well you walked in your second ballet boot video shoot.<br>
<br>
"@@.npc_psychiatrist;Quite impressive, both your courage in returning for a second video and your rapid development in your ability to walk in such challenging footwear The first video you made blind, there were no expectations for you to be anything other than clumsy. But this one? Improvement was expected, and you delivered! See what you can accomplish when you focus your efforts on a goal? In such a short time you fulfilled a desire - walking in steep heels - that you once had not even been aware of. What other desires might you be yet ignorant of, that you declare to reach out and claim?@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about filming a bed heels testimonial
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about recording a personal testimonial on the effectiveness of wearing bed heels.<br>
<br>
"@@.npc_psychiatrist;Oh, how fascinating! What approach did you take for your endorsement?@@"<br>
<br>
<<for _style, _active range $npc_shoestore_manager.flags.testimonials>>
<<if _active>>
<<if $npc_psychiatrist.flags.bed_heels_testimonial[_style]>>
[@@.link_locked;Already talked about giving a testimonial in a <<=_style>> style.@@]
<<else>>
<<set _topic = "<<set $scene.testimonial_for_discussion = '" + _style + "'>>">>
[<<moveTo "psychiatrist_high_heel_video_shoot_testimonial_details" 'Talk about giving a testimonial in a <<=_style>> style.' 60 _topic>>]
<</if>>
<br>
<</if>>
<</for>>
</div>/*#
#desc: talk to psychiatrist about filming a bed heels testimonial
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_psychiatrist.flags.bed_heels_testimonial[$scene.testimonial_for_discussion] = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You go into further detail on your <<=$scene.testimonial_for_discussion>> style bed heel testimonial.<br>
<br>
"@@.npc_psychiatrist;Very interesting, while the purpose of your act may have been financial I want you to consider the cathartic side of it as well - you declared something to the world, testifying about what you already knew, perhaps doing so better crystallized your own desires on the subject?@@"<br>
<br>
<<if $scene.testimonial_for_discussion != "casual">>
<<printThought $player "Yes, even though I was sort of acting, it felt good to act like that in front of the camera. Maybe I should behave in a <<=$scene.testimonial_for_discussion>> way more often?">>
<<else>>
Maybe I should dress up and do one of the more "personal" testimonials <<=setup.getNpcName('npc_shoestore_manager', 'first')>> mentioned, just to see how it feels?
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about filming the final high heels video shoot
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You talk with pride about your mastery of ballet heels and the short video you recorded of such in the back room the shoe store in the mall; and how you walked out of the store wearing those very same heels.<br>
<br>
"@@.npc_psychiatrist;I am so proud of you. It is always satisfying to master a new skill; particularly one that you have worked so hard at, and desired for as long as you have in this case. As you are now capable of standing taller and seeing further in the literal sense you should also bear in mind the ways you can see farther metaphorically from your new perch? What once-distant goals are now within reach? Which will you quest for first?@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
<<printThought $player "What other aspects of femininity have I missed out on pushing to the extreme? I should master them all!">>
<<else>>
<<printThought $player "I wish I could so easily develop an actually useful skill instead...">>
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about filming the final bdsm variant of high heels video shoot
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<<set $npc_psychiatrist.flags.bed_heels_ad_bdsm = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'first')>> shifts in her chair as you walk through filming the fetishistic "high heels" videoshoot. The memory of it is exciting to you, as well, and there is a moment of silent adjustment on both of your part before she gives her reply.<br>
<br>
"@@.npc_psychiatrist;Well, that sounds like quite the experience. I see no harm in it, <<=setup.getNpcName('npc_shoestore_manager', 'first')>> sounds to have behaved quite respectably given the circumstances. You seem to be quite attracted, and attracting, to shall we say, strong females? Being able to turn such an interest into a little extra money well... nothing wrong with that, is there? Yes, this all sounds quite above board, I would only suggest that if you continue to be interested in such things you should look to explore them in a more personal manner...@@"<br>
<br>
Her voice trails off and you hesitate in confusion, but the moment passes, her professional mein returning as she nods for you to continue on to the next topic.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about being assigned the uniform upgrade task
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.uniform_upgrade.fully_understood_contract>>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> how, after researching the issue thoroughly, you have decided to enroll in the so-called A-SLUT programme, your manager having tasked you with procuring an "upgrade" to your work attire as a first step.<br>
<br>
"@@.npc_psychiatrist;Oh, I am just so proud of you! Taking charge like that, not just accepting the opportunity before you but actively seeking it out! Yes, this is exactly the sort of breakthroughs we therapists dream of seeing, and while all credit belongs with you, of course, I do hope that I have been of some mild help in assisting you towards your current success.@@"<br>
<br>
<<printThought $player "Assisting... yea, that's one way of putting it...">>
<<else>>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the A-SLUT programme that you have found yourself enrolled in. She listens intently, making notes throughout and waiting until the end of your long-winded explanation to make her assessment.<br>
<br>
"@@.npc_psychiatrist;It seems that all of this traces back to two things - your lack of faith that <<=setup.getNpcName('npc_manager', 'first')>> was following the rules, and then your own incomplete understanding of such leading you to make a too-hasty decision. Your problem is you pretend that these hardships are being inflicted on you but haven't all of the choices you made been your own? YOU didn't trust your girlfriend's word and took unknown drugs. YOU didn't do your job to backup the data. YOU signed a contract without understanding it. YOU didn't trust the other signatory to implement its rules. YOU relied on a partial understanding to make a challenge and YOU then accepted the resulting judgment@@"<br>
<br>
<<printThought $player "Did I really bring everything on myself, do I...deserve all of this?">><br>
<br>
"@@.npc_psychiatrist;What you need to do is take ownership of your actions. YOU chose to make yourself better for the woman you loved. YOU forced yourself to break away from a dead-end job. YOU chose to work for <<=setup.getNpcName('npc_manager', 'first')>> and finally YOU embraced a new opportunity for advancement.@@"<br>
<br>
<<printThought $player "Wait, what, did I chose it or is it my fault?">><br>
<br>
"@@.npc_psychiatrist;It is the same narrative, just from a different perspective. What matters in life is YOUR perspective; your life is your own, your choices, your decisions. Don't run from it, embrace it. Perhaps, in entering this new, advanced programme... you already have?@@"<br>
<br>
<<printThought $player "If that's true, why am I so unsure what my next move should be?">>
<</if>>
<br><br>
[<<moveTo "psychiatrist_uniform_upgrade_task_help" "Ask if she has suggestions of what you should purchase." 1>>]
</div>/*#
#desc: talk to psychiatrist about being assigned the uniform upgrade task
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.flags.aslut_enrollment_refused>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> how you went back on your initial rejection of A-SLUT and have now officially enrolled in the so-called "employee development" programme.<br>
<br>
"@@.npc_psychiatrist;Oh, I am so glad to hear you made a decision! When you talked about your earlier refusal you sounded so unsure and regretful. So, tell me, how does it feel, to have entered into things with your eyes wide open, as it were?@@"<br>
<br>
You point out that you're still out quite a bit of money on the whole thing but she poo poos it away.<br>
<br>
"@@.npc_psychiatrist;Yes, that is a pity, and something to keep in mind before making rash decisions in the future, but we cannot do anything to change the past, only learn from it and seek a better future, and it sounds like you have! So, have you decided what you're going to buy yet?@@"
<<else>>
You relate to <<=setup.getNpcName('npc_psychiatrist', 'first')>> the full saga of your experience with the "uniform upgrade" programme at work; from your initial refusal and resultant fines up through your choosing to enroll in A-SLUT with full knowledge of what it entails.<br>
<br>
She nods sagely, though you note the twitches of an excited smile at the edges of her mouth.<br>
<br>
"@@.npc_psychiatrist;That is quite the journey you have been on, I hope you learned something to make up for the expense? In any case I will only note that you are not my first patient who has enrolled in that programme and, while I cannot speak further without betraying confidence, I will note that they all benefited greatly from it. I know corporations can seem quite selfish and dismissive, and it's true to a point, but in this case when they speak of employee development it truely is a mutually beneficial programme.@@"
<</if>>
<br><br>
[<<moveTo "psychiatrist_uniform_upgrade_task_help" "Ask if she has suggestions of what you should purchase." 1>>]
</div>/*#
#desc: tell psychiatrist about your refusal to enroll in A-SLUT
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
/% TODOfuture: look this up from the task itself%/
<<set $npc_psychiatrist.flags.aslut_enrollment_refused = true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
You explain to the psychiatrist how, after finding out the full details of the A-SLUT programme, you paid off the stipend and the steep penalty so that you could reverse your "mistake." <br>
<br>
"@@.npc_psychiatrist;Mistake... an interesting word. After all, you MISSed the full details of the contract, and thus charging head-long in caused your money to be TAKEn from you. A curious word indeed, or could it be, perhaps, that you MISSed out on an opportunity and you would like to TAKE the offer to join the Allotment for Sissy Learning and Uniform Transformation programme? I cannot say much without betraying patient trust but... I have dealt with other clients who have entered that programme and all have benefited from it, in numerous ways. I think your problem is fear - so much has happened and you were trying to take control, but you just don't have power to do that. What you DO have power over, however, is yourself - use that power and grasp the opportunities presented to you, just because you have been hurt before you must not let yourself close in and wall yourself off from pursuing your desires.@@"<br>
<br>
<<printThought $player "Did I make a mistake? Am I still making one? What should I do?">><br>
<br>
"@@.npc_psychiatrist;I think you need to step back and consider your priorities. At first you wanted knowledge, but you didn't learn enough and fell into a "trap." You wanted money, but when you found out the "cost" you spent many times what you hoped to earn to back out. All of it speaks to an unwillingness to accept reality, to embrace what is and choose actively to become your best self. Yes, until you decide what you actually want, and pursue it, well... I hate to be the bearer of bad news but this path is a downward spiral; rushing in without a plan, making "mistakes," losing money or other things you valuable... I want these sessions to help reverse things, to raise you up but I can only throw you a rope - you are the one who has to grab hold and pull yourself out of the river.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about pink thigh high uniform upgrade items
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("shoes") == "pink_thigh_highs">>
"@@.npc_psychiatrist;So, tell me about this new accessory - which looks very hot on you, by the way.@@"<br>
<br>
You start to explain how your manager sent you to upgrade your uniform but your counselor cuts you off.<br>
<br>
"@@.npc_psychiatrist;Tell the truth. I allowed you to change before our talk - you may have needed help to become aware of this item, but that you are wearing it now was totally your decision. So I ask, did you buy it for yourself, or for her? Because, well, you are the one wearing it, now, in front of me. @@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
You can't help but agree that, though <<=setup.getNpcName('npc_manager', 'formal')>> may have initially given you the task, you would have definitely bought the pink thigh high boots if you had been aware of them earlier.
<<elseif setup.getTotalValue("submission") >= 10>>
You explain, with some amount of confusion that of course it is because of <<=setup.getNpcName('npc_manager', 'formal')>>, everything you do is to serve her.
<<else>>
<<printThought $player "Is that true? Would I really have bought a pair of pink thigh high boots ... voluntarily? I mean, I guess I didn't object, and I am wearing it now, but I had no choice... did I?">>
<</if>>
<br><br>
"@@.npc_psychiatrist;I see, well I think the takeaway is that you wore this to our session for a reason. What I think is that this is all just part of your evolution; another part of the real you showing itself and you should embrace that and continue to explore where this path leads, because it is YOUR path, and what YOU want.@@"<br>
<br>
"@@.npc_psychiatrist;Those heels are truely stunning, the way they cover nearly your entire leg, and those heels! Obviously choosing these was a physical manifestation of you rising to a higher level, to a better self. The way they go all the way up your legs, covering you in shiny pink perfection... it is a symbol of your progress, how with every step you take you want to go deeper into a new life. Your new self covers you, protects you, raising you up... Yes, as beautiful as they make you, as beautiful as you are, what they really are is another, no pun intended, step towards what you wish to become.@@"
<<else>>
"@@.npc_psychiatrist;So, tell me about this item you say you were "forced" to buy?@@"<br>
<br>
You describe the pink thigh highs to the psychiatrist, detailing how it felt to purchase and wear it for the first time. She quietly takes notes the whole time before finally looking up.<br>
<br>
"@@.npc_psychiatrist;Hmm, the thing that most stands out to me is that, as much as you paid, and with how much about it you have committed to memory, well... Don't you think it is odd you decided not to wear it for me? You obviously like it very much so what is it... shame? Hmm, no, that's not it.... Oh, I see, it is unworthiness! You feel like you aren't good enough for such an expensive, beautiful item!@@"<br>
<br>
<<printThought $player "Is that it, was my reticence really just a lie to myself?">><br>
<br>
"@@.npc_psychiatrist;Let me tell you, as someone who has, I believe, come to know you quite well, and considers you as more than just a client. You ARE worthy, worthy of this, worthy of more, but most of all, worthy of happiness. Trust your feelings, let them guide you and embrace your destiny.@@"<br>
<br>
"@@.npc_psychiatrist;From what you've said, the heels are truely stunning, the way they would cover nearly your entire leg, and those heels! Obviously choosing these was a physical manifestation of you rising to a higher level, to a better self. The way they go all the way up your legs, covering you in shiny pink perfection... it is a symbol of your progress, how with every step you take you want to go deeper into a new life. Your new self covers you, protects you, raising you up... Yes, as beautiful as they make you, as beautiful as you are, what they really are is another, no pun intended, step towards what you wish to become... Well, at least I would surmise, alas, with you not wearing them today we cannot be sure but...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about pink_satin_corset uniform upgrade items
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("corset") == "pink_satin_corset">>
"@@.npc_psychiatrist;So, tell me about this new accessory - which looks very hot on you, by the way.@@"<br>
<br>
You start to explain how your manager sent you to upgrade your uniform but your counselor cuts you off.<br>
<br>
"@@.npc_psychiatrist;Tell the truth. I allowed you to change before our talk - you may have needed help to become aware of this item, but that you are wearing it now was totally your decision. So I ask, did you buy it for yourself, or for her? Because, well, you are the one wearing it, now, in front of me. @@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
You can't help but agree that, though <<=setup.getNpcName('npc_manager', 'formal')>> may have initially given you the task, you would have definitely bought the pink satin corset if you had been aware of it earlier.
<<elseif setup.getTotalValue("submission") >= 10>>
You explain, with some amount of confusion that of course it is because of <<=setup.getNpcName('npc_manager', 'formal')>>, everything you do is to serve her.
<<else>>
<<printThought $player "Is that true? Would I really have bought $discussion_item.name ... voluntarily? I mean, I guess I didn't object, and I am wearing it now, but I had no choice... did I?">>
<</if>>
<br><br>
"@@.npc_psychiatrist;I see, well I think the takeaway is that you wore this to our session for a reason. What I think is that this is all just part of your evolution; another part of the real you showing itself and you should embrace that and continue to explore where this path leads, because it is YOUR path, and what YOU want.@@"<br>
<br>
"@@.npc_psychiatrist;Wow, a corset! Talk about a garment rich with history! Obviously this is just the latest demonstration of your progress - the femininity, the restriction, the way it lets you channel your physical strength into forcibly reshaping your body into a more ideal feminine form... All of that and more, but I think the biggest reason you chose it is that tight enveloping sensation, like it's constantly hugging you... because that's what's under all of this, isn't it? You, wanting someone to love you for what you are, to firmly comfort and support you all day long.@@"
<<else>>
"@@.npc_psychiatrist;So, tell me about this item you say you were "forced" to buy?@@"<br>
<br>
You describe the pink satin corset to the psychiatrist, detailing how it felt to purchase and wear it for the first time. She quietly takes notes the whole time before finally looking up.<br>
<br>
"@@.npc_psychiatrist;Hmm, the thing that most stands out to me is that, as much as you paid, and with how much about it you have committed to memory, well... Don't you think it is odd you decided not to wear it for me? You obviously like it very much so what is it... shame? Hmm, no, that's not it.... Oh, I see, it is unworthiness! You feel like you aren't good enough for such an expensive, beautiful item!@@"<br>
<br>
<<printThought $player "Is that it, was my reticence really just a lie to myself?">><br>
<br>
"@@.npc_psychiatrist;Let me tell you, as someone who has, I believe, come to know you quite well, and considers you as more than just a client. You ARE worthy, worthy of this, worthy of more, but most of all, worthy of happiness. Trust your feelings, let them guide you and embrace your destiny.@@"<br>
<br>
"@@.npc_psychiatrist;Hmm, a corset! Talk about a garment rich with history! Obviously this is just the latest demonstration of your progress - the femininity, the restriction, the way it lets you channel your physical strength into forcibly reshaping your body into a more ideal feminine form... All of that and more, but I think the biggest reason you chose it is that tight enveloping sensation, like it's constantly hugging you... because that's what's under all of this, isn't it? You, wanting someone to love you for what you are, to firmly comfort and support you all day long... Well, not quite, I suppose since you neglected to wear it for this session...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about gold_hoop_earrings uniform upgrade item
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $talkThemes += 1>>
<<set _x = setup.removeStress($player,3)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/psychiatrist_office.png" "./images/characters/npc_psychiatrist.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("earring") == "gold_hoop_earrings">>
"@@.npc_psychiatrist;So, tell me about this new accessory - which looks very hot on you, by the way.@@"<br>
<br>
You start to explain how your manager sent you to upgrade your uniform but your counselor cuts you off.<br>
<br>
"@@.npc_psychiatrist;Tell the truth. I allowed you to change before our talk - you may have needed help to become aware of this item, but that you are wearing it now was totally your decision. So I ask, did you buy it for yourself, or for her? Because, well, you are the one wearing it, now, in front of me. @@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
You can't help but agree that, though <<=setup.getNpcName('npc_manager', 'formal')>> may have initially given you the task, you would have definitely bought the gold hoop earrings if you had been aware of them earlier.
<<elseif setup.getTotalValue("submission") >= 10>>
You explain, with some amount of confusion that of course it is because of <<=setup.getNpcName('npc_manager', 'formal')>>, everything you do is to serve her.
<<else>>
<<printThought $player "Is that true? Would I really have bought $discussion_item.name ... voluntarily? I mean, I guess I didn't object, and I am wearing it now, but I had no choice... did I?">>
<</if>>
<br><br>
"@@.npc_psychiatrist;I see, well I think the takeaway is that you wore this to our session for a reason. What I think is that this is all just part of your evolution; another part of the real you showing itself and you should embrace that and continue to explore where this path leads, because it is YOUR path, and what YOU want.@@"<br>
<br>
"@@.npc_psychiatrist;So, those earrings well... they just look perfect on you. Garish enough to draw attention - and we both know you love that - but just to draw the viewer in, framing the main attraction - your adorable face. Yes, wearing those definitely makes a statement. I wonder.. does it feel like they're whispering a message every time they brush your neck? I bet they are, and I bet you love what they're saying.@@"
<<else>>
"@@.npc_psychiatrist;So, tell me about this item you say you were "forced" to buy?@@"<br>
<br>
You describe the gold hoop earrings to the psychiatrist, detailing how it felt to purchase and wear it for the first time. She quietly takes notes the whole time before finally looking up.<br>
<br>
"@@.npc_psychiatrist;Hmm, the thing that most stands out to me is that, as much as you paid, and with how much about it you have committed to memory, well... Don't you think it is odd you decided not to wear it for me? You obviously like it very much so what is it... shame? Hmm, no, that's not it.... Oh, I see, it is unworthiness! You feel like you aren't good enough for such an expensive, beautiful item!@@"<br>
<br>
<<printThought $player "Is that it, was my reticence really just a lie to myself?">><br>
<br>
"@@.npc_psychiatrist;Let me tell you, as someone who has, I believe, come to know you quite well, and considers you as more than just a client. You ARE worthy, worthy of this, worthy of more, but most of all, worthy of happiness. Trust your feelings, let them guide you and embrace your destiny.@@"<br>
<br>
"@@.npc_psychiatrist;So, from your description those earrings sound like they would look just perfect on you. Garish enough to draw attention - and we both know you love that - but just to draw the viewer in, framing the main attraction - your adorable face. Yes, wearing those would definitely make a statement. Being that it is a statement that I believe you very much want to make I cannot help but wonder why you did not wear them for our session...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: ???
#status: FINISHED 0.4.0.0
#*/
<<set _x = setup.testPassageDone()>><<include game_credits>>
<br>
<br>
<div align="middle">
[<<link "return">>
<<goto room_start_game>>
<</link>>]
</div><<include game_credits>>
<br>
<br>
<div align="middle">
[<<link "return">>
<<goto $player.plocation>>
<</link>>]
</div><div align="middle">
Special Thanks to for providing images/videos:<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/derek6699">Derek6699</a>]<br>
<br>
[<a target="_blank" href="https://www.manyvids.com/Profile/1001490406/Emma-S/Store/Videos/">Emma S.</a>]<br>
<br>
[<a target="_blank" href="https://www.reddit.com/user/Emperorhypnos/">Emperor Hypnosis</a>]<br>
<br>
[Gallant]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/translena29">Lena Zimmermann</a>]<br>
<br>
[<a target="_blank" href="https://twitter.com/lolatrap">Lolatrap</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/alexvicious">Maitresse Alex</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/sluttymaidnicole">Nicole</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/npinkz">Nikki Pinkz</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/fotr">Raven Shaddows</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/seulcoeur">Seul Coeur</a>]<br>
</div>
<br><br>
If you think you belong on this list or want your video/image taken down please contact me on the games discord server./*#
#desc: room to test stuff
#status: FINISHED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
This is the Testroom 01!<br>
<br>
[<<moveTo "room_testroom_02" "Testroom 02" 1>>]
</div>/*#
#desc: room to test stuff
#status: FINISHED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<swapItem $player $now "pink_sissy_panties" true>>
<<swapItem $player $now "pink_formal_dress" true>>
<<swapItem $player $now 'data_plug' true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
This is the Testroom 02!<br>
<br>
[<<moveTo "room_testroom_03" "Testroom 03" 1>>]
</div>/*#
#desc: room to test stuff
#status: FINISHED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange==true>>
<<swapItem $player $now "black_lace_bra">>
<<swapItem $player $now 'analplug_medium_ems'>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
This is the Testroom 03!<br>
<br>
[<<moveTo "room_testroom_01" "Testroom 01" 1>>]
</div>/*#
#desc: visit manager to talk after work
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $npc_manager.flags.lastOfficeVisit = $now>>
<<setScene>>
<<set $scene.caged = setup.getItemFromType('cage')!="">>
<<set $scene.talkfirstreward = $npc_manager.stage == 1 && (($npc_manager.trigger.stage1_happy>=4) || ($npc_manager.stagevalues[1].submission>=4)) && !$npc_manager.flags.talkedfirstreward>>
<</if>>
<<set _manager_inside = false>>
<<if (($now.getUTCDay()>=1) && ($now.getUTCDay()<5))>>
<<if ($now.getUTCHours()>8)&&($now.getUTCHours()<=22)>>
<<set _manager_inside = true>>
<</if>>
<<elseif ($now.getUTCDay()==5)>>
<<if ($now.getUTCHours()>8)&&($now.getUTCHours()<=20)>>
<<set _manager_inside = true>>
<</if>>
<<elseif ($now.getUTCDay()==6)>>
<<if ($now.getUTCHours()>9)&&($now.getUTCHours()<=18)>>
<<set _manager_inside = true>>
<</if>>
<</if>>
<<if _manager_inside>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if _manager_inside>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<<else>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>><div id="invframe" class="scrolltext">
<<if _manager_inside>>
<<if setup.getTotalValue('submission')<5>>
You reach for the door but at the last second remember that it might be a grave mistake not to knock first.
<<else>>
You knock on the door like you're supposed to do.
<</if>>
You can hear the faint buzzing of the Biometric Scanners, and hear an audible "@@.npc_manager;Come in.@@" You enter.<br>
<br>
<<if ($npc_manager.satisfaction+$npc_manager.affection)>($npc_manager.anger+5)>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks at you delighted as you enter her office. She seems to be in a very good mood.
<<elseif ($npc_manager.satisfaction+$npc_manager.affection)>($npc_manager.anger)>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks pleased as you enter her office. She seems to be in a good mood.
<<elseif ($npc_manager.satisfaction+$npc_manager.affection+5)<($npc_manager.anger)>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks up at you with a rather indifferent expression on her face.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> scowls at you. It seems she is still angry about your recent mistakes.
<</if>>
<br><br>
<<if $npc_manager.stage >=3 || $npc_manager.stagevalues[2].makeup>>
As she looks at you her gaze zeros in on your face.<br>
<br>
<<if $player.makeup.messed <= 25>>
"@@.npc_manager;I am glad to see that you have been keeping your makeup touched up. This is precisely how a good secretary should behave; always mentally checking if there is anything to do to always look her best.@@"
<<elseif $player.makeup.messed > 75>>
"@@.npc_manager;What did you do, cry all afternoon, or were you sucking cocks with that trollop at the coffee shop instead of working? Your face is a disaster area, next time stay on top of things; when it gets this bad all you can do is clean it off and reapply.@@"
<<elseif setup.getCurrentMakeup($player) == "">>
"@@.npc_manager;What is this? You know I expect you to wear makeup. Your "natural" face may be cute, but it can be so much more!@@"
<<else>>
"@@.npc_manager;What have I told you about maintaining your looks? You must remain ever-vigilant and touch up your makeup throughout the day or you end up with this... disaster.@@"
<</if>>
<br><br>
<</if>>
<<if setup.getItemFromType("corset") != "">>
Her eye-line slides further down your body to alight on your hips. Rising from her seat she walks around the desk to stand in front of you.
<<if $player.timebased.tightlacing == 0>>
<<if $roomchange>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 2>>
<</if>>
Bringing her hands around your almost natural waist <<=setup.getNpcName('npc_manager', 'first')>> <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head in dismay.<br>
<br>
"@@.npc_manager;What is this? Did you completely undo all the hard work of tightening you down? This is very bad, very disappointing indeed. I will be remembering this failure for later.@@"
<<elseif $player.timebased.tightlacing > 90>>
Running her fingers along the tight, clean line at the back of your fully laced corset <<=setup.getNpcName('npc_manager', 'first')>> <<=setup.getNpcName('npc_manager', 'formal')>> nods with approval.<br>
<br>
"@@.npc_manager;Very good; this is how a corset should be worn; fully laced at all times.@@"
<<elseif $player.timebased.tightlacing > 50>>
<<if $roomchange>>
<<set $player.timebased.tightlacing = 100>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 1>>
<</if>>
<<=setup.getNpcName('npc_manager', 'first')>> <<=setup.getNpcName('npc_manager', 'formal')>> runs her fingers along the back of your corset, shaking her head when she manages to slip a fingertip into the small, but existent, gap.<br>
<br>
"@@.npc_manager;Did I not tell you that you should pay attention and re-tighten your corset if it loosened? This is a garment of elegance and style, and proper wear bears some responsibility beyond just throwing it on.@@"<br>
<br>
Spinning you around she gives a few swift yanks and re-ties your laces at their "proper" level." <br>
<br>
"@@.npc_manager;Much better. That is the breathless beautiful sissy form I expect. That said, you should pay more attention to your attire lest I be forced to take additional measures to remedy your lackadaisicalness.@@"
<<else>>
<<if $roomchange>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 1>>
<</if>>
"@@.npc_manager;Tsk tsk, did you purposefully loosen your corset? That was very naughty; what is the point of wearing it if you are not going to do it properly? Keep wearing your things improperly and measure will need to be taken.@@"
<</if>>
<br><br>
<<if ($npc_manager.satisfaction+$npc_manager.affection)>($npc_manager.anger+5)>>
"@@.npc_manager;Now then, <<=$player.first_name>>, is there something I can help you with?@@"
<<elseif ($npc_manager.satisfaction+$npc_manager.affection)>($npc_manager.anger)>>
"@@.npc_manager;Now, then <<=$player.first_name>>, is there something I can help you with?@@"
<<elseif ($npc_manager.satisfaction+$npc_manager.affection+5)<($npc_manager.anger)>>
"@@.npc_manager;So, is there something I can help you with <<=$player.first_name>>?@@"
<<else>>
"@@.npc_manager;That out of the way, what do you want <<=$player.first_name>>?@@"
<</if>>
<<else>>
<<if ($npc_manager.satisfaction+$npc_manager.affection)>($npc_manager.anger+5)>>
"@@.npc_manager;Yes <<=$player.first_name>>, is there something I can help you with?@@"
<<elseif ($npc_manager.satisfaction+$npc_manager.affection)>($npc_manager.anger)>>
"@@.npc_manager;Yes <<=$player.first_name>>, is there something I can help you with?@@"
<<elseif ($npc_manager.satisfaction+$npc_manager.affection+5)<($npc_manager.anger)>>
"@@.npc_manager;Is there something I can help you with <<=$player.first_name>>?@@"
<<else>>
"@@.npc_manager;What do you want <<=$player.first_name>>?@@"
<</if>>
<</if>>
<br><br>
<<if $scene.talkfirstreward>>
You nod but remain silent.<br>
<br>
"@@.npc_manager;Hmmm... the silent treatment. Well go on, is there something you want to show me?@@"
<<else>>
You nod and say there's something you'd like to talk about.<br>
<br>
"@@.npc_manager;Well, out with it! I do not have all day, my schedule is busy one, even this late in the day.@@"
<</if>>
<br><br>
<<if $scene.caged>>
<<if $npc_manager.flags.hascagekey>>
[<<moveTo "room_office_manager_key" "About the key..." 30>>]<br>
<</if>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
<<if($now.getUTCDay()==5)>>
[<<moveTo "room_office_manager_chastity" "Give her the key and stay in chastity for the weekend." 30>>]<br>
<<else>>
[<<moveTo "room_office_manager_chastity" "Give her the key and stay in chastity for the night." 30>>]<br>
<</if>>
<</if>>
<</if>>
<<if $scene.talkfirstreward>>
<<if setup.getTotalValue('submission')>=5>>
<<if $npc_manager.stagevalues[1].override>>
[@@.link_locked;You don't think even kissing her feet will outweigh her anger from catching you masturbating at your desk.@@]
<<else>>
<<if $player.flags.fem_style.unisex == "">>
[@@.link_locked;Your current unisex attire has you too distracted to consider such submission... maybe once you're more used to wearing such?@@]
<<else>>
[<<moveTo "event_manager_stage1_end_reward_1" "Close the door behind you, get on your knees, and kiss her heels." 180>>]<br>
<</if>>
<</if>>
<<else>>
[@@.link_locked;You don't feel submissive enough to go through with the whole kissing her feet stuff.@@]<br>
<</if>>
<</if>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcTheme 'npc_manager' 'room_office_manager'>>
<</if>>
[<<moveTo 'event_manager_talk_nothing' 'You can think of nothing to talk about' 180>>]
<<else>>
<<if setup.getTotalValue('submission')<5>>
You reach for the door but at the last second remember that it might be a grave mistake not to knock.
<<else>>
You knock at the door like you're supposed to do.
<</if>>
You wait for 30 seconds, but no answer. Maybe she already left?<br>
<br>
[<<moveTo "room_office_manager_enter_x" "Open the door anyway" 30>>]<br>
[<<moveTo "room_office_after_work" "Okay..." 30>>]
<</if>>
</div>/*#
#desc: ask manager for your chastity key back
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<if $npc_manager.flags.hascagekey>>
<<if !$npc_manager.flags.trustplayerwithkey>>
<<set $scene.keydecision = "no_give_key">>
<<else>>
<<if ($npc_manager.satisfaction+$npc_manager.affection)>$npc_manager.anger>>
<<set $scene.keydecision = "give_key">>
<<elseif ($npc_manager.satisfaction+$npc_manager.affection+5)<($npc_manager.anger)>>
<<set $scene.keydecision = "no_give_key">>
<<else>>
<<set $scene.thinking = true>>
<<set _diff = $npc_manager.anger-($npc_manager.satisfaction+$npc_manager.affection)>>
<<if Math.random()*5>_diff>>
<<set $scene.keydecision = "give_key">>
<<else>>
<<set $scene.keydecision = "no_give_key">>
<</if>>
<</if>>
<</if>>
<<if $scene.keydecision == "give_key">>
<<set $npc_manager.flags.hascagekey = false>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<addItem $scene.keyId>>
<</if>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, true, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, true)>>
<<default>>
ERROR unexpected npc_manager.stage! <<=$npc_manager.stage>>
<</switch>>
<<else>>
<<set $scene.keydecision = "manager_not_have">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if you could have the key.<br>
<br>
<<switch $scene.keydecision>>
<<case "give_key">>
<<if $scene.thinking>>
"@@.npc_manager;Hmm... let me ponder on this for a moment... Yes, I think I can give this to you. But be wary. Such freedom is a great responsibility, I advise you not to... misuse it.@@"
<<else>>
"@@.npc_manager;Yes, of course <<=$player.first_name>>. I am true to my word, even though I would have hoped that you... well, I am sure you have a good reason. Here you go.@@"
<</if>>
<br><br>
You see the key resting between her bosom. She removes the chain from her neck and hands you the key.
<<case "no_give_key">>
<<if $scene.thinking>>
"@@.npc_manager;Hmm... let me ponder on this for a moment... No. I simply cannot disregard your misdeeds of late. You have to understand, this is not a chastisement. This is an aid, a way for you to experience some time without being at the mercy of your primal instincts.@@"
<<else>>
"@@.npc_manager;What, give you the key? Oh, I think not, you need to impress me FAR more than you have of late to prove you are deserving of such freedom.@@"
<</if>>
<br><br>
You see the key resting between her bosom. It might as well be in another dimension. So close yet so far, far away.
<<case "manager_not_have">>
She shakes her head, looking slightly annoyed. "@@.npc_manager;Your key? You know I do not have it. More the pity, really as I can scarcely think of someone more qualified to... keep you under control.@@"<br>
<br>
You gulp and apologise for such a foolish request.
<<default>>
ERROR: unhandled key decision: <<=$scene.keydecision>>
<</switch>>
<br><br>
[<<moveTo "room_office_after_work" "Bid farewell and leave the office." 30>>]
</div>/*#
#desc: apply effects based on manager happiness and your chastity status
#status: FINISHED 0.4.0.0
#*/
<<set $scene.chastity_happy = 'no'>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if ($npc_manager.satisfaction+$npc_manager.affection)>$npc_manager.anger>>
<<set $scene.chastity_happy = 'yes'>>
<<if $now.getUTCDay()==5>>
<<set $npc_manager.affection+=1>>
<<applyExperience 'submission' 6 'terrible' $SEEN_FRIEND>>
<<else>>
<<set $npc_manager.affection+=0.25>>
<<applyExperience 'submission' 6 'very' $SEEN_FRIEND>>
<</if>>
<<elseif ($npc_manager.satisfaction+$npc_manager.affection+5)<($npc_manager.anger)>>
<<if $now.getUTCDay()==5>>
<<decrementEmotion 'anger' 'npc_manager' 4>>
<<applyExperience 'submission' 6 'terrible' $SEEN_FRIEND>>
<<else>>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<applyExperience 'submission' 6 'very' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set $scene.chastity_happy = 'indifferent'>>
<<if $now.getUTCDay()==5>>
<<decrementEmotion 'anger' 'npc_manager' 2>>
<<applyExperience 'submission' 6 'terrible' $SEEN_FRIEND>>
<<set $npc_manager.affection+=0.5>>
<<else>>
<<decrementEmotion 'anger' 'npc_manager' .5>>
<<applyExperience 'submission' 6 'very' $SEEN_FRIEND>>
<<set $npc_manager.affection+=0.125>>
<</if>>
<</if>>/*#
#desc: ask manager to hold on to your chastity key for you
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $scene.chastity_orgaffection = $npc_manager.affection>>
<<set $scene.badsissy1 = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_surrendered')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_surrendered' true>>
<</if>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem $player $now $scene.keyId>>
<<set $scene.cage_locked = $inventory[setup.getItemFromType("cage")].status.lock>>
<<if !$scene.cage_locked>>
<<set _cageId = setup.getItemFromType("cage")>>
<<manipulateItem $player $now _cageId "lock" true>>
<</if>>
<<set $npc_manager.flags.chastitydays += 1>>
<<include room_office_manager_chastity_calc_affinity>>
<<if ( ($scene.chastity_happy == 'yes') || ($scene.chastity_happy == 'no') )&& !$npc_manager.flags.unlocked_badsissy1>>
<<set $scene.badsissy1 = true>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_header'
0
'event_manager_theme_badsissy1'
true>>
<</if>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, false, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, false)>>
<<default>>
ERROR unexpected npc_manager.stage! <<=$npc_manager.stage>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.chastity_orgaffection == 0>>
You're kind of nervous to ask <<=setup.getNpcName('npc_manager', 'formal')>>. Despite this fact she seems to sense that you're in some kind of predicament.<br>
<br>
<<if $npc_manager.flags.trustplayerwithkey>>
"@@.npc_manager;Is this about your chastity? You should not worry too much about it, as long as you follow my rules there will not be any problems.@@"<br>
<br>
You hesitate for a moment, then take the key out of your pocket and hand it to her. For a moment there's a puzzled expression on her face until you reveal to her that you'd like her to keep the key
<<else>>
"@@.npc_manager;Is this about the key to your chastity cage? All you have to do is to ask for it, if you truly want it. That is, if you deserve it.@@"<br>
<br>
You hesitate for a moment, but then reveal that you'd like her to keep the key
<</if>>
<<else>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if it's okay to leave the key with her
<</if>>
<<if $now.getUTCDay()==5>>
over the weekend,
<<else>>
till tomorrow evening,
<</if>>
to hone your skills of resisting your primal urges.<br>
<br>
<<switch $scene.chastity_happy>>
<<case 'yes'>>
<<if $scene.chastity_orgaffection == 0>>
"@@.npc_manager;Oh my, <<=$player.first_name>>. Yes. Yes, of course. I knew that you would see the advantages of our training. Oh, we are making progress much faster then anticipated. Well then,@@"
<<else>>
"@@.npc_manager;Yes, of course. I am happy that you are still trying to improve yourself. Very good. Very good indeed! Well then,@@"
<</if>>
she adjusts her decolletage, making the key slide deeper between her bosom,
<<if $now.getUTCDay()==5>>
"@@.npc_manager;Do not worry your pretty head. I will keep this, and thus, you safe until next Monday.@@"
<<else>>
"@@.npc_manager;Do not worry your pretty head. I will keep this, and thus, you safe until tomorrow.@@"
<</if>>
<<if !$npc_manager.flags.good_girl.got_sissy_underwear>>
<br><br>
"@@.npc_manager;To show how pleased and proud of you I am I want to give you a present.@@" Your eyes light up but she teasingly continues on. "@@.npc_manager;So eager! I love it but no... I think this would be best if I gave it to you in the morning, an extra reward for you taking such a bold step forward into chastity and control. Have a lovely evening looking forward while you look forward to a little something extra during your next inspection.@@"
<<elseif $scene.badsissy1>>
<br><br>
"@@.npc_manager;You will be an excellent Sissy Secretary one day. Just... sometimes I wish you would mess up just a little bit, so I could spank that cute but of yours more often.@@"
<br><br>
<<printThought $player "Hmmm... maybe I should be a bad Sissy... to be a good Sissy. Does that make sense? I think that makes sense. Somehow...">>
<</if>>
<<case 'indifferent'>>
"@@.npc_manager;
<<if $scene.chastity_orgaffection == 0>>
Yes, of course. I see you are finally starting to take your training seriously. Maybe you are not a lost cause at all. I will take this as a token of your dedication towards advancing things further.
<<else>>
Of course. I see that your behaviour finally starts to be more in line with the way it is supposed to be. I am happy that you are still trying to improve and I will take this as a token of your eagerness to better yourself!
<</if>>
Well then,@@" she adjusts her decolletage, making the key slide deeper between her bosom,
<<if $now.getUTCDay()==5>>
"@@.npc_manager;I will simply keep this for you until next Monday.@@"
<<else>>
"@@.npc_manager;I will simply keep this for you until tomorrow.@@"
<</if>>
<<if !$npc_manager.flags.good_girl.got_sissy_underwear>>
<br><br>
She pauses her expression flickering as if taking pity on you. "@@.npc_manager;That said, I suppose it would be best to reward this offering so as to, hopefully, engender future improvements in your deportment. Yes... I have just the thing, look forward to a little bonus during your next inspection.@@"
<</if>>
<<case 'no'>>
"@@.npc_manager;Not that you would deserve to keep it in the first place. A disobedient little sissy such as yourself should be locked away until you learn the true and complete meaning of the word obsequiousness.@@" She adjusts her decolletage, making the key slide deeper between her bosom,
<<if $now.getUTCDay()==5>>
"@@.npc_manager;I will hold onto this until next Monday.@@"
<<else>>
"@@.npc_manager;I will hold onto this until tomorrow.@@"
<</if>>
<br><br>
<<if $scene.badsissy1>>
"@@.npc_manager;A Bad Sissy such as yourself should be punished more frequently.@@"<br>
<br>
<<printThought $player "Hmmm... maybe I should be a bad Sissy!">>
<</if>>
<<if !$npc_manager.flags.good_girl.got_sissy_underwear>>
<br><br>
She pauses her expression flickering as if taking pity on you. "@@.npc_manager;That said, I suppose it would be best to reward this offering so as to, hopefully, engender future improvements in your deportment. Yes... I have just the thing, look forward to a little bonus during your next inspection.@@"
<</if>>
<</switch>>
<br><br>
"@@.npc_manager;Oh, one last thing, let me check that things are properly lock. A bit silly having the key to something that is not secured, hmm?@@"<br>
<br>
<<if $scene.cage_locked>>
Pulling your clothes aside you reveal the locked and secured cage.<br>
<br>
<<if $now.getUTCDay()==5>>
"@@.npc_manager;Lovely, simply lovely. This is exactly how I like you to be and will serve you well until tomorrow morning.@@"
<<else>>
"@@.npc_manager;Lovely, simply lovely. This is exactly how I like you to be and will serve you well all weekend long!@@"
<</if>>
<<else>>
Pulling your clothes aside you reveal your cage and she frowns before reaching down the click the lock closed.<br>
<br>
"@@.npc_manager;Tsk, tsk, so forgetful! What is the point in cageing yourself and giving me the key if you are not locked up! It is a good thing I checked, do you not agree? Oh, I cannot imagine how upset you would have been to get home and, in a moment of weakness, "accidentally" let yourself out! You should thank me for being so diligent!@@"<br>
<br>
Blushing in embarrassment you nervously thank her for ensuring that you were "properly" locked away.
<</if>>
<br><br>
[<<moveTo "room_office_after_work" "Bid your farewell and leave the office." 30>>]
</div>/*#
#desc: talk to manager after work about "nothing"
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<setScene>>
<<set $scene.first_time = false>>
<<if $player.flags.idling == false>>
<<set $player.flags.idling = true>>
<<set $scene.first_time = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first_time>>
"@@.npc_manager;<<=$player.first_name>>,@@" she states, her voice less hard and commanding then you're used to. "@@.npc_manager;I know that I can be... intimidating, from time to time.@@"<br>
<br>
She rises from her desk and approaches you. With how strong her presence always is you're a bit surprised to realise that she is actually smaller then you, shorter, too if it wasn't for her heels.<br>
<br>
"@@.npc_manager;And after all you have been through in the last few days I suppose I cannot really blame you for this... confusion. And even though I did all these, well a lesser person might say... immoral?, things to you, the mandatory disciplinary measures, your homework... after all that, you are still here.
<<if $npc_manager.trigger.stage1_happy>$npc_manager.stagevalues[1].penisincident>>
And, more than that, I have the feeling you are starting to see things my way as well, given how behaved you have been lately.
<<else>>
And even though you are a bit feisty and disobedient, you have persevered.
<</if>>
@@"<br>
<br>
"@@.npc_manager;Of course this just makes my training you all the more important. I know it can be a bit overwhelming but believe me when I say that this is necessary to make sure I can trust you with some very important tasks in the near future. Just think of this as building a foundation, a key requirement to a sturdy future, and it lays the groundwork - pun intended, for me possibly recommending you for some of the more desired re-education courses our company offers. All you have to do is simply follow my orders. Sometimes as my subordinate, sometimes as my slave and sometimes as the good little sissy you are going to be. The latter two go hand in hand, of course.@@"<br>
<br>
<<if (setup.getTotalValue('submission')>5)>>
You gulp audibly. But you are not sure if it's a gulp of anxiety or excitement. Becoming her slave? Not the worst fate you could imagine.
<<if setup.getTotalValue('feminization')>=5>>
And becoming a Sissy? You have been dressing up a lot lately, so this can hardly be called a "phase" anymore, maybe it all is working towards such an end goal.
<<else>>
You're not sure about that whole sissy thing though.
<</if>>
<<else>>
You gulp audibly. What have you gotten yourself into? Being her subordinate you get, but slave or sissy?
<<if $player.qualifyingperiod > 0>>
<<if !$player.flags.contract.understoodcomplete>>
But you've read your contract and... that's pretty much what you've signed up for. At least, so long as that is <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desire. Either you comply or you have to quit within the probation period, which leaves you about <<=$player.qualifyingperiod>> days. After that you have to give at least 3 months notice, and if you do not work as intended within that time, they can "repurpose" you, whatever that means.
<<else>>
That's not what you signed up for... was it? You curse the fact that you are still struggling to understand the contract you so blindly signed.
<</if>>
<<else>>
<<if !$player.flags.contract.understoodcomplete>>
But you've read your contract and... that's pretty much what you've signed up for. At least, so long as that is <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desire. And now that you are out of the probationary period... Well, per the document you signed any change in "employment status" requires at least 3 months notice, and if you do not continue to meet expectations in the meantime, they can "repurpose" you, whatever that means.
<<else>>
Well.. yes, that seems pretty apparent by this point, you idly wonder if that was always the case, perhaps you should go back and read the contract you so ignorantly signed?
<</if>>
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Now, since we finally talked about "nothing," you are free to leave. But one more thing <<=$player.first_name>>, if you idle around in my office one more time without any good reason, I will make your butt wish you had a topic to talk about! And if you think that kind of disciplinary measure is too mundane, well... I can always get more... creative, that clear? Good. Then be a darling and close the door behind you, when you leave.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office" 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<if (setup.getTotalValue('bdsm')>3)||(setup.getTotalValue('submission')>=5)>>
You have been warned about idling before, but this time you're doing it on purpose. You enter <<=ps(setup.getNpcName('npc_manager', 'formal'))>> and knock over a glass filled with pencils. Popping up you let out an innocent "Oops." <br>
<br>
<<printThought $player "Did I do that?">><br>
<br>
A devilish grin blossoms on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face, followed by a sinister chuckle.<br>
<br>
"@@.npc_manager;Ah, to hell with it, I really could use something to let off some steam. <<=$player.first_name>>, get that well cushioned butt of yours over here at once, and take off everything besides your underwear!@@", she commands while sliding open her drawer of paddles.<br>
<br>
[<<moveTo 'event_manager_talk_nothing_2' 'Take off your clothes' 660>>]
<<else>>
You have been warned before that <<=setup.getNpcName('npc_manager', 'formal')>> hates idling. You quickly ponder your options.
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
You quickly think up a technically useful, but harmless question you could ask related to workflow and procedures.
<<else>>
But your porous mind is unable to hold a thought long enough to come up with anything useful.
<</if>>
<br><br>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
[<<moveTo 'event_manager_talk_nothing_1_talk' 'Ask your questions' 300>>]<br>
[<<moveTo 'event_manager_talk_nothing_1_nothing' 'Do nothing and see what happens' 180>>]
<<else>>
[<<moveTo 'event_manager_talk_nothing_1_nothing' "Stand around looking like you've forgotten why you got in here in the first place." 180>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: PC asks a question about work
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if !$npc_manager.flags.talkednothing>>
<<set $npc_manager.flags.talkednothing = true>>
<<set $scene.first_time = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first_time>>
Standing there all dressed up with nowhere to go you bite your lip and start to think.<br>
<br>
<<printThought $player "Oh god. What am I doing? She already warned me, and I am still here, idling in her office...">><br>
<br>
"@@.npc_manager;Yes, <<=$player.first_name>>. What is it?@@"<br>
<br>
You blankly stare into the room, everything starting to fade into the background, but you're unwilling, or.. unable to refocus your gaze.<br>
<br>
"@@.npc_manager;Hello? <<=$player.first_name>>... What do you want?@@"<br>
<br>
Still no response from you. You just stand there and realise the futility of your situation, paralysed, stuck in the moment unable to move forward or back. Unhappy with your unresponsiveness, <<=setup.getNpcName('npc_manager', 'formal')>> rises from her chair, walking, or rather angrily stalking towards you. Standing directly before you she waves her hand in front of your eyes to see if you're even reacting to anything.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, what is going on? Answer. Now.@@"<br>
<br>
Well, forward it is. You faintly whisper "idling." She takes a small step backwards, her expression puzzled.<br>
<br>
"@@.npc_manager;Wh... I beg your pardon?@@"<br>
<br>
You repeat the word, this time with at a normal volume, though your voice sounds oddly high. That one seemed to get through to her. A devilish grin appears on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face, followed by a sinister laugh.<br>
<br>
"@@.npc_manager;Ah, to hell with it, I really could use something to let off some steam. <<=$player.first_name>>, get that well cushioned butt of yours over here at once, and take off everything besides your underwear!@@", she commands while going back to her desk to slide open her drawer of paddles.<br>
<br>
<<else>>
Standing there all dressed up with nowhere to go you bite your lip and start to think to yourself.<br>
<br>
<<printThought $player "Well, this seems familiar. Here we go again">><br>
<br>
"@@.npc_manager;Yes, <<=$player.first_name>>. What is it?@@"<br>
<br>
Again, you space out, thinking there has to be an easier way to gain her attention. Is that really what you're doing here? Trying to get her attention?<br>
<br>
"@@.npc_manager;Hello? <<=$player.first_name>>... Oh. I see where this is going.?@@", she narrates towards you while getting up, displaying a brilliant while devilish smile. Getting up from her enormous office table , circling around you like an predator, ready to strike at any given moment, she gets closer to you, and you think you can almost feel her hot breath on your neck, as she whispers into your ear, "@@.npc_manager;You know <<=$player.first_name>>, if you really need more... discipline in your life, all you have to do is ask. You surely gain a fair bit of humility and experience from it, something we both can benefit from. As long as it does not interfere with my duties toward the company I am here to provide you with as much discipline as you can sustain. And more after that. And there is a lot more discipline where that came from. Of course if you do not yet feel ready I might humor your childish charade... for a short while, but make no mistake about this: my forbearance is fairly limited.@@"<br>
<br>
She heaves a sigh and continues.<br>
<br>
"@@.npc_manager;But you... came at the right spot at the right time. I really could use something to let off some steam. <<=$player.first_name>>, get that well cushioned butt of yours over here at once, and take off everything besides your underwear!@@", she commands while going back to her desk to slide open her drawer of paddles.<br>
<br>
<</if>>
[<<moveTo 'event_manager_talk_nothing_2' 'Take off your clothes' 660>>]
</div>/*#
#desc: PC asks a random question about work
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'smart' 5 'normal' $ALONE>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You manage to come up with a few questions relevant to your job. Luckily for you <<=setup.getNpcName('npc_manager', 'formal')>> doesn't figure out that you came in here with no idea what to do at all, and fills in some of your missing knowledge about the company procedures. You feel like this might help you with your work in the future, though you can't help but see a hint of disappointment in her face, like she expected you to do something less mundane. After a short while you finish your talk.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: punished for talking to manager about "nothing" after work
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<useClothSetPush 'talk_nothing'>>
<<removeEverythingButUnderwear $player $now>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.inside = false>>
<<set $talkNothing = {}>>
<<set $talkNothing.cum = false>>
<<set $talkNothing.caged = false>>
<<set $talkNothing.panties = "none">>
<<if setup.getItemTypeName("cage")!="">>
<<set $talkNothing.caged = true>>
<</if>>
<<if $player.timebased.horny > 20>>
<<set $talkNothing.cum = true>>
<<if setup.getItemTypeName("cage")=="">>
<<set $player.timebased.horny = 0>>
<<else>>
<<set $player.timebased.horny = Math.round($player.timebased.horny/2)>>
<</if>>
<<set $talkNothing.panties = setup.checkTopBodySlot('penis','bottom')>>
<<changeItemStatus $talkNothing.panties 'cumsoaked' '["set",100]'>>
<<else>>
<<set $player.timebased.horny = setup.changeHorny($player,20)>>
<</if>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 20)>>
<<set $npc_manager.perversion+=1>>
<<set $npc_manager.dm+=1>>
<<decrementEmotion 'anger' 'npc_manager' 2>>
<<applyExperience 'bdsm' 4 'normal' $SEEN_FRIEND>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'accepting')>>
<<setThreshold 'submission' 'submissive_secretary' 'accepting' true>>
<</if>>
<<applyExperience 'submission' 3 'normal' $SEEN_FRIEND>>
<<decrementEmotion 'anger' 'npc_manager' 5>>
<<set $player.inside = true>>
<<if $player.makeup.template!="">>
<<changeMakeupMessed $player 100>>
<</if>>
<</if>>
<<if setup.checkWornListTag(['female'],'and')==true>>
<<set _tmpSissy = true>>
<<else>>
<<set _tmpSissy = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Again you stand in your <<=ps(setup.getNpcName('npc_manager', 'title'))>> office wearing only your <<if _tmpSissy>>lingerie<<else>>underwear<</if>> you do your best not to blush like a ripe tomato. <<=setup.getNpcName('npc_manager', 'formal')>> walks towards you. In her hand she is wielding the familiar pink leather paddle that she appears to prefer for disciplining her "SISSY secretary." <br>
<br>
"@@.npc_manager;<<=$player.first_name>>, my dear Sissy.@@" <<=setup.getNpcName('npc_manager', 'formal')>> whispers in your ear, leaning close.
<<if setup.getTotalValue('feminization')>5 && (setup.getTotalValue('submission')>5||setup.getTotalValue('bdsm')>0)>>
The word sissy makes you shiver in anticipation of what's coming next.
<</if>>
<br><br>
There are mere inches separating you, her heat and scent almost overpowering. Though you want nothing more you find yourself unable to move the short distance to actually touch her. Waiting for a few more moments as you tremble she finally steps away from you, continuing to talk at a more normal volume.<br>
<br>
"@@.npc_manager;Do you have anything to say, Sissy? I have warned you repeatedly that I will not tolerate such insolent behaviour, but alas, here we are, again. You are a bad Sissy and bad Sissies deserve, nay, NEED, to be punished. Oh, I am going to destroy that cute little booty of yours. By the time I am through will be unable to sit for the next two days.@@" As she talks she takes a few practice swings with the paddle, the implement making a soft wooshing sound as it pushes air out of the way. The whole time she never deviates from staring you down.<br>
<br>
<<if setup.getTotalValue('submission')>5 && setup.getTotalValue('bdsm')>0>>
<<printThought $player "Oh god. I am getting so horny!">><br>
<br>
You don't even try to resist, giving in almost immediately to her dominance over you. Diverting from her gaze you instead look down in submissive deference, and staring instead at her polished black heels. Meekly, you beg her for forgiveness, while confessing that you have been a bad sissy and deserve to be punished. The devilish grin on her face is not a sign of mercy or grace. That's ok, you don't deserve any, you deserve only her firm hand, and her firm hand, she will give you.<br>
<br>
"@@.npc_manager;Very good. You see the errors of your way. Very well, my position as your Domina demands I swiftly correct your every blunder and flaw. It is so better now that you properly know your place, as a good little sissy, isn't it <<=$player.first_name>>? Are you a good little sissy? Hmm?@@"<br>
<br>
You nod without making eye contact. She puts an finger under your chin, gently lifting it upwards.<br>
<br>
"@@.npc_manager;No, no, no sissy. Look me in the eyes and tell me what you are!@@"<br>
<br>
You look into her eyes and say that you are a sissy, your voice quivering.<br>
<br>
"@@.npc_manager;Yes. This is what I have waited for. Very well, sissy. Bend over the desk, and make haste. My paddle is craving sissy buttocks!@@"
<<else>>
You have no idea how to react and remain silent.<br>
<br>
"@@.npc_manager;Cat got your tongue? Feeling a bit taciturn, perhaps? No matter, I will take as long as it takes training you until you finally understand that it is in your best, and only, interest to serve as my cute, obedient little sissy! You know what to do!@@"
<</if>>
<br><br>
You walk in front of the desk and bend over. The desk is slightly higher than your legs, so you have to get on your toes to lie with your belly on top of it, the position exposing your butt even more. For a moment the room plunges into near total silence. You can only hear the pounding of your heart and your shallow breaths and then a loud swinging sound followed by an even louder SMACK of leather on your booty. You gasp, still trying to endure the pain but failing miserably as it seems much stronger than the last time.<br>
<br>
"@@.npc_manager;You know, with a backside like this, you never had a chance. Your bottom was made for spanking.@@"<br>
<br>
<<if !setup.checkItemTypeWornTag("stockings","pantyhose") && setup.checkItemTypeWornTag("panties","thong")>>
Your pained gasp only seems to encourage <<=setup.getNpcName('npc_manager', 'formal')>> as the next strike hits before you can even catch your breath. You gasp for air, but another blow impacts your exposed booty, and there is nothing between you and the paddle to soften the blow.
<<else>>
Your pained gasp only seems to encourage <<=setup.getNpcName('npc_manager', 'formal')>> as the next strike hits before you can even catch your breath. You gasp for air, but another blow impacts your exposed booty and your underwear does nearly nothing to soften the blow.<br>
<br>
Seeing your predicament, <<=setup.getNpcName('npc_manager', 'formal')>> leans down to your level, next to your ear, whispering, "@@.npc_manager;Oh, I am so sorry, did that hurt? Here, let me help you.@@", and shows you her helpful side by
<<if setup.checkItemTypeWornTag("stockings","pantyhose")>>
pulling down your <<=setup.getItemTypeName("stockings")>>
<<if !setup.checkItemTypeWornTag("panties","thong")>>
and your <<=setup.getItemTypeName("panties")>>
<</if>>
just far enough to free your backside.
<<elseif !setup.checkItemTypeWornTag("panties","thong")>>
pulling down your <<=setup.getItemTypeName("panties")>> just far enough to free your backside.
<</if>>
<br><br>
You feel goose-bumps blossoming on your exposed rear as you tremble in anticipation, even the scant protection of your underthings no more.<br>
<br>
<</if>>
Your yelping alternates with the smacking sound of the paddle, uniting to form a duet of agony and pleasure.<br>
<br>
Your face turns bright pink and heavy tears run down your face
<<if $player.makeup.template!="">>
spoiling your makeup,
<</if>>
while you try to withstand the rising pain. Meanwhile your <<getWordMyPenis $player>>
<<if $talkNothing.caged>>
twitches within the <<=setup.getItemTypeName("cage")>>
<<else>>
is getting harder.
<</if>>
<br><br>
<<if setup.getTotalValue('submission')>5 || setup.getTotalValue('bdsm')>3>>
<<printThought $player "Spank me like the naughty Sissy I am!">>
<<else>>
<<printThought $player "Oh no, if this continues, will I become a submissive sissy for real?">>
<</if>>
<br><br>
<<if $talkNothing.cum>>
You feel like being struck by lightning after a few dozen strokes on your booty. You've long given up on counting them, since you cannot concentrate on anything besides the pain and the pleasure bounding through your body with each thundering heartbeat.
<<if $talkNothing.caged>>
Even though your <<getWordMyPenis $player>> is safely locked within its jail each new blow has you straining against your prison, pushing you closer to the edge.
<<else>>
Your <<getWordMyPenis $player>> twitches with enjoyment with each new blow, pushing closer and closer to the edge.
<</if>>
Finally, as the paddle lands against your buttocks once again your mind shatters in a moment of pure pleasure and antagonizing agony
<<if $talkNothing.caged>>
as a big load of <<getWordCum $player>> pours out of your caged <<getWordMyPenis $player>>
<<else>>
as you spray a big load of <<getWordCum $player>>
<</if>>
<<if $talkNothing.panties!="none">>
into your <<=setup.getItemName($talkNothing.panties)>>.
<<else>>
onto the floor.
<</if>>
You turn your head to glance over your shoulder. From the look on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face, she knows exactly what you just did. This fact only serves to humiliate you even further.
<<else>>
Your booty feels like you've been stung by a swarm of angry hornets. Before long your ass is like a French flag - blue, white, red and ready to surrender. You've long given up on counting blows, unable to concentrate on anything besides the pain you feel. Despite it all you stop just shy of
<<if $talkNothing.panties!="none">>
cuming into your <<=setup.getItemName($talkNothing.panties)>>,
<<else>>
orgasm,
<</if>>
though you are horny as hell.<br>
<br>
"@@.npc_manager;Well, someone certainly looks eager.
<<if $talkNothing.caged>>
Good thing, that we locked you away, nice and safe and secure. Isn't that right, Sissy?
<<else>>
You had better put that... thing away, before I take a few shots at your front side to bring it in line, <<=$player.first_name>>.
<</if>>
@@"
<</if>>
<br><br>
It takes you a while, but you manage to recover from the spanking. You try to catch your breath while <<=setup.getNpcName('npc_manager', 'formal')>> cleans the paddle and puts it back into the drawer.<br>
<br>
"@@.npc_manager;Would you please put your clothes back on and leave my office, <<=$player.first_name>> ? Whatever order you like. As much as I love to look at the art I left on your behind, it is more than a little distracting and I still have work to finish today. Thank you, and good night.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Put on your clothes and leave the office" 270 "<<useClothSetPop 'talk_nothing' $player $now>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: after work spanking from manager
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 20)>>
<<set $npc_manager.perversion+=1>>
<<set $npc_manager.dm+=1>>
<<decrementEmotion 'anger' 'npc_manager' 7>>
<<applyExperience 'submission' 3 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 4 'normal' $SEEN_FRIEND>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'accepting')>>
<<setThreshold 'submission' 'submissive_secretary' 'accepting' true>>
<</if>>
<<if $player.timebased.horny > $player.penis.erection>>
<<set $player.timebased.horny = 0>>
<<set _panties=setup.getItemFromType('panties')>>
<<if _panties!="">>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<<else>>
<<set $player.timebased.horny+=25>>
<</if>>
<</if>>
<<if setup.checkWornListTag(['female'],"and")==true>>
<<set _tmpSissy = true>>
<<else>>
<<set _tmpSissy = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
As you stand in the room wearing only your <<if _tmpSissy>>lingerie<<else>>underwear<</if>> and trying your best not to blush like a ripe tomato, you watch <<=setup.getNpcName('npc_manager', 'formal')>> bending down and open one of the lower drawers of her office desk to retrieve another paddle from her seemingly expansive collection of spanking tools. This one is slightly larger then the one she used the first time, when this whole ordeal started. It is also.... cuter?; wrapped in pink leather with the words "for SISSY secretary use only" embossed into either side in flowing cursive.<br>
<br>
"@@.npc_manager;<<=$player.first_name>> my dear
<<if _tmpSissy>>
...
<</if>>
boy.@@" <<=setup.getNpcName('npc_manager', 'formal')>> whispers in your ear while getting really close to you<<if _tmpSissy>>, putting a way too long pause before the word boy<</if>>. There are mere inches separating your bodies. Though you can feel her warmth you do not dare to move. Lingering for a few moments she eventually moves a few steps away and continues to talk at a normal volume.<br>
<br>
"@@.npc_manager;This is how this is going to happen. You will beg for mercy like a good little pet, or I am going to destroy that cute little booty of yours so much you will be unable to sit for the next two days.@@" As if to emphasise the point she takes a few practice swings through empty air, maintaining eye contact with you all the time. Despite this paddle's less... intimidating appearance you doubt it will hurt any less.
<br>
<<if setup.getTotalValue('submission')<5>>
<<printThought $player "Oh god. She's totally getting off on this!">>
<br>
<</if>>
<br>
<<if setup.getTotalValue('submission')<5>>
You manage to keep in command of yourself, withstanding the onslaught of emotions raging within your mind. Her dominance, sex appeal, the smell of her perfume strike you all at once, but you still resist. Steeling yourself you conclude that submitting to her suggestion would likely only make things worse for you.<br>
<br>
"@@.npc_manager;Ooh. Very good <<=$player.first_name>>. You are trying to resist me. Very good indeed. I like them with a little pepper. Makes it a lot more fun to train them properly. Well, you know the drill. Bend over that desk like the good, little sissy you are!@@"<br>
<<else>>
You feel your mental defences crack, then shatter under her psychic onslaught. You give in to her dominance over you, breaking eye contact with her and looking down at her steep, sexy heels in defeat. You start to beg for mercy, but as soon as you do you realise the mistake in your logic. The devilish grin on her face is not a sign of mercy or grace. It's the polar opposite.<br>
<br>
"@@.npc_manager;Yes. This is what I have been waiting for. We are going to have so much fun together. It goes so much smoother once you accept your role. And it is a lot more fun if you're trained properly to know your place, as good little sissy, isn't it <<=$player.first_name>>? Are you a good little sissy? Yes you are! Now, bend over; while your behaviour has earned you some measure of mercy... you still need to be disciplined.@@"<br>
<</if>>
<br>
You walk in front of the desk and bend over. The desk is slightly higher than your legs, so you have to get on your toes to lie with your belly on top of it, the position exposing your butt even more. For a moment there is almost total silence in the room. You can only hear the pounding of your heart and your shallow breaths until the near silence is interrupted a loud swinging sound followed by an even louder SMACK of leather on your booty. Still trying to endure the pain, you fail miserably as it seems much stronger than the last time.<br>
<br>
"@@.npc_manager;Well <<=$player.first_name>>, how do you say in computer games? Last time was the tutorial. This is the real deal.@@".<br>
<br>
Your pained gasp only seems to encourage <<=setup.getNpcName('npc_manager', 'formal')>> as the next strike already hits before you can even catch your breath. You gasp for air, but the next strike already hits your exposed booty and your underwear does nothing to soften the blow. Your yelping alternates with the smacking sound of the paddle resulting in a duet of agony and pleasure.<br>
<br>
Though your face turns bright pink and heavy tears run down your face in response to the pain blooming on your backside... your <<getWordMyPenis $player>> is getting harder.<br>
<br>
<<printThought $player "Oh no, if this continues, I could turn into a submissive sissy for real!">><br>
<br>
<<if $player.timebased.horny > $player.penis.erection>>
You feel like being struck by lightning after a few dozen strokes on your booty. You've long given up on counting blows, since you cannot concentrate on anything besides the paradoxical mix of pain and the pleasure you feel. Feeling your <<getWordMyPenis $player>> becoming more active and harder then ever before you think your mind shatters in a moment of pure pleasure and antagonizing agony as you spray a big load of <<getWordCum $player>> into your <<if setup.checkItemTypeWornTag("panties","female")>>panties<<else>>boxer shorts<</if>>.<br>
<br>
You turn your head to glance over your shoulder. From the look on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face, she knows exactly what you just did. This fact only serves to humiliate you even further.<br>
<br>
<<printThought $player "Oh god, why? Why am I getting so turned on by this?">><br>
<br>
<<else>>
Your booty feels like you've been stung by a swarm of angry hornets, turning blue and red. You've long given up on counting blows, since you cannot concentrate on anything besides the pain you feel. But at least you do not come in your <<if setup.checkItemTypeWornTag("panties","female")>>panties<<else>>boxer shorts<</if>>, even though you are horny as hell.<br>
<br>
"@@.npc_manager;Well, someone certainly looks eager. Put that away, before I decide to spank your front as well, <<=$player.first_name>>.@@"
<</if>>
<br>
<br>
[<<moveTo $returnto "Continue" 180>>]
</div>/*#
#desc: after work spanking from manager TODOfuture
#status: STUB 0.3.0.0
#*/
Ooops, this is very Not yet implemented.<br>
<br>
[<<moveTo "room_foyer" "Go home, Dorothy!" 0>>]/*#
#desc: goto canteen as forced female first time
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'canteen'>>
<<if $roomchange==true>>
<<set $npc_cook.call_name = "Lassie">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You slowly approach the canteen, staring at the floor as people walk past you. You are very conscious about the way you look right now, and you're not really sure if you should abandon your lunch run; flee back to your little antechamber and take the scorn of <<=setup.getNpcName('npc_manager', 'formal')>> instead. But after a while you realise that, besides a few glances now and there, you garner almost no reaction at all. It seems like your outfit is business as usual. How peculiar. But then again, <i>this</i> is the company where <<=setup.getNpcName('npc_barista', 'first')>> works. But if outfits like <<=ps(setup.getNpcName('npc_barista', 'first'))>> or yours are such a usual sight at the company, where are they? You really haven't seen anyone else in such... extremes. Though you never ventured past either your last company nor your current employer's floor, and this building is gigantic.<br>
<br>
<<printThought $player "Hmm... now I'm getting curious...">><br>
<br>
[<<moveTo "room_office_lunchbreak_canteen" "continue" 60>>]
</div>/*#
#desc: goto canteen as female first time good girl
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'canteen'>>
<<if $roomchange==true>>
<<set $npc_cook.call_name = "Lassie">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You walk into the canteen the... crowded canteen, the VERY crowded canteen.<br>
<br>
Fixating on the really quite fascinating patterning of the tile floor you somehow manage to take your place in line without bumping into anyone.<br>
<br>
As minutes drag on and the line slowly creeps forward your failure to hear people whispering about you has you finally muster the courage to look around.<br>
<br>
You aren't sure whether to be relieved or disappointed but... nobody is even looking in your direction, it's as if they don't even care, like your attire is just utterly... totally... normal.<br>
<br>
<<printThought $player "What is with this company? Or... Maybe I'm just overblowing this whole thing?">><br>
<br>
Reaching the front of the line you finally get a confirmation that you aren't TOTALLY crazy in that <<=ps(setup.getNpcName('npc_cook', 'first'))>> gaze seems to linger on you a moment longer as he asks your order. Though... even that you aren't certain, second guessing your own instincts quite a bit as you try to remember what <<=setup.getNpcName('npc_manager', 'formal')>> sent you here for.
<br>
<br>
[<<moveTo "room_office_lunchbreak_canteen_buyfood" "Continue" 60>>]
</div>/*#
#desc: receive + change into sissy panties from manager for being a good girl at work
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $npc_manager.flags.good_girl.got_sissy_underwear = true>>
<<setScene>>
<<set $scene.alreadygotsissyitems = false>>
<<set $scene.own_sissy_items = false>>
<<set $scene.wearing_full_sissy = false>>
<<set $scene.wearing_partial_sissy = false>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemOwned("pink_sissy_panties") || setup.checkItemOwned("sissy_garter") || setup.checkItemOwned("pink_sissy_bra") || setup.checkItemOwned("pink_sissy_stockings")>>
<<if setup.checkItemOwned("pink_sissy_panties") && setup.checkItemOwned("sissy_garter") && setup.checkItemOwned("pink_sissy_bra") && setup.checkItemOwned("pink_sissy_stockings")>>
<<if setup.getItemFromType("panties") == "pink_sissy_panties" && setup.getItemFromType("bra") == "pink_sissy_bra" && setup.getItemFromType("garter") == "sissy_garter" && setup.getItemFromType("stockings") == "pink_sissy_stockings">>
<<set $scene.wearing_full_sissy = true>>
<</if>>
<<set $scene.own_sissy_items = true>>
<<else>>
<<if setup.getItemFromType("panties") == "pink_sissy_panties" || setup.getItemFromType("bra") == "pink_sissy_bra" || setup.getItemFromType("garter") == "sissy_garter" || setup.getItemFromType("stockings") == "pink_sissy_stockings">>
<<set $scene.wearing_partial_sissy = true>>
<</if>>
<<set $scene.own_some = true>>
<<if !setup.checkItemOwned("pink_sissy_panties")>>
<<addItem "pink_sissy_panties">>
<<wearItem $player $now "pink_sissy_panties" true>>
<</if>>
<<if !setup.checkItemOwned("pink_sissy_bra")>>
<<addItem "pink_sissy_bra">>
<<wearItem $player $now "pink_sissy_bra" true>>
<</if>>
<<if !setup.checkItemOwned("sissy_garter")>>
<<addItem "sissy_garter">>
<<wearItem $player $now "sissy_garter" true>>
<</if>>
<<if !setup.checkItemOwned("pink_sissy_stockings")>>
<<addItem "pink_sissy_stockings">>
<<wearItem $player $now "pink_sissy_stockings" true>>
<</if>>
<</if>>
<<else>>
<<setThreshold "feminization" "good_girl" "sissy_underwear" true>>
<<addItem "pink_sissy_panties">>
<<addItem "sissy_garter">>
<<addItem "pink_sissy_bra">>
<<addItem "pink_sissy_stockings">>
<<removeAllClothing $player $now true>>
<<wearItem $player $now "sissy_garter" true>>
<<wearItem $player $now "pink_sissy_stockings" true>>
<<wearItem $player $now "pink_sissy_bra" true>>
<<wearItem $player $now "pink_sissy_panties" true>>
<</if>>
<<set $scene.no_need_to_change = ($player.flags.fem_style.underwear == "forced")>>
<<else>>
<<if setup.checkPlayerDressed($player)>>
<<initRoom>>
<<if $scene.afterWork>>
<<moveTo 'room_office_sissy_secretary_work_fridayafternoon'>>
<<else>>
<<moveTo 'event_manager_daily_check_stage_2_4'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.own_sissy_items>>
<<if $player.flags.fem_style.underwear == "forced">>
You open the box to find... absolutely nothing. You look up confused at <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;Well, this is where you would have gotten your ultra feminine sissy lingerie, if you had not forced my hand on the very first day. In the hindsight, a smart move I have to admit. I give you the benefit of the doubt and believe for the time being, that your act of transgression was a cry for help, even though you could not even have known that I had this prepared for you. Then again, maybe you simply thought: "Going commando... what is the worst that could happen?," am I right? Not that I am complaining, that did speed things up quite a little bit, didn't it?@@"<br>
<br>
<<if $scene.wearing_full_sissy>>
"@@.npc_manager;Anyway, as much as I would love you to work dressed like this in your full, well.. for now, sissy glory... I am afraid that is not possible... yet. I am afraid if anyone enters the office there would be hardly any work done... though you could well be working something hard.@@" She smiles, visions of sissy sexual debasement dancing behind her eyes. "@@.npc_manager;No, I still need you to fulfill your duties as a secretary.@@"
<<elseif $scene.wearing_partial_sissy>>
"@@.npc_manager;I would love to just stare at you looking like this... even more if you were wearing the FULL set, of course.@@" She smiles, visions of sissy sexual debasement dancing behind her eyes. "@@.npc_manager;No, I still need you to fulfill your duties as a secretary.@@"
<<else>>
"@@.npc_manager;That said well... it is a real pity that you are not wearing that lovely gift right now... maybe tomorrow?@@" She winks as you picture the look of predatory hunger that she has whenever she sees you in such ultra-fem attire.
<</if>>
<<else>>
<<if $scene.own_some>>
You open the box to find... pink. Examining the contents you are faced with a familiar, but incomplete set of sissified undergarments... the precise items that are missing from the partial set you already own.<br>
<br>
You look up at her in surprise, your eyes lighting up as she smiles.<br>
<br>
"@@.npc_manager;Go ahead, put them on!@@" She orders and you hurry to obey.<br>
<br>
<<if setup.checkItemOwned("pink_sissy_panties") && setup.checkItemOwned("sissy_garter") && setup.checkItemOwned("pink_sissy_bra") && setup.checkItemOwned("pink_sissy_stockings")>>
Soon fully sissified... at least in attire, you tremble slightly under her devouring gaze. "@@.npc_manager;Mmmm, perfection. Now that I have helped you "finish the set" I see little reason for you to wear anything else... thought that remains your decision. Who knows, maybe you will somehow find a way to suprise me with something even more adorable!@@"
<<else>>
You slip into her gift, the soft satin feeling so very lovely against your flesh. "@@.npc_manager;Just lovely. Though perhaps you will grace me by wearing the full set together next time?@@"<br>
<br>
<<if $npc_manager.flags.good_girl.seen_partial_sissy_set>>
You blush and nod, heart still racing at the thought that you now own a proper full sissy set!
<<else>>
You blush and nod, even as your mind spins.<br>
<br>
<<printThought $player "I never wore any of those things to work... how did she know?">><br>
<br>
She seems to sense your confusion responding with a knowing grin. "@@.npc_manager;Call it a special sissy sense... after all, what sort of manager would I be if I did not keep close track of my employee?@@"<br>
<br>
You gulp, suddenly afraid about what else she knows, judging from her expression... a lot more than you might have preferred.
<</if>>
<</if>>
<<else>>
You open the box to find... absolute nothing. You look up confused at <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles gently.
<<if $scene.wearing_full_sissy>>
"@@.npc_manager;Normally this would be the stage of your development where I gave you a lovely full pink sissy set of undergarments but... well, you are already wearing them; and looking so very lovely doing so.@@"
<<else>>
<<if $scene.wearing_partial_sissy>>
"@@.npc_manager;Normally this would be the stage of your development where I gave you a lovely full pink sissy set of undergarments. Panties, stockings, bra, garters, you know, the works. But... well, you already own them all. As adorable as you look you would look even better if you wore the full set.@@"
<<else>>
"@@.npc_manager;Normally this would be the stage of your development where I gave you a lovely full pink sissy set of undergarments but... well, you already own them all. It is a pity that you are not wearing any of them now but... maybe some other day?@@"
<</if>>
<br><br>
<<if $npc_manager.flags.good_girl.seen_full_sissy_set>>
You nod, blushing in memory of the way she looks at you when you're fully "done up."
<<else>>
<<if $npc_manager.flags.good_girl.seen_partial_sissy_set>>
<<printThought $player "Wait... how did she know I owned all of those pieces, I've only worn some of them to work...">>
<<else>>
<<printThought $player "Wait... how did she know I owned something like that, I've never worn any of those items to work!">>
<</if>>
<br><br>
You look at her in surprise but she just smiles wider. "@@.npc_manager;Call it a special sissy sense... after all, what sort of manager would I be if I did not keep close track of my employee?@@"<br>
<br>
You gulp, suddenly afraid about what else she knows, judging from her expression... a lot more than you might have preferred.
<</if>>
<</if>>
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Anyway, as much as I would like to admire your cuteness we both have other things to be about doing.@@" She motions for you to get dressed and depart.<br>
<br>
<<if setup.checkPlayerDressed($player) && setup.checkOutsideDecency($player) && setup.checkItemTypeWorn("bra")>>
<<if $scene.afterWork>>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' "Return to work" 60>>]
<<else>>
[<<moveTo 'event_manager_daily_check_stage_2_4' "Return to work" 0>>]
<</if>>
<<else>>
[@@.link_locked;I can't just wear underthings!, I need to be properly dressed first.@@]
<</if>>
<<else>>
You open the box to find a poofy bed of pink and frills. You didn't know what you were expecting but somehow... it is perfect. You look up at <<=setup.getNpcName('npc_manager', 'formal')>> with a smile that is almost gleefully returned before gently pawing through to confirm that you have in your hands a full set of ultra-sissy fetish lingerie - a complete matching ensemble of panties, garters, bra and stockings.<br>
<br>
Stepping towards you she leans in close, her scent filling your nostrils, her breath hot on your neck as she whispers centimeters from your ear. "@@.npc_manager;Put them on...@@"<br>
<br>
You shudder in submissive lust and begin stripping off your current cute undergarments. You have stripped for her before, every morning, in fact, to some degree but this time feels different. Piece by sensual piece each cute pink item falls to the floor until you are naked and she hands you the first of your "new" items.<br>
<br>
Finest pink satin slides over your bare skin, sending sparks of excitement through your body as your body goes from bare to being framed and covered in soft pink and oh so many frills. Standing behind your back she helps fit your bra before turning you to face the mirror in her office. Her arms wrap around your body, one groping your chest and the other inside your panties to cup your caged sissy clit.<br>
<br>
Her chin on your shoulder she gives your ear a playful nibble before meeting your gaze in reflection and whispering to you. "@@.npc_manager;Look at that sissy. So beautiful. So obedient. So perfect. THIS is what you were meant to be and I am so lucky to have you for my own - my pink diamond in the rough. I will polish your every facet until you. Are. Perfect.@@"<br>
<br>
You tremble at her touch and want to bashfully look away, but you can't - in this moment your actions are not your own, they are hers as she holds your gaze.<br>
<br>
The spell lasts for but a matter of seconds before she smiles and steps away, silently handing you your outer attire for you to finish dressing.<br>
<br>
"@@.npc_manager;As much as I would love you to work dressed like this, I am afraid that is not possible... yet. I am afraid if anyone enters the office there would be hardly any work done... though you could well be working something hard.@@" She smiles, visions of sissy sexual debasement dancing behind her eyes. "@@.npc_manager;No, I still need you to fulfill your duties as a secretary.@@"
<</if>>
</div>/*#
#desc: good girl - manager rewards you with pink outfit
#status: FINISHED 0.5.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemWorn("pink_mary_janes") && setup.checkItemWorn("satin_blouse_pink") && setup.checkItemWorn("skirt_pink_leather") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings")>>
<<initRoom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<moveTo "event_manager_good_girl_pink_outfit_2">>
<<elseif $roomchange == true>>
<<addItem "pink_mary_janes">>
<<addItem "satin_blouse_pink">>
<<addItem "skirt_pink_leather">>
<<addEvent 'first_time_pink_home' '{"trigger":"always","type":"next","location":"room_foyer","priority":100}' '{"szene":"event_first_time_home_pink"}'>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You open the bag and glance down to see... even more pink.<br>
<br>
<<printThought $player "Yum">><br>
<br>
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful eye you pull out a pink satin blouse, a short patent leather skirt and a pair of oh-so-cute lace-trimmed Mary Jane heels.<br>
<br>
You look up with a wide smile that almost matches <<=ps(setup.getNpcName('npc_manager', 'formal'))>> own obvious excitement. "@@.npc_manager;What are you waiting for? Try them on!@@"
</div>/*#
#desc: good girl - manager rewards you with pink outfit
#status: FINISHED 0.5.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<if $player.flags.fem_style.female == "money">>
<<setThreshold "feminization" "money" "cute_secretary" true>>
<<elseif !setup.hasThreshold("feminization", "voluntary_path_feminization", "full_female_outside")>>
<<setThreshold "feminization" "good_girl" "cute_secretary" true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.bonus_gift>>
<<case 'female_voluntary'>>
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful, proudly smiling gaze you slowly change into the new outfit, the soft blouse swiftly buttoned over your chest, the tight skirt pulled up to hug you close. You shiver slightly, feeling as if the femininity of the garments is sinking into your skin and suffusing your body.
<<case 'good_girl_pink_uniform'>>
<<if $player.flags.fem_style.female == "money">>
You can pretend you're just doing this for the money but there's no hiding the excitement bubbling inside of you as you quickly button the soft blouse around your chest and pulling up the short, tight skirt. Putting them on causes you to shiver slightly, as if the femininity of the garments is penetrating deep into your body. A part of you wonders if it was worth the handful of credits you earned sacrificing your masculinity... but at this point it is a small part of you.
<<else>>
You do not have to be told twice, quickly buttoning the soft blouse around your chest and pulling up the short, tight skirt. Putting them on causes you to shiver slightly, as if the femininity of the garments is penetrating deep into your body.
<</if>>
<<default>>
ERROR: unknown bonus_gift lead-in: <<=$scene.bonus_gift>>
<</switch>>
Slipping into the heels you rise several inches in height, taking a couple <<if setup.getTotalValue("heels") < setup.getItemObj("pink_mary_janes").heels.difficulty>>awkward<<elseif setup.getTotalValue("heels") < setup.getItemObj("pink_mary_janes").heels.difficulty + 2>>careful<<else>>perfectly graceful<</if>> steps so that you can view yourself in the nearby full-length mirror.
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> magically appears next to you, her even steeper heels meaning you are now just about the same height. As gorgeous as her sleek, severe reflection is, however, you just can't take your eyes off your own.<br>
<br>
There is no other word for it - you look adorable, appearing utterly feminine in every way<<if $player.body.breastsize[0]==0>> save, perhaps, for your flat chest leaving the blouse hanging a bit loose<</if>>.
<<if $scene.makeup == "">>
Well... you could do with a dash of makeup but otherwise
<<elseif $player.hair.style == 'unkempt'>>
Combined with your perfect makeup the outfit lends your short, unkempt hair a bit of a rowdy flair,
<<elseif $player.hair.style == 'combed'>>
The package of clothing and makeup manages to make even your boyish haircut look somehow feminine,
<<else>>
From your perfect hair and makeup down across
<</if>>
your shiny satin and leather-wrapped ladylike figure, elongated pink-stockinged legs and cute heels combining to form a wondrous vision of pink femininity.<br>
<br>
With your short skirt you'll have to be careful bending over lest you flash whoever might be looking, but you look way too good to be bothered.<br>
<br>
Turning to admire yourself, particularly your prominent hips, from every angle you finally come around to face <<=setup.getNpcName('npc_manager', 'formal')>> with a smile.<br>
<br>
"@@.npc_manager;I am so glad you like it, and I absolutely love it as well. THIS is how a SISSY secretary should look, why I can scarcely seen any sign of that boring so-called man that first bashfully entered my office. Wear it with pride, you earned it. Oh, and it probably goes without saying that I expect you to wear office-appropriate, fully feminine clothes, top to bottom, at all times going forward. They do not have to be that outfit specifically but... I would certainly not object to such a choice.@@"<br>
<br>
She graces you with a final smile as you give a little curtsy of thanks.<br>
<br>
"@@.npc_manager;Speaking of earning, we both better get to work! I will see you later, have a great day!@@"<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. Everyone who enters the office today is going to see me dressed like a pretty girl! I'm going to make <<=setup.getNpcName('npc_manager', 'formal')>> so proud!!">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Leave her office and start work.">>]
</div>/*#
#desc: manager rewards you with pink outfit for dressing female voluntarily
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemWorn("pink_mary_janes") && setup.checkItemWorn("satin_blouse_pink") && setup.checkItemWorn("skirt_pink_leather") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings")>>
<<initRoom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<moveTo "event_manager_voluntary_pink_outfit_2">>
<<elseif $roomchange == true>>
<<addItem "pink_mary_janes">>
<<addItem "satin_blouse_pink">>
<<addItem "skirt_pink_leather">>
<<addEvent 'first_time_pink_home' '{"trigger":"always","type":"next","location":"room_foyer","priority":100}' '{"szene":"event_first_time_home_pink"}'>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<incrementEmotion 'satisfaction' 'npc_manager' 2>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You open the bag and glance down to see... even more pink.<br>
<br>
<<printThought $player "Yum">><br>
<br>
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful eye you pull out a pink satin blouse, a short patent leather skirt and a pair of oh-so-cute lace-trimmed Mary Jane heels.<br>
<br>
Despite having taken the initiative to start wearing women's clothing the pink ensemble you are now looking at feels a whole other level. And yet you cannot help but be entranced and drawn in by the delicate, beautiful garments.<br>
<br>
You look up with a slowly spreading smile that barely keeps pace with <<=ps(setup.getNpcName('npc_manager', 'formal'))>> own obvious excitement. "@@.npc_manager;What are you waiting for? Try them on!@@"
</div>/*#
#desc: voluntary path - manager rewards you with pink outfit
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<if !setup.setThreshold("feminization","good_girl","cute_secretary",true)>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful, proudly smiling gaze you slowly change into the new outfit, the soft blouse swiftly buttoned over your chest, the tight skirt pulled up to hug you close. You shiver slightly, feeling as if the femininity of the garments is sinking into your skin and suffusing your body.<br>
<br>
Slipping into the heels you rise several inches in height, taking a couple <<if setup.getTotalValue("heels") < setup.getItemObj("pink_mary_janes").heels.difficulty>>awkward<<elseif setup.getTotalValue("heels") < setup.getItemObj("pink_mary_janes").heels.difficulty + 2>>careful<<else>>perfectly graceful<</if>> steps so that you can view yourself in the nearby full-length mirror.
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> magically appears next to you, her even steeper heels meaning you are now just about the same height. As gorgeous as her sleek, severe reflection is, however, you just can't take your eyes off your own.<br>
<br>
There is no other word for it - you look adorable, appearing utterly feminine in every way<<if $player.body.breastsize[0]==0>> save, perhaps, for your flat chest leaving the blouse hanging a bit loose<</if>>.
<<if $scene.makeup == "">>
Well... you could do with a dash of makeup but otherwise
<<elseif $player.hair.style == 'unkempt'>>
Combined with your perfect makeup the outfit lends your short, unkempt hair a bit of a rowdy flair,
<<elseif $player.hair.style == 'combed'>>
The package of clothing and makeup manages to make even your boyish haircut look somehow feminine,
<<else>>
From your perfect hair and makeup down across
<</if>>
your shiny satin and leather-wrapped ladylike figure, elongated pink-stockinged legs and cute heels combining to form a wondrous vision of pink femininity.<br>
<br>
With your short skirt you'll have to be careful bending over lest you flash whoever might be looking, but you look way too good to be bothered.<br>
<br>
Turning to admire yourself, particularly your prominent hips, from every angle you finally come around to face <<=setup.getNpcName('npc_manager', 'formal')>> with a smile.<br>
<br>
"@@.npc_manager;I am so glad you like it, and I absolutely love it as well. THIS is how a SISSY secretary should look, why I can scarcely seen any sign of that boring so-called man that first bashfully entered my office. Wear it with pride, you earned it. Oh, and it probably goes without saying that I expect you to wear office-appropriate, fully feminine clothes, top to bottom, at all times going forward. They do not have to be that outfit specifically but... I would certainly not object to such a choice.@@"<br>
<br>
She graces you with a final smile as you give a little curtsy of thanks.<br>
<br>
"@@.npc_manager;So! Now that you are so perfectly prepared how about we reset the day and see how you do?@@"<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. Everyone who enters the office today is going to see me dressed like a pretty girl! I'm going to make <<=setup.getNpcName('npc_manager', 'formal')>> so proud!!">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_1" "Begin inspection.">>]
</div>/*#
#desc: calculates what "set" of underwear you're wearing
#status: RELEASED 0.6.0.0
#*/
<<set $scene.bra = setup.getItemFromType("bra")>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<set $scene.stockings = setup.getItemFromType("stockings")>>
<<set $scene.garters = setup.getItemFromType("garters")>>
<<set $scene.body = setup.getItemFromType("body")>>
<<set $scene.underwearStyle = "">>
<<set $scene.underwearmissing = !($scene.bra != "" && $scene.panties != "" && $scene.stockings != "")>>
<<set _tmpArray = []>>
<<if $scene.underwearmissing && $scene.garters == "" && $scene.bra == "" && $scene.panties == "" && $scene.stockings == "">>
<<set $scene.underwearStyle = "none">>
<<else>>
<<if $scene.bra != "">><<set _tmpArray.push($scene.bra)>><</if>>
<<if $scene.panties != "">>
<<set _tmpArray.push($scene.panties)>>
<<if setup.getItemObj($scene.panties).tags.includes("male")>>
<<set $scene.underwearStyle = "male">>
<</if>>
<</if>>
<<if $scene.stockings != "">>
<<set _tmpArray.push($scene.stockings)>>
<<if setup.getItemObj($scene.stockings).tags.includes("male")>>
<<set $scene.underwearStyle = "male">>
<</if>>
<</if>>
<<if $scene.garters != "">><<set _tmpArray.push($scene.garters)>><</if>>
<<if $scene.body != "">><<set _tmpArray.push($scene.body)>><</if>>
<<if $scene.underwearStyle == "">>
<<if checkItemsTags(_tmpArray,['male'])>>
<<set $scene.underwearStyle = "male">>
<<elseif checkItemsTags(_tmpArray,['cute'])>>
<<set $scene.underwearStyle = "cute">>
<<elseif checkItemsTags(_tmpArray,['bold'])>>
<<set $scene.underwearStyle = "bold">>
<<elseif checkItemsTags(_tmpArray,['modest'])>>
<<set $scene.underwearStyle = "modest">>
<<elseif checkItemsTags(_tmpArray,['sissy'])>>
<<set $scene.underwearStyle = "sissy">>
<<elseif checkItemsTags(_tmpArray,['fetish'])>>
<<set $scene.underwearStyle = "fetish">>
<<elseif checkItemsTags(_tmpArray,['sissy','cute'],'||')>>
<<set $scene.underwearStyle = "cutesissy">>
<<elseif checkItemsTags(_tmpArray,['female'])>>
<<set $scene.underwearStyle = "female">>
<<else>>
ERROR: unable to calculate underwear style!
<</if>>
<</if>>
<</if>>/*#
#desc: compute variables related to underwear inspection
#status: RELEASED 0.6.0.0
#*/
<<include calculateUnderwearStyle>>
<<switch $scene.underwearStyle>>
<<case "cute">>
<<set $npc_manager.flags.firstcuteoutfit += 1>>
<<set $scene.score += 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<incrementEmotion 'satisfaction' 'npc_manager' 0.1>>
<<set $scene.extrascore += 1>>
<<case 2>>
<<set $scene.happy = true>>
<<case 3>>
<</switch>>
<<case "bold">>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<case 2>>
<<case 3>>
<</switch>>
<<case "modest">>
<<set $scene.score += 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<case 2>>
<<case 3>>
<</switch>>
<<case "sissy">>
<<incrementEmotion 'satisfaction' 'npc_manager' 0.2>>
<<set $npc_manager.flags.firstsissyoutfit += 1>>
<<set $scene.score += 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<set $scene.extrascore += 1>>
<<case 2>>
<<set $scene.happy = true>>
<<case 3>>
<</switch>>
<<case "fetish">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<case 2>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.score += 1>>
<<case 3>>
<</switch>>
<<case "cutesissy">>
<<incrementEmotion 'satisfaction' 'npc_manager' 0.15>>
<<set $npc_manager.flags.firstsissyoutfit += 1>>
<<set $npc_manager.flags.firstcuteoutfit += 1>>
<<set $scene.score += 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<set $scene.extrascore += 1>>
<<case 2>>
<<case 3>>
<</switch>>
<<case "female">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<incrementEmotion 'satisfaction' 'npc_manager' 0.2>>
<<set $scene.score += 1>>
<<case 2>>
<<case 3>>
<</switch>>
<<default>>
<<set $scene.underwearStyle = "male">>
<<applyExperience 'bimbofication' 5 'normal' $SEEN_FRIEND>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<case 2>>
<<set $scene.seriousoffense = true>>
<<case 3>>
<<set $scene.seriousoffense = true>>
<</switch>>
<</switch>>
<<if setup.getItemFromType("corset") != "">>
<<set $scene.autoLacing = false>>
<<if $player.timebased.tightlacing < 50>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 2>>
<<if $player.flags.uniform_upgrade.laceFailCounter > 10>>
<<set $scene.autoLacing = true>>
<<set $player.flags.uniform_upgrade.autoLacing = true>>
<</if>>
<<elseif $player.timebased.tightlacing > 90>>
<<incrementEmotion 'satisfaction' 'npc_manager' 0.2>>
<</if>>
<</if>>/*#
#desc: text related to underwear inspection
#status: RELEASED 0.6.0.0
#*/
<<switch $scene.underwearStyle>>
<<case "cutesissy">>
<<case "sissy">>
<<if ($npc_manager.flags.firstsissyoutfit + $npc_manager.flags.firstcuteoutfit) == 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if $player.timebased.horny > $player.penis.erection>>
"@@.npc_manager;Well, some... someone is ea...@@"<br>
<br>
Well, this is certainly a situation you were not prepared for. For the fraction of a second, it seems like <<=setup.getNpcName('npc_manager', 'formal')>> is about to squee. Unsure if you might be better off hearing death scream of an banshee, you back away a step, unsure if such unmitigated glee might be more terrifying then her dominant voice. It only takes a nanosecond before she regains her composure.<br>
<br>
"@@.npc_manager;Oh <<=$player.first_name>>! I was not sure if it was too soon to give you those. I thought you would wear something.... different today. But you are still wearing that gorgeous outfit. Very good. That is the kind of dedication I want from you. I am just beyond delighted that you are taking this task so seriously. Still, while I can understand your... eagerness to present me with proof of your dedication,@@" as she speaks her gaze slowly wanders down your body, settling to focus on your raging erection.<br>
<br>
You blush like a ripe strawberry as she continues. "@@.npc_manager;It appears we still have to work on your... discipline. If you do not want me to find a more permanent solution for your ... problem down there, you better make sure it does not attract so much attention the next time we see each other this way. Anyway, your ... strong reaction shows that these clothes were made to be worn by you. <<if $scene.underwearStyle == "cutesissy">>And what a fabulous combination of your best attributes. It screams both cute and sissy!, Divine!<<else>>Such a gloriously sissy combination, exquisite<</if>>, and I have to say, they look absolutely stunning on you. I am sure by now you know as well as I that you were born to be the <<if $scene.underwearStyle == "cutesissy">>cutest<<else>>perfect<</if>> SISSY secretary. Oh this is going to be so much fun. Oh what a lovely day!@@"
<<else>>
"@@.npc_manager;Oh my, <<=$player.first_name>>!@@"<br>
<br>
Well, this is certainly a situation you were not prepared for. For the fraction of a second it seems like <<=setup.getNpcName('npc_manager', 'formal')>> is ready to squee. Unsure if you'd rather heard the death scream of an banshee, you back away a little bit. You're unsure if the out of character enthusiasm, being so unexpected, is somehow more terrifying dominant voice. "Fortunately" it only takes a nanosecond before she regains her composure.<br>
<br>
<<if $player.flags.fem_style.underwear == "forced">>
"@@.npc_manager;I was not sure if it was too soon to gift you something so effeminate. I thought you would be wearing something.... different today. But you are still wearing these. Very good. That is the kind of dedication I want from you. I am beyond delighted, that you're taking this task seriously. these clothes were made to be worn by you. <<if $scene.underwearStyle == "cutesissy">>This combination of both cute and traditional sissy lingerie is breathtaking. <<else>><</if>>And I have to say, they look absolutely stunning on you. I am sure by now you know as well as I do, that you were born to be the <<if $scene.underwearStyle == "cutesissy">>cutest<<else>>perfect<</if>> SISSY secretary. Oh this is going to be so much fun. Oh what a lovely day!@@"
<<else>>
"@@.npc_manager;When I gave you your assignment to wear feminine underthings well... I figured someone in your position would play for the simplest option but this<<if $scene.underwearStyle == "cutesissy">>combination of both cute and traditional sissy lingerie<</if>> is breathtaking. I daresay you are moving ahead of schedule in transforming into what you were meant to be - the <<if $scene.underwearStyle == "cutesissy">>cutest<<else>>perfect<</if>> SISSY secretary. Oh this is going to be so much fun. Oh what a lovely day!@@"
<</if>>
<br><br>
Wow, that was a low hit, if you ever got one. Your masculinity crumbles before your eyes.<br>
<br>
"@@.npc_manager;Please feel free to wear <<if $scene.underwearStyle == "cutesissy">>a combination like this<<else>>sissy underwear<</if>> every day!@@"
<</if>>
<<case 2 3>>
<<if $player.flags.fem_style.underwear == "voluntary">>
Her eyes widen in shock.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>,@@" she harshly states, taking an aggressive step forward to shrink the distance between your bodies to mere centimeters. "@@.npc_manager;Why are you wearing this? Well?, I am expecting an answer.@@"<br>
<br>
You are unsure how to respond,
<<if setup.getTotalValue('feminization')>=9>>
but after a while you admit you like wearing it, while blushing traffic-stop red. Your bold assertion is rewarded with a sincere smile.<br>
<br>
"@@.npc_manager;Oh... I knew I was right about you. I had this feeling when you first entered through these doors, that you were devoted of the cuter and frillier things in life. Because you look simply amazing in this. Besides accentuating your feminine frame like living sissy art it manages to make you even cuter then you naturally are. You could cause so many confused looks right now. I am very proud of you. You are not only taking this task seriously, you are excelling at it. Very good. Very good indeed.@@"
<<elseif setup.getTotalValue('submission')>=7>>
so you stand there in silence for a few seconds before admitting that you wore it for her, thinking she might like it. All the while you are testing how many shades of red your blushing cheeks are able to produce. Your admission is rewarded with a sinful smile.<br>
<br>
"@@.npc_manager;Oh... is that the case? Very well, because you look simply amazing in this. Besides accentuating your feminine frame like living sissy art it manages to make you even cuter then you naturally are. You could cause so many confused looks right now. I am very proud of you. You are not only taking this task seriously, you are excelling at it. Very good. Very good indeed.@@"
<<else>>
so you stand in silence for several seconds, unable to form a coherent answer.<br>
<br>
"@@.npc_manager;At a loss of words <<=$player.first_name>>? Well let me help you out. It is because you look simply amazing in this. Besides accentuating your feminine frame like living sissy art it manages to make you even cuter then you naturally are. You could cause so many confused looks right now. I am very proud of you. You are not only taking this task seriously, you are excelling at it. Very good. Very good indeed.@@"
<</if>>
<<else>>
Looking upon your cute underthings her expression goes from shock to delight.<br>
<br>
"@@.npc_manager;After so long you finally embrace the sort of underthings that you were meant to wear... oh what joy, you can, and should, wear this sort of thing all the time. This is EXACTLY what I had in mind when I first gave you the task of wearing feminine underthings. It may have been a longer road than I might have preferred but you have arrived and I. am. celebrating!@@"
<</if>>
<</switch>>
<<else>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if $player.timebased.horny > $player.penis.erection>>
"@@.npc_manager;Well, someone seems to be very eager to show me their cute sissy lingerie.@@", <<=setup.getNpcName('npc_manager', 'formal')>> states while taking a good look at your raging erection, the attention making you blush like a ripe strawberry, "@@.npc_manager;As much as I like the outfit if you do not want me to find a more permanent solution for your ... problem down there, you should ensure it does not attract attention the next time we see each other this way. On a positive note your ... strong reaction indicates that these clothes were made to be worn by you.@@"<br>
<br>
Again, you can see a hint of a smile flicker across her lips, something you don't see very often, at least not this kind of smile. Unlike her "other" smile you don't feel the urge to run for the hills.<br>
<br>
"@@.npc_manager;Do you feel how you are turning more into <<if $scene.underwearStyle == "cutesissy">>a cute<<else>>an obedient<</if>> SISSY secretary with every minute you spend in this underwear? Oh, you are coming along just fine, your future is very bright. I am certain of it.@@"
<<else>>
<<if $scene.underwearStyle == "cutesissy">>
"@@.npc_manager;I am delighted you are taking your task seriously. These clothes fit you perfectly, don't you think? The cute resonates perfectly with the frilly sissy style, which perfectly frames your petite physique.@@"<br>
<<else>>
"@@.npc_manager;I am delighted you are taking your task seriously. These clothes fit you perfectly, don't you think? The frills perfectly frames your petite physique. Exquisite.@@"<br>
<</if>>
<br>
Again, that was a low hit. Your masculinity crumbles further before your eyes.<br>
<br>
"@@.npc_manager;Please feel free to wear things like this every day from now onwards.@@"
<</if>>
<<case 2 3>>
Her eyes glow with excitement as she hungrily stares at your overly girlie sissy lingerie.<br>
<br>
"@@.npc_manager;You know I say this every time you wear something like this, but that is because it is the truth, and that truth is you look simply amazing in this. Besides accentuating your feminine frame like living sissy art it manages to make you even cuter then you naturally are. You could cause so many confused looks right now. I am very proud of you. You are not only taking this task seriously, you are excelling at it. Very good. Very good indeed.@@"
<</switch>>
<</if>>
<<case "cute">>
Her eyes begin to glow with excitement as she notices your cute lingerie. A soft gasp of relief escapes her mouth.<br>
<br>
<<if $npc_manager.flags.firstcuteoutfit == 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if $player.timebased.horny > $player.penis.erection>>
"@@.npc_manager;Well, some... someone is ea...@@"<br>
<br>
Well, this is certainly a situation you were not prepared for. For the fraction of a second, it seems like <<=setup.getNpcName('npc_manager', 'formal')>> starts to blush. You're unsure if that possibility is more terrifying then her attack stare. It only takes a nanosecond before she regains her composure.<br>
<br>
"@@.npc_manager;Oh my, <<=$player.first_name>>. You seem to have found yourself a new set of lingerie. And such a cute design. I love it. And I am delighted you are taking your task seriously. Still, while your eagerness to show me your new lingerie is admirable...@@", her gaze slowly wanders down your body, focusing on your raging erection, the attention having you blushing like a ripe strawberry. "@@.npc_manager;We still have to work on your... discipline. If you do not want me to find a more permanent solution for your problem down there, you had better make sure that it does not attract attention the next time we see each other this way. Anyway, your ... strong reaction shows that these clothes were made to be worn by you. Do you feel how your personality tries to match its modest, feminine grace? I am sure you do.@@"
<<else>>
"@@.npc_manager;Oh!@@"<br>
<br>
Well, this is certainly a situation you were not prepared for. For a brief moment <<=setup.getNpcName('npc_manager', 'formal')>> seems to be at loss for words. Maybe you overdid it this time? The task technically did specify modest undergarments.<br>
<br>
It only takes her a second to snap out of her confusion but you are already braced in anticipation of punishment. Instead of punishment, however a smile slowly spreads across her lips, like one you've not seen on her face before. Could it be, that she likes your choice?<br>
<br>
"@@.npc_manager;Oh my, <<=$player.first_name>>. You got yourself a new set of lingerie. And such a cute design. I love it. And I am delighted you are taking your tasks so seriously. These clothes fit you perfectly, don't you think? The style perfectly frames your petite physique.@@"<br>
<br>
Wow, that was a low hit. Your masculinity crumbles before your eyes.<br>
<br>
"@@.npc_manager;Please feel free to wear cute things like this every day.@@"
<</if>>
<<case 2 3>>
"@@.npc_manager;Oh my, <<=$player.first_name>>. You got yourself a new set of lingerie. And such a splendid, cute design! I love it.@@"
<</switch>>
<<else>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if $player.timebased.horny > $player.penis.erection>>
"@@.npc_manager;Well someone seems to be very eager to show off their cute lingerie.@@", <<=setup.getNpcName('npc_manager', 'formal')>> states while taking a good long look at your raging erection. The keen attention has you blushing like a ripe strawberry. "@@.npc_manager;As much as I like the outfit, if you do not want me to find a more permanent solution for your problem down there, you had better make sure that it does not attract attention the next time we see each other this way. Anyway, your ... strong reaction shows that these clothes were made to be worn by you.@@"<br>
<br>
Again, you can see a hint of a smile flicker across her lips, something you don't see very often, at least not this kind of smile. Unlike her "other" smile you don't feel the urge to run for the hills.<br>
<br>
"@@.npc_manager;Do you feel how your personality tries to match that outfit's cute, feminine grace? I am sure you do. Oh, you are coming along just wonderful. Your future is looking very bright. I am certain of it.@@"
<<else>>
"@@.npc_manager;I am delighted you are taking your task seriously. These clothes fit you perfectly, don't you think? The style perfectly frames your petite physique.@@"<br>
<br>
Again, that was a low hit. Your masculinity crumbles further before your eyes.<br>
<br>
"@@.npc_manager;Please feel free to wear cute things like this every day from now on.@@"
<</if>>
<<case 2 3>>
"@@.npc_manager;This cute set of lingerie really accentuates your delicate frame. A very good choice. And such a splendid design! Feel free to wear this more often, it really suits you. And I am delighted to see you taking your task seriously. You managed to coordinate this outfit just perfectly.@@"
<</switch>>
<</if>>
<<case "bold">>
<<switch $npc_manager.stage>>
<<case 0 1>>
Trying to interpret <<=setup.getNpcName('npc_manager', 'formal')>> look of surprise at seeing your undergarments you at first think you observe a pleased countenance. Unfortunately the uncertain expression soon crystallizes into one of bewilderment.<br>
<br>
<<if $player.flags.fem_style.underwear == "money">>
"@@.npc_manager;Hmm, you know, I know I allowed it when you wore this your first day but... no, i do not think this is appropriate for one such as yourself. Something this bold and provocative well... it needs to be earned. You would look much better in something softer, more submissive, maybe pink with frills? See about addressing things, please.@@"
<<else>>
"@@.npc_manager;No. This is not good. Not good at all.@@", she whispers. reaching out she pulls on the side of your <<=setup.getItemTypeName('panties')>> and lets them slap back on your skin, "@@.npc_manager;You have not ...yet earned your place to wear such provocative lingerie, nor do I think you will ever reach a level where this would be appropriate. It is not that they do not, technically, compliment your figure it is just.... the aesthetic is totally wrong. Clothing such as this should be reserved for those of more dominant proclivities, which is simply not your forte at all. You should really try something more in keeping with your character. Perhaps something pink, with frills.@@"
<</if>>
<<case 2 3>>
At first you think she is pleased with your attire but after examining your underwear up close her expression turns to one of bewilderment.<br>
<br>
"@@.npc_manager;No. This is not good. Not good at all.@@" She whispers into your ear, while pulling on the side of your <<=setup.getItemTypeName('panties')>> and letting them snap back against your skin. "@@.npc_manager;You have not ...yet earned the privilege to wear such provoking lingerie, nor do I think such would really be appropriate for you as things are. It is an inability, objectively one might say they actually look quite nice on your body. No, it is more the wrong mindset at all. Such garb should be reserved for more dominant individuals, which is simply not your forte at all. You should really try something more fitting to your character. Maybe something pink with frills.@@"
<</switch>>
<<case "modest">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if $player.timebased.horny > $player.penis.erection>>
"@@.npc_manager;Well, someone seems to be very eager to show me their new undergarment.@@", <<=setup.getNpcName('npc_manager', 'formal')>> says while taking a good look at your raging erection, the attention making you blush like a ripe strawberry, "@@.npc_manager;If you do not want me to find a more permanent solution for your ... problem down there you ought make sure it does not attract attention the next time we see each other this way. Anyway, your ... strong reaction would indicate that these clothes were made to be worn by you. Do you feel how your personality is complemented and enhanced by such modest, feminine grace? I am sure you do.@@"
<<else>>
"@@.npc_manager;Very good <<=$player.first_name>>. These clothes were made to be worn by you. Do you feel how your personality is complemented and enhanced by such modest, feminine grace? I am sure you do.@@"
<<if setup.getTotalValue('submission')<5 || setup.getTotalValue('humiliation')<5>>
<br><br>You blush like a ripe tomato, still trying to come to terms with showing your boss what underwear you are wearing every morning.
<</if>>
<</if>>
<<case 2 3>>
You manage to catch a glance at a soft smile on her lips before her usual determined expression re-asserts itself.<br>
<br>
"@@.npc_manager;Good. This modest set of female underwear really brings a certain feminine grace to you. It is sufficient for my requirements, but I think you could up your game by trying something cuter in the future. Regardless, you managed to coordinate the outfit just perfectly.@@"
<</switch>>
<<case "female">>
You manage to catch a glimpse of a soft smile on her lips before it morphs into a more puzzled expression.<br>
<br>
"@@.npc_manager;Hmm... while the intent is there, the execution lacks a certain finesse. Maybe I overestimated your feminine instincts. When choosing underwear you should try and match them for style. Modest with modest, cute with cute. While, yes, you are technically wearing female underwear as agreed upon, well, that is about the only positive thing I can say. To be blunt, well, I can see the software developer in you resurfacing, valuing form over function, throwing together off the shelf solutions without a unified vision. In the future try to choose a theme. If you want my recommendation I think something cute, maybe pink would look terrific on your petite physique.@@"
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if setup.getTotalValue('submission')<5 || setup.getTotalValue('humiliation')<5>>
<br><br>
You blush like a ripe tomato, still trying to come to terms with having to show your new boss the underwear you're wearing every morning.
<</if>>
<<case 2 3>>
<</switch>>
<<case "male">>
<<switch $npc_manager.stage>>
<<case 0 1>>
"@@.npc_manager;<<=$player.first_name>>, you disappoint me<<if $npc_manager.anger>5>> yet again<</if>>. This is not what I have requested of you.
<<if !setup.checkItemTypeWorn("bra")>>
You are not wearing a bra!
<</if>>
<<if setup.checkItemTypeWornTag("panties","male")>>
These are men's boxer shorts!
<<elseif setup.checkItemTypeWornTag("panties","female")>>
At least you are wearing panties.
<</if>>
<<if setup.checkItemTypeWornTag("stockings","male")>>
And what are these supposed to be? These are simply your normal socks!
<<elseif setup.checkItemTypeWornTag("stockings","female","modest")>>
The hosiery seems to be right though.
<</if>>
@@"
<<if setup.getTotalValue('submission')<5 || setup.getTotalValue('humiliation')<5>>
<br><br>
You don't know what's worse. Standing in front of your new boss, stripped to your underwear, getting a rebuke for wearing the wrong thing, or that you actually feel bad for not wearing female undergarments.
<</if>>
<<case 2 3>>
The disappointment you cause is written all over her face, she looks genuinely sad for a moment before her expression hardens.<br>
<br>
"@@.npc_manager;You do realise, that your undergarments are an important part of your training to become a perfect secretary, do you not? If you are unable to follow such simple instructions I am afraid I may be unable to employ you for much longer.@@"
<</switch>>
<</switch>>
<<if $npc_manager.stagevalues[$npc_manager.stage].chastity || ($player.timebased.horny > $player.penis.erection)>>
<br><br>
<<if !$scene.hasOwnProperty("cage") || $scene.cage == "" || ($player.timebased.horny > $player.penis.erection)>>
<<if $scene.underwearmissing>>
She frowns, "@@.npc_manager;well first off you appear to be missing a piece - proper feminine underwear is panties, hosiery and a bra, garters are a lovely bonus. You... appear to be missing something? Do take more care next time you are dressing yourself. Anyway, on to the question of style...@@"
<</if>>
<br><br>
<<switch $scene.underwearStyle>>
<<case "sissy">>
"@@.npc_manager;While I can almost empathize with your eagerness to show me your lingerie in all its frilly glory.@@" She says while her gaze slowly wanders down your body,
<<case "cute" "cutesissy">>
"@@.npc_manager;Still, while your eagerness to show me your lingerie is worth admiring.@@" She says while her gaze slowly wanders down your body,
<<case "bold">>
"@@.npc_manager;Though I am not jubilant about your selections I do admire your eagerness to show me your lingerie.@@" she says while her gaze slowly wanders down your body,
<<case "modest">>
"@@.npc_manager;Still, while your eagerness to show me your underwear is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "female">>
"@@.npc_manager;Still, while your eagerness to show me your ...random selection of underwear is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "male">>
"@@.npc_manager;And of course, since you are unwilling to wear female underwear,@@" she says while her gaze slowly wanders down your body,
<</switch>>
<<if $npc_manager.stagevalues[$npc_manager.stage].chastity>>
<<if $player.timebased.horny > $player.penis.erection>>
<<if $scene.cage == "">>
taking a good look at the outline of your twitching <<getWordMyPenis $player>> through your underwear, while shaking her head. "@@.npc_manager;I am not able to overlook the lack of a chastity device on your sissy clitty. Such a disappointment, and your current state shows precisely why you need to be wearing such a device. I expected better from you, <<=$player.first_name>>.@@"
<<else>>
taking a good look at the outline of your twitching <<getWordMyPenis $player>> through your underwear, while shaking her head. "@@.npc_manager;I am not able to overlook that sad excuse for a <<getWordMyPenis $player>>, trying to escape its prison. Such a lack of willpower, to be aroused at the slightest thought of attention. I expected better from you, <<=$player.first_name>>; I know being caged can make a sissy feel excited but you should show that by your actions not like this, all engorged and straining rather than sweet, small and restrained.@@"
<</if>>
<<else>>
<<if $scene.cage == "">>
stopping between your legs. "@@.npc_manager;A very attractive profile, very well done not showing up to work harboring... distractions.@@"
<<else>>
gently caressing your cage. "@@.npc_manager;Very nice, <<=$player.first_name>> caged and collected, just as you should be.@@"
<</if>>
<</if>>
<<elseif $player.timebased.horny > $player.penis.erection>>
<<if $scene.cage == "">>
taking a good look at the outline of your twitching <<getWordMyPenis $player>> through your underwear, while shaking her head. "@@.npc_manager;Hmm, being so... engorged like that is really not proper for work, you really ought to attend to such things on your own time. If you keep this up I will be forced to take... measures to ensure obedience.@@"
<<else>>
there is no hiding the way your <<getWordMyPenis $player>> is straining in futility against its cage. "@@.npc_manager;It seems that your little prison is doing its job. I imagine it is a great help in keeping you focused on your duties, and it looks very nice, I love watching you strain uselessly against your binds.@@"
<</if>>
<<else>>
ERROR: this should not happen!
<</if>>
<<else>>
<<switch $scene.underwearStyle>>
<<case "sissy" "cute" "sissycute">>
"@@.npc_manager;Your eagerness to show me your lingerie is admirable@@", she says as her gaze slowly wanders down your body. Placing a hand over your crotch she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;And you are caged up like you are supposed to be, perfection.@@"
<<case "bold">>
"@@.npc_manager;Your willingness to show me your underwear is admirable, even though I am not jubilant about your selections,@@" she says as her gaze slowly wanders down your body. Placing a hand over your crotch she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;At least you are caged up like you are supposed to be, something someone reaching for dominance never would do to themself.@@"
<<case "modest">>
"@@.npc_manager;Your willingness to show me your underwear is admirable@@" she says as her gaze slowly wanders down your body. Placing a hand over your crotch she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;Good, you are caged up just like you should be.@@"
<<case "female">>
"@@.npc_manager;Your willingness to show me your ...random selection of underwear is admirable,@@" she says as her gaze slowly wanders down your body. Placing a hand over your crotch she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;And you are caged up like you are supposed to be.@@"
<<case "male">>
"@@.npc_manager;Your unwillingness to wear female underwear is unacceptable@@", she states while her gaze slowly wanders down your body. Placing a hand over your crotch she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;But at least you are properly caged up. Quite confusing, I admit. If you accept this predicament why not accept the much more mild clothing requirements as well?@@"
<<default>>
"@@.npc_manager;Hmm, a decent effort, and it is feminine, but it would look even better if you wore a complete matching set. By that I mean bra, panties, stockings and perhaps garters.@@"
<</switch>>
<</if>>
<</if>>
<<if setup.getItemFromType("corset") != "">>
<br><br>
Her attention turns to your corseted waist.<br>
<br>
<<if $player.timebased.tightlacing < 50>>
<<if $scene.autoLacing>>
"@@.npc_manager;You neglected to properly lace yourself again? I am begining to think you just enjoy feeling me press you to size... and certainly that is not unexpected for one such as you but the cost...@@" Moving back around in front of you she shakes her head. "@@.npc_manager;No, entertaining your little fetish is not worth leaving you misshapen, to say nothing of my time!@@"<br>
<br>
Moving behind you gasp as you feel the corset rapidly loosen, as it sags and you barely catch it you realize that she has just sliced the laces right up the back!<br>
<br>
"@@.npc_manager;Now, to do things properly,@@" she states, revealing a small hank of slightly odd looking ribbon. "@@.npc_manager;These are an advanced nano-material laced with carbon fibre. Night un-cuttable they also have the benefit of auto-lacing themselves, all you have to do is tie the knot and they will automatically pull all the way in and keeping you that way throughout the day, no strength required!@@"<br>
<br>
As she explains she discards the remains of your old laces and begins rapidly threading the ribbon into place. True to her word once she ties things off you feel the familiar compression, not stopping until you are restricted to short, shallow breaths, a quick check with your fingers confirming that the corset is perfectly even up and down your spine.<br>
<br>
"@@.npc_manager;Much better, that should keep you in shape, and save the both of us quite a bit of time now, hmm?@@"
<<else>>
"@@.npc_manager;Why do you even bother wearing a corset if you are not going to wear it right? Are you still so weak as to need me to do EVERYTHING for you?@@"<br>
<br>
Shaking her head she roughly spins you around and starts pulling on your laces. You are shocked at the vicious speed at which your body is compressed, panting for air in moments as she takes a bare few brutally efficient minutes to crush you down. Before long the rear edges touch flush she ties you off with a perfect hourglass figure.<br>
<br>
"@@.npc_manager;Now THAT is how you lace a corset. As much as I enjoy feeling your body reshaped by my hand you really need to learn to do this yourself. You are friends with such a strong man in <<=setup.getNpcName('npc_admin', 'first')>>? I bet he could cinch down a corset but good... or maybe have some suggestions for how to put some tone on those noodle limbs of yours. Whatever you choose I advice you to get to work, my patience for you improperly wearing such a wonderful garment is far from infinite.@@"<br>
<br>
<<printThought $player "<<if setup.getTotalValue('feminization') >= 15 && $npc_admin.stage > 1>>Mmm, what if he just did it himself, <<=setup.getNpcName('npc_admin', 'first')>> squeezing me tight....<<else>><<=setup.getNpcName('npc_admin', 'first')>> always was trying to get me to go to the gym with him...<</if>>">>
<</if>>
<<elseif $player.timebased.tightlacing > 90>>
Wrapping her hands around your oh-so-slim waist <<=setup.getNpcName('npc_manager', 'formal')>> smiles, actually letting out a little purr of pleasure as she reaches behind and for a superfluous check of running a finger along the completely closed rear laces.<br>
<br>
"@@.npc_manager;Excellent, This is the only way one should wear a corset, see what it does for your body? Absolutely sublime.@@"
<<else>>
"@@.npc_manager;I suppose I should credit you for at least trying to lace your corset, but sometimes half measures are worse than nothing at all. This gap in the back is vulgar, a cavernous blight on a potentially otherwise beautiful form.@@"<br>
<br>
Moving behind your back she un-knots things without letting a single millimetre of slack escape from her fingers. With strong, steady pulls she soon has the rear of your corset closing the rest of the way, steel bones and soft satin crushing you into shape. Tying things off she runs a finger down your spine and over the now closed laces, sending a tingle through your whole body.<br>
<br>
"@@.npc_manager;Much better. You really need to learn to do that on your own rather than be so dependent on my assistance. You are friends with such a strong man in <<=setup.getNpcName('npc_admin', 'first')>>? I bet he could lace down a corset but good, or perhaps have some suggestions for how you might get a little stronger.@@"<br>
<br>
<<printThought $player "<<if setup.getTotalValue('feminization') >= 15 && $npc_admin.stage > 1>>Mmm, what if he just did it himself, <<=setup.getNpcName('npc_admin', 'first')>> squeezing me tight....<<else>><<=setup.getNpcName('npc_admin', 'first')>> was trying to get me to go to the gym with him...<</if>>">>
<</if>>
<</if>>
<br><br>/*#
#desc: compute variables related to clothing inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.gender = setup.computeWorstGender()>>
<<if setup.checkVisibleClothingTag('casual')>>
<<set $scene.formal = 'casual'>>
<<set $npc_manager.stagevalues[$npc_manager.stage].appeared_casual+=1>>
<<else>>
<<set $scene.formal = setup.analyzeWornTags(['casual','office','formal'])>>
<</if>>
<<set $scene.clothes = $scene.gender + "_" + $scene.formal>>
<<switch $scene.gender>>
<<case 'male'>>
<<switch $scene.formal>>
<<case 'office'>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if $npc_manager.stagevalues[1].unisexsecretary>>
<<set $npc_manager.stagevalues[1].frisky+=1>>
<<set $scene.score -= 1>>
<</if>>
<<case 2>>
<<set $npc_manager.stagevalues[2].frisky+=1>>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<set $scene.seriousoffense = true>>
<</if>>
<<case 3>>
<<set $scene.forceChange = true>>
<</switch>>
<<case 'casual'>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if $npc_manager.stagevalues[1].unisexsecretary>>
<<set $npc_manager.stagevalues[1].frisky+=1>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<set $scene.score -= 1>>
<<else>>
<<set $npc_manager.stagevalues[1].frisky+=1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.score -= 1>>
<</if>>
<<case 2>>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<set $scene.score -= 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.score -= 1>>
<</if>>
<<set $scene.seriousoffense = true>>
<<case 3>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<set $scene.score -= 1>>
<<set $scene.forceChange = true>>
<</switch>>
<</switch>>
<<case 'unisex'>>
<<switch $scene.formal>>
<<case 'casual'>>
<<set $scene.score -= 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<set $npc_manager.stagevalues[1].frisky+=1>>
<<case 2>>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<set $scene.seriousoffense = true>>
<</if>>
<<case 3>>
<<set $scene.forceChange = true>>
<</switch>>
<<case 'office'>>
<<switch $npc_manager.stage>>
<<case 2>>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<set $scene.seriousoffense = true>>
<<else>>
<<set $scene.score += 1>>
<</if>>
<<case 3>>
<<set $scene.forceChange = true>>
<</switch>>
<</switch>>
<<case 'female'>>
<<switch $scene.formal>>
<<case 'casual'>>
<<set $scene.score -= 1>>
<<switch $npc_manager.stage>>
<<case 2>>
<<if !$npc_manager.stagevalues[2].femalesecretary>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<</if>>
<<case 3>>
<<set $scene.forceChange = true>>
<</switch>>
<<case 'office'>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set $scene.score += 1>>
<</switch>>
<<case 'formal'>>
<</switch>>
<</switch>>
<<if $npc_manager.stage > 2>>
<<set $scene.expected_clothing = 'full_female'>>
<<elseif $npc_manager.stage > 1 && $npc_manager.stagevalues[2].femalesecretary>>
<<set $scene.expected_clothing = 'female'>>
<<elseif $npc_manager.stage > 0 && $npc_manager.stagevalues[1].unisexsecretary>>
<<set $scene.expected_clothing = 'unisex'>>
<<else>>
<<set $scene.expected_clothing = 'male'>>
<</if>>
<<if $scene.forceChange>>
<<set $scene.top = setup.getItemFromType("shirt")>>
<<if $scene.top == "">>
<<set $scene.top = setup.getItemFromType("dress")>>
<<if $scene.top == "">>
<<set $scene.top = setup.getItemFromType("strapless_dress")>>
<</if>>
<</if>>
<<set $scene.bottom = setup.getItemFromType("legwear")>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<</if>><<switch $scene.clothes>>
<<case 'male_office'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
She nods dismissively "@@.npc_manager;that outfit is... adequate to meet your current requirements.@@"<br>
<br>
<<printThought $player "Huh, she said it was ok, but she sure sounds disappointed...">>
<<case 'unisex'>>
At first you think she is smiling, but her smile turns into a frown in less than a second. Oh right. You're supposed to wear your new Office Uniform or something similar.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, while this would be... adequate for your previous position, it is unacceptable for your current one. I thought I had made myself clear that I do not want your clothes to contain the slightest trace of toxic masculinity to cloud your mind. Do not misunderstand me, masculinity is not a bad thing per se, but in your case it needs to be... subdued. It is holding you back, blocking you from advancing in a more positive direction. And seeing how you disobeyed a direct order yet once again, I am once again validated in taking additional measures to steer you in the proper direction.@@"<br>
<br>
You keep your mouth shut, since nothing you can say would improve the situation.<br>
<br>
"@@.npc_manager;The silent treatment, yes? At least you know how to behave yourself... sometimes.@@"<br>
<br>
<<printThought $player "Oh, oh. I am afraid that this might lead to a cataclysm...">>
<<case 'female'>>
Not a trace of a smile can be seen on her lips as she gazes over your in disgust.<br>
<br>
<<printThought $player "Oh, oh. I think I messed up...">><br>
<br>
"@@.npc_manager_dom;W... What are you wearing?@@", asks <<=setup.getNpcName('npc_manager', 'formal')>> before letting out a heavy sigh. "@@.npc_manager;We have been over this again and again, and still you manage to mess up. Sometimes I have the feeling that you are doing this deliberately. You are a Social Interaction Service Syndicate Secretary! Act like one, or mark my words, I will enroll you in re-education, at your own expense! What were you thinking? No, you know what. Let us continue this inside. But know this, <<=$player.first_name>>, this is not acceptable. Come into my office so we can discuss this further. I hope for your sake that these ... clothes... are at least clean!@@"<br>
<br>
She shakes her head in disbelieve. Looks like you've messed up big time.
<<case 'full_female'>>
"@@.npc_manager;This... this is beyond the pale. What were you even thinking wearing THIS to work?@@" As she speaks she snatches a grip on your clothing and then, with a casual, but swift pull tears them apart with a loud RIIIIP.<br>
<br>
"@@.npc_manager;Oh my, I appear to have... damaged your outfit. Well that just goes to show - inappropriate AND flimsy, you can see why it is totally unsuitable for my SISSY secretary. Now get out of those disgusting clothes so we can proceed with the rest of your inspection.@@"
<</switch>>
<<case 'male_casual'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
<<if $npc_manager.stage == 1>>
You spot the briefest twitch of her eye as she looks over your casual ensemble, but she makes no comment.<br>
<br>
<<printThought $player "Shit, this is against the dress code, isn't it? I hope this isn't the calm before the storm...">>
<<else>>
<<if $npc_manager.stagevalues[2].appeared_casual==1>>
"@@.npc_manager_dom;W... What are you wearing?@@", <<=setup.getNpcName('npc_manager', 'formal')>> asks with a heavy sigh. "@@.npc_manager;Are you out of your mind? Wait. Do not answer that question. I neither want nor care to know. You are a Social Interaction Service Syndicate Secretary for heavens sake. That is a very important and representative position within the company, yet you... you appear here, dressed like it is casual Friday at a hole in the wall burger joint! What were you thinking? Clearly you were not thinking at all, at least not in any respectable manner.@@"
<br>
She shakes her head. "@@.npc_manager_dom;you know what? Let's continue this inside. But know this, <<=$player.first_name>>, this is not acceptable. Come into my office so we can discuss this further. I hope for your sake that these ... clothes... are at least clean!@@"<br>
<br>
She shakes her head in disbelief. Looks like you're in pretty hot water this time.
<<else>>
"@@.npc_manager;Really?@@" <<=setup.getNpcName('npc_manager', 'formal')>> asks with a heavy sigh. "@@.npc_manager;This again, <<=$player.first_name>>? Really? That is the best you could come up with? Well, if you are this desperate for a disciplinary measure I can certainly oblige.@@"
<</if>>
<</if>>
<<case 'unisex'>>
At first you think she is smiling, but her smile turns into a frown in less than a second. Oh right. You're supposed to wear your new Office Uniform or something similar.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, what exactly do you think you are doing wearing... THAT? Not only that you are unable to follow simple instructions as your new office outfit rules, no you manage to break two rules at one. I am not sure if I should be offended or impressed, but I think it is the former!@@"<br>
<br>
You try to come up with a clever excuse as why you wore these clothes, but only incoherent stutters escape your mouth.<br>
<br>
"@@.npc_manager;That is what I thought. We shall discuss this in greater detail during your inspection. I really hope for your sake, that the rest of your clothes are in top notch condition!@@"<br>
<br>
<<printThought $player "Ah, fuck. I screwed this one up, didn't I?">>
<<case 'female'>>
You note a slightly confused look in her eyes as she scans over your attire.<br>
<br>
<<printThought $player "That can't be good...">><br>
<br>
"@@.npc_manager;Now, <<=$player.first_name>>, I thought I had made myself clear that you are to appear in female clothes fitting for a secretary. Female. While these do have a feminine touch, they are not nearly feminine enough. Now, do not make me enroll you in re-education, that is not nearly as fun as it sounds and this early in your career the expenses would come out of your own paycheck. Now be a good sissy and head into my office so we can complete your inspection for today. Perhaps you can improve my mood; I never get tired of seeing you in lingerie.@@"
<<case 'full_female'>>
"@@.npc_manager;This... this is beyond the pale. What were you even thinking wearing THIS to work?@@" As she speaks she snatches a grip on your clothing and then, with a casual, but swift pull them apart with a loud RIIIIP.<br>
<br>
"@@.npc_manager;Oh my, I appear to have... damaged your outfit. Well that just goes to show - inappropriate AND flimsy, you can see why it is totally unsuitable for my SISSY secretary. Now get out of those disgusting clothes so we can proceed with the rest of your inspection.@@"
<</switch>>
<<case 'unisex_office'>>
<<switch $scene.expected_clothing>>
/%<<case 'male'>> handled in event_morning_inspection_unisex_1 %/
<<case 'unisex'>>
Seeing you <<if $scene.preciselyOnTime>>standing in the doorway<<else>>sitting at your desk<</if>> makes her smile. Maybe even a little bit more then when you used to wear ... male clothes.
<<if setup.getTotalValue('submission')>3>>
You remember her words...<br>
<br>
<<printThought $player "Punctuality is one of the pillars of society.">><br>
<br>
Looking at what you're wearing right now, denying that she has great influence over you, would be a lie.<br>
<br>
<<printThought $player "Oh well, she said I will benefit from these changes.">>
<<else>>
You try to recall her principle...<br>
<br>
<<printThought $player "Punctuality is a pillar? Something like that.">><br>
<</if>>
<<case 'female'>>
"@@.npc_manager;Androgynous clothing? I know there was a time that I gushed about how much I adored seeing you in that sort of thing but, well... having seen how much better you look in properly feminine attire there is no going back. It is like an addiction, I suppose.@@"
<<case 'full_female'>>
"@@.npc_manager;I am very disappointed in you. Certainly there was a time when this would have been acceptable but now... no, this is not proper attire for you at all and something will have to be done.@@"
<</switch>>
<<case 'unisex_casual'>>
<<switch $scene.expected_clothing>>
/%<<case 'male'>> handled by event_morning_inspection_unisex_1%/
<<case 'unisex'>>
She slowly shakes her head. "@@.npc_manager;I suppose you made an effort in terms of style but... well... I expect a certain level of professionalism from my employees, particularly one as representative as yourself. Owing to your inexperience with this new routine I will allow you to wear it for today but do please avoid making a habit of such slovenliness.@@"
<<case 'female'>>
"@@.npc_manager;What is this? Street clothes? And ones that are barely feminine, at that. No, no, no, this is all wrong... Please remove them so we can move on with your inspection, but note that this I have to consider this just over the line into what I would consider a serious offense.@@"
<<case 'full_female'>>
She shakes her head. "@@.npc_manager;What do you think this is, casual Friday?
<<if $now.getUTCDay()==5>>
Certainly it is Friday, but there is nothing "casual" about being a properly performing SISSY secretary.
<<else>>
For one, it is not even Friday, and for two well... there is nothing "casual" about properly performing one's duties as a SISSY secretary.
<</if>>
No, no, this is absolutely inappropriate for work and we shall have to do something about it.@@"
<</switch>>
<<case 'female_office'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
ERROR: unexpected female office attire too early in the game
<<case 'unisex'>>
/% handled by... something %/
<<case 'female'>>
Seeing you sitting at your desk seems to bring a smile to her face. You remember her words...<br>
<br>
<<printThought $player "Self control is one of the pillars of society.">><br>
<br>
<<if setup.getItemTypeName("cage")!="">>
Of course you live by her words, since you locked your <<getWordMyPenis $player>> away like the good, obedient Sissy you are. You think, she's a good influence on you. After all, she only wants to help you grow... as a person, HER person.
<<else>>
Unfortunately you forgot to lock your <<getWordMyPenis $player>> away as promised. Well, this might have some rather painful consequences. But maybe that's what you were counting on?
<</if>>
<<case 'full_female'>>
She smiles at your choice of clothing. "@@.npc_manager;Perfection. This is precisely what I want and expect from my SISSY secretary. The word uniform is a bit too... rigid and restrictive to properly describe the soft, feminine creativity I desire from you but whatever you call it you have worked within my instructions and come up with something professional and quite pleasant to the eye. Well done.@@"
<</switch>>
<<case 'female_casual'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
ERROR: unexpected female casual attire too early in the game
<<case 'unisex'>>
Her expression appears mixed as she looks over your casual attire.<br>
<br>
"@@.npc_manager;The overall style well... I like it, it really brings out your natural femininity but... well, it is a bit too laid back and casual for one in your position. That said...@@" She seems to think for a few moments. "@@.npc_manager;Yes, new update - going forward I want you to be dressed in PROPER female office attire. The unisex stuff was fine for what it was but you are a SISSY secretary and should be attired in a fully feminine manner.@@"
<<case 'female' 'full_female'>>
She shakes her head in dismay at your casual outfit.<br>
<br>
"@@.npc_manager;What do you think you are wearing? This is a professional office and you should comport yourself accordingly - in manner AND dress, at all times!@@"
<</switch>>
<<case 'female_formal'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
ERROR: unexpected female formal attire too early in the game
<<case 'unisex'>>
ERROR: unexpected female formal attire too early in the game
<<case 'female' 'full_female'>>
Her expression appears mixed, on the one hand you can tell that she likes what she sees, but on the other hand she looks disappointed.<br>
<br>
"@@.npc_manager;That outfit is... well, it is gorgeous on you, to be perfectly honest. That said, it is a bit much for an office job, your duties do not entail hosting royal balls, after all.@@"<br>
<br>
She chuckles as if at some unspoken joke. "@@.npc_manager;I will allow it, for today, but please, wear something more suitable for the office in the future.@@"
<</switch>>
<<default>>
ERROR: unknown scene clothes: <<=$scene.clothes>>
<</switch>>
<br><br>/*#
#desc: compute variables related to shoes inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<if setup.getItemObj($scene.shoes).hasOwnProperty("heels")>>
<<set $scene.shoeHeelDifficulty = setup.getItemObj($scene.shoes).heels.difficulty>>
<<else>>
<<set $scene.shoeHeelDifficulty = 0>>
<<set $scene.seriousoffense = true>>
<</if>>/*#
#desc: text related to shoes inspection
#status: RELEASED 0.6.0.0
#*/
Her gaze turns towards your footwear.<br>
<br>
<<switch $scene.shoes>>
<<case 'pink_thigh_highs'>>
<<if setup.getTotalValue("heels") >= $scene.shoeHeelDifficulty>>
<<set _heelApprove = true>>
"@@.npc_manager;It is so good that you are able to walk well enough to do those hot boots justice. Keep it up, steep heels like that do wonders for your figure.@@"
<<elseif ($scene.shoeHeelDifficulty - setup.getTotalValue("heels") ) <= 2>>
"@@.npc_manager;I admire the effort but it does not look like you are quite nimble enough for those heels. It is such a shame to sully their sexiness with a stumble, please do not wear them again until you can walk properly and confidently in them.@@"
<<else>>
"@@.npc_manager;I really think those boots are a mistake for you. Not for looks - they are very attractive, but you look about ready to twist and ankle at any moment and I would hate for you to take sick time for an injury. Please practice more in heels before wearing them to work.@@"
<</if>>
<<case 'bed_heels'>>
<<if setup.getTotalValue("heels") >= $scene.shoeHeelDifficulty>>
"@@.npc_manager;You know, I never imagined when I assigned you to sleep in those that I would see you wearing them to work. I have to say, they look even better in person than they did in pictures, and you look completely confident walking in them to boot! I love that you are embracing wearing such attire in public, it reflects well on you, me as your owner, and the company as a whole.@@"
<<else>>
ERROR! shouldn't be able to leave apartment in bed heels unless can walk!
<</if>>
<<case 'ballet_boots'>>
<<if setup.getTotalValue("heels") >= $scene.shoeHeelDifficulty>>
"@@.npc_manager;You really have come quite a long way. Remember when you wore nothing but flats? Now look at you, wearing even steeper heels than your boss! You know some women would not take kindly to that sort of one-upswomanship, but so long as you remain behaved I am just proud of how far you have come.@@"
<<elseif ($scene.shoeHeelDifficulty - setup.getTotalValue("heels") ) <= 2>>
"@@.npc_manager;Wow, you are so close to walking in those ballet boots; just that little bit of shaking in your knees betraying that you have not quite mastered them... I cannot be too upset, I suppose, they are QUITE the challenge. I have faith that you will impress me once again and master them soon the way you are going.@@"
<<else>>
ERROR! shouldn't be able to leave apartment in these unless can somewhat walk.
<</if>>
<<default>>
<<if $scene.shoeHeelDifficulty == 0>>
"@@.npc_manager;You are not wearing heels... that is highly disappointing, and totally against requirements.@@"
<<else>>
<<if setup.getTotalValue("heels") < $scene.shoeHeelDifficulty>>
"@@.npc_manager;Good, you are wearing heels... I just wish you could properly walk in them!@@"
<<else>>
"@@.npc_manager;Good, you are wearing heels and walking properly in them, to boot... no pun intended.@@"
<</if>>
<</if>>
<</switch>>
<br><br>/*#
#desc: compute variables related to clothing cleanliness inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.cleanclothes = false>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task") && setup.checkTaskReason("manager_morning_inspection_task","clothesClean")>>
<<set $scene.score += 1>>
<<set $scene.cleanclothes = true>>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && setup.checkTaskReason("manager_morning_inspection_task_repeat","clothesClean")>>
<<set $scene.score += 1>>
<<set $scene.cleanclothes = true>>
<<else>>
<<if setup.checkWornStatus('piss','>',24).length>0>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<applyExperience 'piss' 3 'very' $SEEN_FRIEND>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<<set $scene.unclean = true>>
<</if>>
<<set $npc_manager.flags.appeared_piss+=1>>
<</if>>
<<if setup.checkWornStatus('cumsoaked','>',24).length>0>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 5 'very' $SEEN_FRIEND>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<<set $scene.unclean = true>>
<</if>>
<<set $npc_manager.flags.appeared_cumsoaked+=1>>
<</if>>
<<if (setup.checkWornStatus('dirty','>',74).length>0)||(setup.checkWornStatus('sweaty','>',74).length>0)>>
<<applyExperience 'humiliation' 6 'little' $SEEN_FRIEND>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<<set $scene.unclean = true>>
<</if>>
<<set $npc_manager.flags.appeared_dirty+=1>>
<</if>>
<<if setup.getItemFromType('shirt') == 'shirt_stained'>>
<<applyExperience 'humiliation' 6 'little' $SEEN_FRIEND>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<<set $scene.unclean = true>>
<</if>>
<<set $npc_manager.flags.appeared_dirty+=1>>
<</if>>
<</if>>She takes a moment to examine the cleanliness of your clothes.<br>
<br>
<<if $scene.cleanclothes>>
<<if $npc_manager.stage == 1>>
<<if $npc_manager.flags.spill_event>>
<<if $scene.gender == "male">>
Her gaze skims over your neatly folded masculine attire. As she looks at your shirt she seems a bit surprised and... disappointed?<br>
<br>
"@@.npc_manager;You got that nasty stain out, colour me impressed. Very good... though I thought you might have taken this opportunity to try wearing something less... masculine.@@"<br>
<br>
<<printThought $player "Hmm, she keeps dropping hints like I should be wearing more unisex clothing to work...">>
<<else>>
She smiles at your choice of attire. "@@.npc_manager;Lovely, nary a trace of masculinity, you look so much better like this.@@"
<</if>>
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
<<if $scene.gender== "male">>
"@@.npc_manager;Well, at least your clothes are clean and tidy as they are supposed to be. Still, it would be a lot better for you if you wore the things that actually met the dress code.@@"
<<if $npc_manager.flags.spill_event>>
<br><br>
She pauses
<</if>>
<<else>>
"@@.npc_manager;Freshly washed, as far as I can tell. Very good.@@"
<</if>>
<<else>>
"@@.npc_manager;Freshly washed, as far as I can tell. Very good.@@"
<</if>>
<<elseif $npc_manager.stage > 2 && $scene.gender == "male">>
"@@.npc_manager;As if it wasn't bad enough that you decided to dress in such a despicable manner, you could not even keep things clean! Disgusting.@@"
<<elseif $npc_manager.stagevalues[2].femalesecretary>>
<<switch $scene.gender>>
<<case "male">>
"@@.npc_manager;This... this is unacceptable. While I admire strength of will in certain situations stubbornness is far less attractive. You need to get it through your silly head: you are a SISSY secretary and that means dressing like this... like a man... well, it just will. not. do.@@"
<<case "unisex">>
"@@.npc_manager;So close, and yet so far... I can see the hints of femininity in your outfit but it is far from enough; I expect my SISSY secretary to look cute and inviting and that means you should be dressed head to toe in proper fully feminine clothing.@@"
<<default>>
"@@.npc_manager;Well done, your clothing looks clean and tidy and delightfully feminine. Just as instructed. Very good.@@"
<</switch>>
<<elseif $npc_manager.stage > 1 || $npc_manager.stagevalues[1].unisexsecretary>>
<<switch $scene.gender>>
<<case "male">>
"@@.npc_manager;Well, at lease everything looks clean and tidy. Unfortunately the style... what you are wearing is definitely too masculine for your dress code.@@"
<<default>>
"@@.npc_manager;Well done, your clothing looks clean and tidy as instructed. Very good.@@"
<</switch>>
<<else>>
"@@.npc_manager;Well done, your clothing looks clean and tidy as instructed. Very good.@@"
<</if>>
<<else>>
"@@.npc_manager;You call this clean, Sissy?@@"
<<set _tmpListDirty = setup.checkWornStatus('dirty','>',74)+setup.checkWornStatus('sweaty','>',74)>>
<<if _tmpListDirty.length>0>>
<br><br>
"@@.npc_manager;
<<if $scene.formal == 'casual' || ($scene.gender == 'unisex' && $npc_manager.stage > 2) || ( $scene.gender == 'male' && $npc_manager.stage > 1)>>
I might have thought you just ran out of clean clothes of an appropriate style, but these are not just the wrong type of clothes, but dirty to boot!
<<else>>
I know your dress code requirements may limit your possible outfits but you need to adjust your laundry schedule to make sure you always have something clean to wear.
<</if>>
This look, and stench, is ill suited for a secretary of mine! You are working for a multi billion credit cooperation, not some pigpen. If you would prefer the reverse, that can, and will, be arranged if you continue this sort of behaviour, my little piglet!@@"
<br><br>
<</if>>
<<set _tmpListCum = setup.checkWornStatus('cumsoaked','>',24)>>
<<if _tmpListCum.length>0>>
<br><br>
<<if _tmpListDirty.length>0>>
"@@.npc_manager;Speaking of a pigpen, is that cum?@@"
<<else>>
"@@.npc_manager;Is that cum?@@"
<</if>>
<br><br>
<<if setup.checkItemListfromSpecific(_tmpListCum,'panties',true) && (setup.checkItemListfromSpecific(_tmpListCum,'bra',true)||setup.checkItemListfromSpecific(_tmpListCum,'stockings',true)||setup.checkItemListfromSpecific(_tmpListCum,'garter',true))>>
"@@.npc_manager;I can see where the cum from your panties comes from but... ooh. You naughty little sissy. Already whoring yourself to the highest, or maybe lowest?, bidder? Maybe we should have you on a street corner instead of a nice cushy office? Is that what you would like you dirty sissy whore?@@"<br>
<br>
"@@.npc_manager;I really do not care what, or who, you do in your spare time, but here you are to be clean and tidy. Or mark my words, I will housebreak you myself.@@"
<</if>>
<</if>>
<<set _tmpList = setup.checkWornStatus('piss','>',24)>>
<<if _tmpList.length>0>>
<br><br>
"@@.npc_manager;
<<if _tmpListCum.length>0>>
Speaking of street corners, you smell like the wall where drunks piss!
<<elseif _tmpListDirty.length>0>>
Speaking of pigpen, you smell like one as well!
<<else>>
What is this retched stench, sissy?
<</if>>
Did you piss yourself or did someone piss on you? I do not even want to know. Keep this up and you will have a new "office" or should I say, stall, working as a new urinal for the higher ups. Heaven knows they are always looking for new toilet-slaves.@@"<br>
<br>
<<printThought $player "Wait, what? She has to be teasing me...">>
<</if>>
<</if>>
<br><br>/*#
#desc: compute variables related to clean body inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.cleanBody = true>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task") && !setup.checkTaskReason("manager_morning_inspection_task","playerClean")>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<</if>>
<<set $scene.cleanBody = false>>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && !setup.checkTaskReason("manager_morning_inspection_task_repeat","playerClean")>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<</if>>
<<set $scene.cleanBody = false>>
<</if>>/*#
#desc: text related to clean body inspection
#status: RELEASED 0.6.0.0
#*/
<<if $scene.cleanBody>>
She gives you a quick sniff and nods. "@@.npc_manager;Good, you are clean. Not that I expected less but, well... always best to be thorough when doing an inspection.@@"
<<else>>
She gives a sniff, her nose wrinkling. "@@.npc_manager;Did you... forget to wash? No, this will not do at all. I expect you to be clean when you come to work.@@"
<</if>>
<br><br>/*#
#desc: compute variables related to makeup inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.makeup = setup.getCurrentMakeup($player)>>/*#
#desc: text related to makeup inspection
#status: RELEASED 0.6.0.0
#*/
"@@.npc_manager;And now for the final detail, the cherry on top of what should be a delicious sissy sunday - your makeup.@@" <<=setup.getNpcName('npc_manager', 'formal')>> cups your chin and examines your face.<br>
<br>
"@@.npc_manager;
<<switch $scene.makeup>>
<<case "">>
Has anyone told you yet today how cute your face is? Well they certainly would if you would only remember your makeup! I told you to wear it every day to put your best face forward; I am quite disappointed in your failure to obey.
<<case "nomakeupmakeup">>
Hmm, subtle. I would say it was a good start but you are not a fresh-faced new secretary any more; I told you proper makeup is part of my expectation for you and as well applied this is, it is insufficient.
<<case "normalmakeup">>
Lovely, but not overstated, this is the exact style of makeup I expect for you.
<<case "expertmakeup">>
Hmm, a bit of a bold choice in makeup style, but within acceptable parameters.
<<case "moviestar">>
Very impressive choice for makeup, very nice.
<<case "ultimatebimbo">>
You do not believe in half measures, do you? If you wanted to look like a bimbo slut, you definitely nailed things. Unfortunately it is not technically what I would call professional but well... I AM the one in charge of HR, and besides, I doubt anyone could look into your pretty <<=$player.eyecolor>> eyes and complain. I will allow it, but know that I would prefer something less lascivious and more work-appropriate.
<<case "sissy_doll">>
Mmm, my lovely sissy doll... you look so sweet like this.
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<<if $player.makeup.messed >= 75>>
Pitiful, I cannot even tell what you were going for with this makeup; it is trashed and it makes you look like trash; which should almost be a crime given how cute of a face you have under there.... somewhere. You should not even be in public like this, much less here representing me and the company
<<elseif $player.makeup.messed >= 25>>
<<switch $scene.makeup>>
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll">>
No, no, this will not do at all. Makeup is not just something you slap on and forget; it is a responsibility. One should never let it get into a state like this; checking and touching yourself up needs to be a part of your routine at all times.
<<case "" "nomakeupmakeup" "ultimatebimbo">>
And to make it worse, your makeup is a mess! No, this will not do at all.
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<<else>>
<<switch $scene.makeup>>
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll">>
And your makeup is perfectly maintained, well done!
<<case "" "nomakeupmakeup" "ultimatebimbo">>
I would offer points for the fact that your makeup is well maintained but, well... maintaining the wrong thing is practically the same as maintaining the right thing wrong!
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<</if>>
@@"<br>
<br>
<<if setup.getItemFromType("earring") == "gold_hoop_earrings">>
"@@.npc_manager;Oh, and let me say that I love how those earrings highlight your face, they really draw attention to that slender neck.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 15 && setup.getItemFromType("choker") == "">>
<<printThought $player "My neck would look even better with your collar around it....">><br>
<br>
<</if>>
<</if>>/*#
#desc: compute variables related to chastity inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.forgot_cage = $scene.cage == "">>
<<set $scene.forgot_cage_lock = false>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.forgot_cage_key = !setup.checkItemInInventory($scene.keyId)>>
<<set $scene.manager_hascagekey = $npc_manager.flags.hascagekey>>
<<set $scene.stayed_in_chastity = false>>
<<if !$scene.forgot_cage>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<if $npc_manager.flags.hascagekey || setup.checkItemInInventory(setup.getItemObj($scene.cage).lockable[1])>>
<<set $scene.score+=1>>
<<if !$npc_manager.flags.hascagekey && !($currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished)>>
<<set $npc_manager.flags.hascagekey = true>>
<<deleteItem $player $now $scene.keyId>>
<</if>>
<<else>>
<<if !($currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished)>>
<<deleteItem $player $now $scene.keyId>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<</if>>
<<else>>
<<if !$npc_manager.flags.playerstayedinchastity && !setup.checkItemInInventory($scene.keyId)>>
<<set $scene.forgot_cage_key = true>>
<</if>>
<</if>>
<<if $npc_manager.flags.hascagekey && ($player.timebased.locked_cage_voluntarily >= (8*3600) )>>
<<set $npc_manager.flags.good_girl.stayed_in_chastity_voluntarily+=1>>
<<set $scene.stayed_in_chastity = true>>
<</if>>
<<if !$inventory[$scene.cage].status.lock>>
<<set $scene.forgot_cage_lock = true>>
<<manipulateItem $player $now $scene.cage 'lock' true>>
<</if>>
<<else>>
<<applyExperience 'bimbofication' 13 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>/*#
#desc: text related to chastity inspection
#status: RELEASED 0.6.0.0
#*/
Parting your undergarments her attention turns towards what lies beneath.<br>
<br>
<<if $scene.cage != "" && $scene.forgot_cage_lock>>
"@@.npc_manager;What is this? You can be such a ditz, <<=$player.first_name>>. You forgot to actually lock up!@@", she laments while locking your cage by pushing the shackle into the padlock. A foreboding click signals that your <<getWordMyPenis $player>> is now locked
<<if $scene.forgot_cage_key>>
away for the day, since you decided to leave the key at home.
<<elseif $npc_manager.flags.trustplayerwithkey>>
away.
<<else>>
away for the day, since you do not have possession of the key.
<</if>>
<<else>>
"@@.npc_manager;Good, caged and securely locked.@@", she declares while giving a confirming tug on the lock to test it.
<</if>>
<br><br>
<<if $npc_manager.flags.trustplayerwithkey>>
<<if $npc_manager.flags.playerstayedinchastity>>
Her hand rests a little bit longer then usual above your <<getWordMyPenis $player>>, and even rubs up and down for a few moments.<br>
<br>
"@@.npc_manager;Oh <<=$player.first_name>>, such splendid behaviour, to lock away that useless little thing of your own free will. I am so proud of you. You are turning out even better then I imagined you might. We will just keep the key here on your desk to remind you of your devotion. And you may, of course, may have it back at the end of the day. That is...if you want it back at all. I would understand if you decide to leave it in my possession. That way you can concentrate on more important issues, such as the pleasure of others and how to become a more obedient sissy slave.@@"<br>
<br>
<<if setup.getTotalValue('feminization') >=12 && setup.getTotalValue('submission') >= 12>>
<<printThought $player "<<=setup.getNpcName('npc_manager', 'formal')>> is right, I hope I stay locked up forever...">><br>
<br>
"@@.npc_manager;Lovely, I can see that you have fully accepted your fate, that your pleasure comes from service and that being locked and caged can only help you in that goal.@@"<br>
<br>
You nod obediently. She is right, as always, perfectly guiding you to become the SISSY secretary you were always meant to be.
<<elseif setup.getTotalValue('feminization') >=7 && setup.getTotalValue('submission') >= 7>>
<<printThought $player "I think that is something I would like very much... what am I thinking?">><br>
<br>
"@@.npc_manager;There, that look on your face, the way you bashfully turn your gaze at the floor, those are your tells. I do not think I need any more evidence for my case, do I, sissy?@@"<br>
<br>
You consider protesting for a moment, but then again, what would be the point? You are, after all a SISSY Secretary. Correction, you are HER SISSY Secretary, are you not?
<<elseif $npc_manager.flags.hascagekey>>
<<printThought $player "What? No way? I am not some... some Sissy Secretary. Am I?">><br>
<br>
"@@.npc_manager;What, that was not your intention in giving me the key? Well, maybe not yet.@@"<br>
<br>
That last statement was underlined with a rather devious looking smile on her face. You think she really means it, whether you like it or not. "@@.npc_manager;The question is, of course, do you really reject this idea? I think not, after all, you are still here, right?@@"
<<else>>
<<printThought $player "What? No way? I am not some... some Sissy Secretary. Am I?">><br>
<br>
"@@.npc_manager;A pity I am not in possession of the key... yet. But I am sure that will be sorted out once you finish with this little trial, hmm?@@"<br>
<br>
You gulp as she grins wider.
<</if>>
<<elseif $scene.forgot_cage_key>>
"@@.npc_manager;Well, go ahead <<=$player.first_name>>, hand me the key@@", she demands while extending her hand towards you.<br>
<br>
You lower your eyes and admit that you forgot the key at your flat.<br>
<br>
"@@.npc_manager;Oh how very convenient... for you.@@"<br>
<br>
You are surprised by this reaction.<br>
<br>
"@@.npc_manager;Do not worry, I had foreseen some resistance by your side and was prepared for worse disobedience. This.. this is nothing@@", she says while freeing your cage from your <<=setup.getItemTypeName("panties")>>. Then she unlocks the lock with a key of her own before changing the lock on the cage for another.<br>
<br>
"@@.npc_manager;See, now you have a shiny new lock and the key you so conveniently forgot at home is now useless, while I remain in possession of the true key. The important question is, am I willing to give you the key at the end of the day? Only one way to find out. Until then you are all locked up and tucked away, so you can concentrate on more important issues. Self control is a fundamental pillar of society, never forget that <<=$player.first_name>>.@@"
<<else>>
"@@.npc_manager;Well, go ahead <<=$player.first_name>>, hand me the key@@", she demands while extending her hand towards you.<br>
<br>
You hand over the key for your <<=setup.getItemTypeName('cage')>> as demanded.<br>
<br>
"@@.npc_manager;Good. All locked up and tucked away, so you can concentrate on more important issues. Self control is a fundamental pillar of society, never forget that <<=$player.first_name>>.@@" Smiling at you she gently places the key in the dish at the edge of your desk.<br>
<br>
"@@.npc_manager;I have entrusted the key with you for the time being, so I will let you keep it. But if you even think about unlocking your <<getWordMyPenis $player>> anywhere on the premise of the company you will have your key rights revoked in no time, and that is before we get into the disciplinary consequences! Anyway, you are locked up and tucked away, so you can better concentrate on more important issues. Self control is a fundamental pillar of society, never forget that <<=$player.first_name>>.@@"
<</if>>
<<else>>
Her hand rests a little bit longer then usual over your <<getWordMyPenis $player>>, and even rubs up and down a little bit.<br>
<br>
<<if $npc_manager.flags.hascagekey>>
"@@.npc_manager;Oh <<=$player.first_name>>, such splendid behaviour, to lock away that useless little thing away. Not that you had a choice... I suppose, but still, I am so very proud of you. Perhaps if you are good I may even let you have the key back... if you even want it back at all. I could understand if you decide to leave it with me to better concentrate on more important issues, like becoming a more obedient sissy slave.@@"
<<else>>
"@@.npc_manager;Oh <<=$player.first_name>>, such splendid behaviour, to keep that useless little thing locked away. Not not that you have much of a choice if you want to fulfill the requirements of your little trial... oh but after it is over...@@" She smiles in a way that has you nervously wondering yet again what you have gotten yourself into. "@@.npc_manager;Well, the important thing, for now, is that you are properly caged and locked, well done.@@"
<</if>>
<br><br>
<<if setup.getTotalValue('feminization') >=12 && setup.getTotalValue('submission') >= 12>>
<<printThought $player "<<=setup.getNpcName('npc_manager', 'formal')>> is right, I hope I stay locked up forever...">><br>
<br>
"@@.npc_manager;Lovely, I can see that you have fully accepted your fate, that your pleasure comes from service and that being locked and caged can only help you in that goal.@@"<br>
<br>
You nod obediently. She is right, as always, perfectly guiding you to become the SISSY secretary you were always meant to be.
<<elseif (setup.getTotalValue('feminization')>=9) && (setup.getTotalValue('submission')>=7)>>
"@@.npc_manager;There, that look on your face, the way you bashfully turn your gaze towards the floor, those are your tells. I do not think I need any more evidence for my case, do I, sissy?@@"<br>
<br>
You consider protesting for a moment, but then again, what would be the point? You are, after all a Sissy Secretary. Correction, you are HER Sissy Secretary, are you not?
<<elseif $npc_manager.flags.hascagekey>>
<<printThought $player "What? No way? I am not some... some Sissy Secretary. Am I?">><br>
<br>
"@@.npc_manager;What, that was not your intention in giving me the key? Well, maybe not yet.@@"<br>
<br>
That last statement was underlined with a rather devious looking smile on her face. You think she really means it, whether you like it or not. "@@.npc_manager;The question is, of course, do you really reject this idea? I think not, after all, you are still here, right?@@"
<<else>>
<<printThought $player "What? No way? I am not some... some Sissy Secretary. Am I?">><br>
<br>
"@@.npc_manager;A pity I am not in possession of the key... yet. But I am sure that will be sorted out once you finish with this little trial, hmm?@@"<br>
<br>
You gulp as she grins wider.
<</if>>
<</if>>
<br><br>
/% note: only included in stage 3+ where plug is required %/<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.plug_ems = false>>
<<set $scene.plug_vibe = false>>
<<if $scene.plug != "">>
<<set $scene.plug_ems = setup.getItemObj($scene.plug).tags.includes("ems")>>
<<set $scene.plug_vibe = setup.getItemObj($scene.plug).tags.includes("vibrating")>>
<</if>><<if $scene.plug_ems>>
<<applyExperience 'bdsm' 10 'little' $SEEN_FRIEND>>
<</if>>
<<if $scene.plug_vibe>>
<<set $player.timebased.horny += 10>>
<</if>>
<<if $scene.plug != "" && $scene.plug_ems && $scene.plug_vibe>>
<<applyExperience 'submission' 3 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_FRIEND>>
<<else>>
<<if $scene.plug != "">>
<<if $scene.plug_ems>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<elseif $scene.plug_vibe>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<<else>>
<<if setup.inWardrobe('remote_control_plug')>>
<<wardrobeToItem 'remote_control_plug'>>
<<elseif !setup.checkItemInInventory('remote_control_plug')>>
<<addItem "remote_control_plug">>
<</if>>
<<wearItem $player $now "remote_control_plug" true>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<</if>>Reaching around behind her hand goes right up between your cheeks to
<<if $scene.plug != "" && $scene.plug_ems && $scene.plug_vibe>>
find the plug nestled within. With a slight smile she produces a remote, clicking first to cause the anal occupant to thrum pleasantly against your prostate followed by a short, but still painful, shock of electricity as she confirms its function.<br>
<br>
"@@.npc_manager;Lovely, equipped as required, all the better for me to easily keep you in line.@@"<br>
<br>
You shiver, even that brief moment of stimulation cranking up your arousal while driving home how much control you have surrendered to her.
<<else>>
<<if $scene.plug != "">>
find the plug nestled within. With a slight smile she produces a remote,
<<if $scene.plug_ems>>
clicking once to no effect, her expression turning neutral before you jump as a strong jolt of electricity pulses out from the plug.<br>
<br>
"@@.npc_manager;Feeling a bit masochistic, are we? Remember your instructions are to come filled with something capable of vibrational rewards AND punishing shocks. While I appreciate that you recognised the need for an easy way to punish you training works best mixing stick and carrot, please find something more appropriate to come filled with in the future.@@"
<<elseif $scene.plug_vibe>>
clicking once to send a burst of pleasurable vibrations through your prostate before frowning when the follow-up click elicits no response.<br>
<br>
"@@.npc_manager;What is this, just a vibrator? You know I expect your plug to be full-featured for pleasure AND punishment, this lack of electronic functionality is a serious error; do address it and come to work properly plugged in the future lest I be forced to apply less... removable methods to keep you in line.@@"
<<else>>
clicking once to no effect, her expression turning neutral before descending into a frown when the second click does just as little. "@@.npc_manager;What? You know you are expected to come filled with a vibration and electric equipped plug, you naughty girl! You had better fill yourself more properly in the future lest I be forced to apply less... removable methods to keep you in line.@@"
<</if>>
<br><br>
You gulp and nod as she steps back.
<<else>>
find... nothing. A frown developing she roots around for several moments before pulling away. "@@.npc_manager;Empty? No, no, that will not do at all!@@" Landing a sharp slap on your rear she spins on her heels, disappearing into her inner office for a moment before returning as she unboxes a familiar plug.<br>
<br>
"@@.npc_manager;Bend over!@@" She says with glee, spinning you around and forcing you over the desk when you fail to hop to it quickly enough for her liking before jamming the plug in place and pulling you back to your feet. "@@.npc_manager;There, properly filled like a good SISSY secretary!@@"
<</if>>
<</if>>
<br><br>/*#
#desc: failed to wear cage, replaced, if too many times locked and key privileges revoked
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<include inspectionData_chastity>>
<<set $npc_manager.trigger.forgotten_cage += 1>>
<<set $player.timebased.horny = 0>>
<<set $npc_manager.flags.hascagekey = true>>
<<switch $npc_manager.trigger.forgotten_cage>>
<<case 1>>
<<if $npc_manager.flags.pegging.chastity == 'dickless'>>
<<set $scene.newcage = "chastity_cage_tiny">>
<<else>>
<<set $scene.newcage = "c_cage_pink">>
<</if>>
<<case 2>>
<<set $scene.newcage = "chastity_cage_tiny">>
<<case 3>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $scene.newcage = "electric_chastity">>
<<default>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $scene.newcage = "electric_chastity">>
<</switch>>
<<if !setup.checkItemOwned($scene.newcage)>>
<<addItem $scene.newcage>>
<<elseif !setup.checkItemInInventory($scene.newcage)>>
<<wardrobeToItem $scene.newcage>>
<</if>>
<<wearItem $player $now $scene.newcage true>>
<<manipulateItem $player $now $scene.newcage "lock" true>>
<<set $scene.forgot_cage = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Noticing your lack of a chastity cage her expression hardens but she speaks not a word as she walks around her desk and pulls out a small box and what looks like a freezer pack.<br>
<br>
<<printThought $player "I guess she has a secret minifridge back there?">><br>
<br>
<<switch $npc_manager.trigger.forgotten_cage>>
<<case 1>>
<<if $npc_manager.flags.pegging.chastity == 'dickless'>>
"@@.npc_manager;You naughty ditz, forgetting such an important, nay, vital part of your uniform.@@" She states casually as she unpacks a familiar small steel cage cage. "@@.npc_manager;And after you so nicely upgraded... or maybe it's downgraded? To this snug little number.@@"<br>
<br>
Without even raising her voice she has you frozen in fear, standing petrified as she kneels down, your chilled state becoming literal as she presses the cold pack against you to cause you to wither and shrink before efficiently caging you up and locking you away.
<<if $npc_manager.flags.trustplayerwithkey>>
<br><br>
"@@.npc_manager;Do take more care, if you cannot remember to come to work properly attired I will have no choice but to revoke your right to take the key home with you. It is far safer that you be in permanent chastity than to be at such risk on the job.@@"
<</if>>
<<else>>
"@@.npc_manager;You naughty ditz, forgetting such an important, nay, vital part of your uniform.@@" She states casually as she unpacks a familiar pink plastic cage. "@@.npc_manager;Fortunately I always have a spare handy for... forgetful sissies.@@"<br>
<br>
Without even raising her voice she has you frozen in fear, standing petrified as she kneels down, your chilled state becoming literal as she presses the cold pack against you to cause you to wither and shrink before efficiently caging you up and locking you away.
<<if $npc_manager.flags.trustplayerwithkey>>
<br><br>
"@@.npc_manager;Do take more care, if you cannot remember to come to work properly attired I will have no choice but to revoke your right to take the key home with you. It is far safer that you be in permanent chastity than to be at such risk on the job.@@"
<</if>>
<</if>>
<<case 2>>
<<if $npc_manager.flags.pegging.chastity == 'dickless'>>
"@@.npc_manager;Again? I would have thought you had learned to embrace your proper caged state.@@" You watch as she unpacks a familiar small, steel cage.<br>
<br>
You bite your lip in fear, the fact that she hasn't even raised her voice somehow even more scary than if you were the target of an outburst. Casually she uses the cold pack to shrink you down before gently stuffing you into the small cage. Recovering from the near-freezing chill of the ice pack the hard metal has plenty of time to adjust to your temperature leaving you feeling very tightly constrained.<br>
<br>
"@@.npc_manager;There, back in your little home. Do keep better track of it this time, it is for your own good, as well as your job, after all.@@" <<if $npc_manager.flags.trustplayerwithkey>>Noting your shocked, pouting expression she smiles. "@@.npc_manager;Do not worry, you will get the key back at the end of the day... This time.@@"<</if>>
<<else>>
"@@.npc_manager;Again? I would have thought you had learned to embrace your proper caged state.@@" You watch as she unpacks what looks like a small, steel cage that you wonder how you could even fit into it...<br>
<br>
Standing petrified in fear, especially at the ominous fact that she has not even raised her voice, you watch as she uses the cold pack to shrink you down before gently stuffing you into the new cage. Recovering from the near-freezing chill of the ice pack the hard metal has plenty of time to adjust to your temperature leaving you feeling very tightly constrained.<br>
<br>
"@@.npc_manager;There, a smaller cage is better for you anyway. Do keep better track of it this time, it is for your own good, as well as your job, after all.@@" <<if $npc_manager.flags.trustplayerwithkey>>Noting your shocked, pouting expression she smiles. "@@.npc_manager;Do not worry, you will get the key back at the end of the day... This time.@@"<</if>>
<</if>>
<<case 3>>
Casually ripping through what looks like quite sturdy packaging you catch a glimpse of an intimidating steel chastity device as she approaches you. "@@.npc_manager;Forgetting such a vital training device once again... well, I think it is time to deal with this problem... permanently.@@"<br>
<br>
A brief moment of contact with the ice pack has you shrunken and soft as she stares you down.<br>
<br>
"@@.npc_manager;This lovely device is perfect for keeping the most... recalcitrant sissies under control.@@" She states, nimbly threading you down the snug tube before locking it in place. "@@.npc_manager;And now for the final cherry on top...@@" She adds before producing a narrow, gently curved rod. Greasing it with a thin lubricant she aligns it with the tip of the device and you are treated to the strange sensation of it sliding into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate as the sounding rod bottoms out inside of you and locks in place leaving you effectively imprisoned inside and out.<br>
<br>
Waving a small fob over the device you hear a sharp click of the lock before she wiggles the fob in front of your face. "@@.npc_manager;Over a trillion, trillion combinations, and you will NOT be getting the key back at the end of the day.@@"<br>
<br>
Still trying to adjust to the sensations of this new device you stare back at her, but she only smiles. "@@.npc_manager;Oh, and, just so you know... it is also electrified if you ever think of hmm... misbehaving again.@@"<br>
<br>
Wide-eyed with fear you tremble as she steps back.
<<default>>
/%TODOfuture - sissy 9001 here?%/
She frowns at you as she casually rips open what looks like quite a sturdy packaging you catch a glimpse of an intimidating steel chastity device as she approaches you. "@@.npc_manager;Again you forget, and again I must admonish you... if you are not careful I may send you to R&D to try out one of their, experimental permanent chastity devices.@@"<br>
<br>
A brief moment of contact with the ice pack has you shrunken and soft as she stares you down.<br>
<br>
"@@.npc_manager;Until then this off the shelf model shall have to do.@@" She states, nimbly threading you down the snug tube before locking it in place. "@@.npc_manager;And now for the final cherry on top...@@" She adds before producing a narrow, gently curved rod. Greasing it with a thin lubricant she aligns it with the tip of the device and you are treated to the strange sensation of it sliding into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate as the sounding rod bottoms out inside of you and locks in place leaving you effectively imprisoned inside and out.<br>
<br>
Waving a small fob over the device you hear a sharp click of the lock before she wiggles the fob in front of your face. "@@.npc_manager;Over a trillion, trillion combinations, and you will NOT be getting the key back at the end of the day.@@"<br>
<br>
Still trying to adjust to the sensations of this new device you stare back at her, but she only smiles. "@@.npc_manager;Oh, and, just so you know... it is also electrified if you ever think of hmm... misbehaving again.@@"<br>
<br>
Wide-eyed with fear you tremble as she steps back.
<</switch>>
<br><br>
"@@.npc_manager;There, now that that is all sorted... shall we continue?@@"<br>
<br>
Feeling the fresh imprisoning weight dangling between your legs you can only nod meekly. The fact that she has not disciplined you is almost disconcerting... though perhaps the cage is punishment enough...<br>
<br>
[<<moveTo $scene.return "Resume inspection." 300>>]
</div><<set $scene.collar = setup.getItemFromType('choker')>>
<<set $scene.lockedCollar = $scene.collar != "" && setup.getItemObj($scene.collar).hasOwnProperty("lockable") && $inventory[$scene.collar].status.lock>>
<<if $scene.lockedCollar && $player.flags.collar.owner == "">>
<<manipulateItem $player $now $scene.collar 'lock' true>>
<<removeItem $player $now $scene.collar true>>
<</if>><<if $scene.lockedCollar>>
Her gaze finally settles on the collar locked around your neck.<br>
<br>
<<if $player.flags.collar.owner == "npc_manager">>
"@@.npc_manager;I do so adore this reminder of your status as my adoring slave.@@" Reaching out she traces a finger over the front of your collar. "@@.npc_manager;Perfection.@@"
<<elseif $player.flags.collar.owner != "">>
"@@.npc_manager;Hmm, owned are we? Well let me not be one to interfere with another's property, just remember that here at the office I am your Lady and Mistress, I will not brook you being distracted by serving two masters.@@"
<<else>>
"@@.npc_manager;Hmm, is that collar locked? Tsk tsk, what a foolish mistake. A collar such as this should only be locked in place if you have been claimed and owned, let me just take care of that then.@@"<br>
<br>
With casual ease she fiddles with the lock, unlocking and removing the collar before handing it back to you.<br>
<br>
"@@.npc_manager;There we go. You will have to work a bit harder if you want to earn something like that proper.@@" She adds with a wink.
<</if>>
<br><br>
<</if>>/*#
#desc: stand in company lobby
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<setScene>>
<<if $player.work.sendhome>>
<<if !setup.compareDay($player.work.sendhomedate,$now)>>
<<set $player.work.sendhome = false>>
<</if>>
<</if>>
<<if $scene.from_hub>>
<<set $scene.from_hub = false>>
<<set $scene.from_outside = true>>
<<else>>
<<set $scene.from_outside = false>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<include enterroom>>
<<initRoom>>
<table>
<tr><td width="50%">
<<if setup.isWorkDay($now) is false>>
You enter the stupendous lobby of the headquarter of Social Interaction Service Syndicate Inc. At least that's what you try to do. But it is weekend, and the Building is closed. Go home or something.
<<else>>
<<if ( (getUTCHours($now) >= 6) and (getUTCHours($now) < 18) ) || $currentTasks.hasOwnProperty("party_dress") && !$currentTasks["party_dress"].finished>>
You enter the stupendous lobby of Social Interaction Service Syndicate Inc.<br>
<br>
<<if $player.flags.jobsecretary == false>>
You've never been above the tenth floor or the massive headquarter for the parent company for your current employer "Cloud Data Services."
<<else>>
You work as a secretary here.
<</if>>
<br><br>
<<if $scene.from_outside && setup.getItemObjFromType('shoes').hasOwnProperty('heels') && setup.getItemObjFromType('shoes').heels.difficulty > setup.getTotalValue("heels")>>
<<if $scene.rideshare>>
Your pocketbook be damned, you are very glad you decided to ride in to work; just walking across the large corporate lobby in these heels is a painful challenge, you never would have made it on foot.
<<else>>
You stagger into work already exhausted. The normally short walk was like a death-march in these heels. For the last few blocks you were barely even staying vertical, staggering between walls and bike racks and anything else you could lean against for some measure of support. You try to ignore the looks you get crossing the lobby on your way to almost falling into the elevator.
<</if>>
<br><br>
<</if>>
<<include thoughts_work>>
<<if $player.flags.jobsecretary == false>>
[<<moveTo "room_dataservice" "Floor 9: Cloud Data Service" 90>>]
<<else>>
<<if $player.work.sendhome>>
[@@.link_locked;You've been sent home for the day!@@]<br>
<<else>>
<<if !$player.flags.firstWorkDay>>
<<set _text = 'Floor 52: '+ps(setup.getNpcName('npc_manager', 'formal'))+' Office'>>
[<<moveTo "event_first_workday_morning_0" _text 120 "<<set $player.flags.firstWorkDay = true>>">>]<br>
<<else>>
<<if $currentTasks.hasOwnProperty("party_dress") && !$currentTasks["party_dress"].finished>>
<<if setup.checkTaskUntimedComplete('party_dress')>>
<<printThought $player "I am dressed and ready for the party.">>
<<else>>
<<printThought $player "I do not think I am properly attired for a formal party.">>
<</if>>
<br><br>
<<set _text = 'Floor 52: '+ps(setup.getNpcName('npc_manager', 'formal'))+' Office'>>
[<<moveTo "event_manager_preparty_volunteer_dress" _text 120 "<<set $player.flags.firstWorkDay = true>>">>]
<<elseif $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>
[@@.link_locked;It is the weekend, the elevator will not take you to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.@@]
<<elseif $now.getUTCDay() == 5 && $now.getUTCHours() > 12>>
[@@.link_locked;It is Friday and your work is done. Even the elevator seems to want you to enjoy your weekend as it refuses to take you up to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.@@]
<<elseif $now.getUTCHours() >= 16>>
[@@.link_locked;Your work is done. Even the elevator seems to want you to head home as it refuses to take you up to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.@@]
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
You were sent home to "fix" things after failing an inspection. Better be sure you have addressed everything before heading back up...<br>
<br>
<<set _text = 'Floor 52: '+ps(setup.getNpcName('npc_manager', 'formal'))+' Office'>>
[<<moveTo "event_manager_daily_check_stage_2" _text 120 "<<set $beforetasklocation = 'room_office_sissy_secretary_work_morning_start'>>">>]
<<elseif setup.getDueDate('manager_morning_inspection_task').getUTCDate() != $now.getUTCDate()>>
[@@.link_locked;<<=setup.getNpcName('npc_manager', 'formal')>> has dismissed you for the day for poor behaviour. You do not seem to be able to take the elevator to her floor.@@]
<<else>>
<<set _text = 'Floor 52: '+ps(setup.getNpcName('npc_manager', 'formal'))+' Office'>>
[<<moveTo "room_elevator_in" _text 120>>]
<</if>>
<br>
<</if>>
<</if>>
[<<moveTo "room_dataservice" "Floor 9: Cloud Data Service" 120>>]<br>
<</if>>
<<else>>
All offices are officially closed for the day. Go home or something.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_citymap" "Exit Company Building" 120>>]
</td><td width="50%"><image src="./images/locations/company_lobby.png"></image></td></tr>
</table>/*#
#desc: mux to handle going to dataservice before/after you become secretary
#status: FINISHED 0.4.0.0
#*/
<<initRoom>>
<<if $player.flags.jobsecretary == false>>
<<moveTo event_dataservice_intro_0>>
<<else>>
<<moveTo dataservice_nothing>>
<</if>>/*#
#desc: try to return to old job but change your mind
#status: FINISHED 0.4.0.0
#*/
<<if visited(passage()) == 1>>
<</if>>
<<set $now to setup.advanceDate($player, $now, "seconds", 60)>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
As you think to approach Cloud Data Service you realise you have nothing to do here. Even though you worked here for 3 years, your current employer would probably not like to see you hanging around in the wrong office.<br>
<br>
[<<moveTo "company_lobby" "Return to the Lobby" 120>>]
</div>/*#
#desc: goto your secretary office
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<<set $player.work.tmphoursDone = 0>>
<<set $player.work.tmpworkPensum = 0>>
<<if (setup.isWorkDay($now)==true)>>
<<setFood $player $now>>
<</if>>
<</if>>
<<if !$player.flags.firstWorkDay>>
<<set $player.flags.firstWorkDay = true>>
<<initRoom>>
<<moveTo "event_first_workday_morning_0">>
<</if>>
<<if getUTCHours($now)<8>>
<<set _tmpSeconds = setup.secondstoWork($player,$now)>>
<<else>>
<<set _tmpSeconds = 0>>
<</if>>
<<set _worktime = false>>
<<if (setup.isWorkDay($now)==true)>>
<<set _workday = true>>
<<if (( (setup.getUTCDay($now)==5) and (getUTCHours($now)>=$player.work.time_friday.hour))or( (setup.getUTCDay($now)>=1) and (setup.getUTCDay($now)<5) and (getUTCHours($now)>=$player.work.time_evening.hour) ))>>
<<set _worktime = false>>
<<else>>
<<set _worktime = true>>
<</if>>
<<else>>
<<set _workday = false>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You enter the antechamber of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, which is your workspace as a
<<if setup.getTotalValue('feminization')<10>>
secretary for Social Interaction Service Syndicate Inc.
<<else>>
<<if setup.getTotalValue('bimbofication')>=10>>
Bimbo
<</if>>
SISSY Secretary.
<</if>>
<<if _workday == false>>
Hanging out here on the weekend hardly makes any sense to you.
<<elseif _worktime == false>>
Your hours are over for the day. Time to go home.
<</if>>
<br><br>
<<include thoughts_work>>
[<<link "Check Work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if _worktime == true>>
<<if (getUTCHours($now)<$player.work.time_morning.hour)>>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start Working." _tmpSeconds "<<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEarly = true>>">>]<br>
<<elseif ((getUTCHours($now)==$player.work.time_midday.hour) && (getUTCMinutes($now)<$player.work.time_midday.minutes))>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Start Working." 0 "<<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start Working." 0 "<<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]<br>
<</if>>
<<else>>
<<if $player.makeup.messed >= 25>>
[<<moveTo "room_office_sissy_secretary" "Take a moment to touch up your makeup" 300 "<<set $player.makeup.messed=0>>">>]<br><br>
<</if>>
<<if setup.dayDiff($now,$npc_manager.flags.lastOfficeVisit)==0>>
[@@.link_locked;You already visited the office of <<=setup.getNpcName('npc_manager', 'formal')>> today!@@]<br>
<<else>>
<<set _text = 'Office of '+setup.getNpcName('npc_manager', 'formal')>>
[<<moveTo "room_office_manager" _text 10>>]<br>
<</if>>
<</if>>
[<<moveTo "room_elevator_home" "Back to the lobby" 160>>]
</div>/*#
#desc: in your office after met w/manager
#status: WRITTEN 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange==true>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You stand in your office having finished another day of work.<br>
<br>
<<if setup.dayDiff($now,$npc_manager.flags.lastOfficeVisit)==0>>
[@@.link_locked;You already visited the office of <<=setup.getNpcName('npc_manager', 'formal')>> today!@@]<br>
<<else>>
<<set _text = 'Office of '+setup.getNpcName('npc_manager', 'formal')>>
[<<moveTo "room_office_manager" _text 10>>]<br>
<</if>>
[<<moveTo "room_elevator_home" "Back to the lobby" 160>>]
</div>/*#
#desc: list information about your work status as a secretry
#status: FINISHED 0.4.0.0
#*/
<div class="dialog_div">
<<if $now.getUTCDay()==5>>
<<set _dailyHours = 5>>
<<else>>
<<set _dailyHours = 8.5>>
<</if>>
<<if $npc_manager.stage < 3>>
Welcome Probationary Secretary <<=$player.first_name>> <<=$player.last_name>><br>
<<else>>
Welcome SISSY Secretary <<=$player.first_name>> <<=$player.last_name>><br>
<</if>>
<hr>
Vacation days left: @@.textRightSide;<<=$player.work.vacation>> days@@<br>
Weekly payment: @@.textRightSide;<<=$player.work.payment>> Cr@@<br>
<br>
Hours worked today: @@.textRightSide;<<=(Math.round($player.work.tmphoursDone*2)/2)>>/<<=_dailyHours>> h@@<br>
Hours worked this week: @@.textRightSide;<<=Math.round($player.work.hoursDone)>>/<<=$player.work.hoursperWeek>> h@@<br>
Work completed today: @@.textRightSide;<<=Math.round($player.work.tmpworkPensum/_dailyHours*100)>>%@@<br>
Work completed this week: @@.textRightSide;<<=Math.round($player.work.workPensum/$player.work.hoursperWeek*100)>>%@@<br>
<hr>
<<if $npc_manager.stage < 3>>
Probation remaining:@@.textRightSide;<<=$player.work.qualifyingperiod>>@@<br>
<hr>
<</if>>
@@.textRightSide;
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<</button>>@@
</div>/*#
#desc: dummy passthrough passage to hijack for random events on your way "down" the elevator leaving work
#status: RELEASED 0.6.0.0
#*/
<<initRoom>>
<<moveTo "company_lobby">>/*#
#desc: dummy passthrough passage to hijack for random events on your way "up" the elevator arriving at work
#status: RELEASED 0.6.0.0
#*/
<<initRoom>>
<<moveTo "room_office_sissy_secretary">>/*#
#desc: manager eats sushi off of you
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.strip>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing $player $now true>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $scene.do_not_bother_manager = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.strip>>
She smiles as you quickly shed your clothing, hungrily admiring you before motioning for you to lay down across her desk. With a grin she brandishes her chopsticks and begins arranging her meal across your naked body.<br>
<br>
"@@.npc_manager;I do so enjoy Nyotaimori@@" she states. "@@.npc_manager;and you really do make just such a lovely platter...@@" she adds, finishing off by mixing up a bowl of wasabi soy sauce to place atop your belly. "@@.npc_manager;Perfection.@@" she concludes, sitting down and begining to eat.<br>
<br>
She takes a leisurely time with her meal, savoring every bite while also spending time teasing you with chopsticks; pinching your nipples, poking at your cage, by the time she has finished her meal you are feeling very hot and bothered.<br>
<br>
"@@.npc_manager;Hmm, perhaps I should send you back for another roll, I am still feeling a bit peckish...@@" You freeze, suddenly worrying that she might order you to return to the cafeteria naked as you are.<br>
<br>
She dispels the tension with a chuckle. "@@.npc_manager;Ooooh, a full body blush, how utterly adorable! Fortunately for your sense of modesty, well, however much of that you have left, I would so much rather keep your loveliness to myself... of course that does not mean I cannot enjoy a little nibble...@@"<br>
<br>
Leaning forward she goes straight for your teased and diamond-hard nipples, her tongue making circles before finishing off with a quick little bite. You gasp only to moan louder when her hand snakes south, bypassing your <<getWordMyPenis $player>> to plunge between your legs.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
"@@.npc_manager;Very nice@@" she whispers, her fingers toying with the <<=setup.getItemName(setup.getItemFromType("plug"))>> inside of you. "@@.npc_manager;All plugged and filled like a good SISSY secretary. Well, good sissy's get rewarded...@@"<br>
<br>
You moan in pleasure as she resumes nibble on your nipples, her fingers toying with your plug, your naked body trembling as she builds you up to a soft, but fulfilling analgasm that leaves you panting.
<<else>>
"@@.npc_manager;Mmm, you like that?@@" She asks, plunging two fingers into your rear and curling them up to massage your prostate.<br>
<br>
Your moan of pleasure is in clear agreement with her inquiry and she resumes licking and nibbling at your sensitive nipples, her fingers below pumping in and out until you jolt and leak out of your cage with a powerful analgasm.
<</if>>
<br><br>
"@@.npc_manager;Good girl. That should give you a nice clear head to focus on your afternoon duties.@@"<br>
<br>
She presents her palm, now covered in cum that leaked out from your cage, for you to lick clean, smiling at your efforts before motioning for you to depart. You gather your clothes and thank her.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Get dressed and leave her office." 600 "<<set $player.work.foodID = ''>><<set $player.work.foodNumber = 0>><<useClothSetPop 'tmp' $player $now>><<set $npc_manager.affection +=1>><<set $player.timebased.horny = 0>><<useClothSetPop 'tmp' $player $now>>">>]
<<else>>
Her gaze momentarily narrows when you fail to begin removing clothes.<br>
<br>
"@@.npc_manager;Disappointing, I thought by now you had learned to be properly obedient but it seems that more training remains... Oh well, your loss.@@"<br>
<br>
<<printThought $player "Damn, why did I hesitate?">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1 "<<set $player.work.foodID = ''>><<set $player.work.foodNumber = 0>>">>]
<</if>>
</div>/*#
#desc: ask for help from manager after delivering lunch
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $npc_manager.affection < $npc_manager.anger>>
Having made your request you await her response only for her gaze to narrow.<br>
<br>
"@@.npc_manager;Really? After all you have done you expect me to get you off? I think not, go back to work and stew. With luck that will put you in a better mindset to be a good SISSY secretary in the future.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1>>]
<<elseif !$scene.foodDelivery.done>>
Having made your request you await her response only for her gaze to narrow.<br>
<br>
"@@.npc_manager;How about you attend to your duties; notably, bringing my my lunch, and THEN you can ask for a bit of help with your... things.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1>>]
<<else>>
<<if $scene.foodDelivery.foodItem == 'food_sushi'>>
She looks up at you with a crafty smile as she opens up her lunch.<br>
<br>
"@@.npc_manager;Help you out? Oh... I have just the perfect idea, strip, now.@@"<br>
<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Get naked as instructed." 60 "<<set $scene.strip=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Change your mind." 60 "<<set $scene.strip=false>>">>]
<<else>>
Sliding her meal in front of her she considers you for a moment. "@@.npc_manager;Hmm, I suppose I have some time, but I want to eat first, how about you crawl under my desk and earn your reward while I enjoy... lunch.@@"<br>
<br>
[<<moveTo "event_work_lunch_assistance_2" "Crawl under her desk." 60 "<<set $scene.crawl=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_2" "Change your mind and go back to your desk." 60 "<<set $scene.crawl=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: manager asks you to go under her desk to earn your lunch reward
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.crawl>>
<<applyExperience 'submission' 7 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.crawl>>
Dropping to your hands and knees you crawl around the side and under her desk as she invitingly spreads her legs for you.<br>
<br>
Looking up you consider how you should "earn" your reward.<br>
<br>
[<<moveTo "event_work_lunch_assistance_3" "A foot massage should do the trick." 60 "<<set $scene.feet=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_3" "Actually, you're feeling a bit peckish yourself..." 60 "<<set $scene.feet=false>>">>]
<<else>>
Changing your mind you excuse yourself from the room, bracing for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> response but she merely shrugs as she munches her meal.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave her office." 1>>]
<</if>>
</div>/*#
#desc: massage managers feet or eat her out before lunch reward
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.feet>>
<<if setup.getTotalValue("foot") > 0>>
<<if setup.getTotalValue("foot") > 10>>
<<applyExperience 'foot' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'foot' 3 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<setThreshold 'foot' 'foot_massages' 'manager_help' true>>
<</if>>
<<else>>
<<applyExperience 'oral' 10 'normal' $SEEN_FRIEND>>
<<if $player.cunnilingusvirginity == "">>
<<set $player.cunnilingusvirginity = "npc_manager">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.feet>>
Sitting back you reach for her foot, gently removing her shoe before commencing with one of your famous foot rubs. You hear her purr in contentment as you set to the task of massaging out all of the tension from her feet and calves.<br>
<br>
<<if setup.getTotalValue("foot") > 10>>
Moving beyond a simple massage you lovingly worship her feet, using your tongue and lips to kiss and lick alongside your caressing fingers, delighting in her scent as you thoroughly clean and massage each appendage in turn.
<<else>>
Your hands work their magic, searching out the slightest knot or tension as you work your way over and around each foot and up her calves.
<</if>>
<<else>>
Crawling forward you lean your head in between her thighs, pulling her lovely red panties to one side as you extend your tongue.<br>
<br>
"@@.npc_manager;Mmmm,@@" she sighs as you begin licking and nibbling her deliciously delightful secret garden. With one hand she gently pats your head in approval as your tongue searches for pockets of pleasure.<br>
<br>
Despite your best efforts you find yourself unable to push her to orgasm, your <<=setup.getNpcName('npc_manager', 'title')>> displaying her typical absolute control, clearly appreciating your efforts but in no way being overcome by the pleasure you are providing. Though you would gladly sup on her delicious buffet for the rest of the afternoon it is all too soon that she finishes her meal.
<</if>>
<br><br>
"@@.npc_manager;Very nice,@@" she purrs in approval, sliding back from the desk and motioning for you to emerge from the leg cubby.<br>
<br>
Back on your feet she soon has you bent over the desk, your bottom exposed as you hear the "snap" of a glove.<br>
<br>
[<<moveTo "event_work_lunch_assistance_4" "Relax." 300>>]
</div>/*#
#desc: manager fingers/fists you as lunch reward
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if setup.getTotalValue("anal") > 10>>
<<applyExperience 'anal' 16 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 4 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("plug") != "">>
Taking a firm hold of its base she gently extracts your <<=setup.getItemName(setup.getItemFromType("plug"))>> and you wiggle your butt in anticipation of what is to come next.
<</if>>
<br><br>
A pair of rubber hands trace softly across your bare bottom, completely bypassing your <<getWordMyPenis $player>> dangling below as they gently squeeze and slowly circle inward until a finger begins to probe at your trembling hole.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
Your expert hole easily takes two fingers, then a third and you moan in delight as, after she finishes with a quick lubrication you feel her entire fist slide into you. Your eyes roll back in your head as you stretch around her knuckles and then she thrusts forward, your sphincter locking around her wrist only for her to slowly probe deeper.<br>
<br>
You are in filled sissy heaven, your <<getWordMyPenis $player>> twitching in delight, your focus so firmly on the gaping delights happening in your ass you barely even notice something brushing over your dangling member.<br>
<br>
"@@.npc_manager;Such a well-trained sissy, you are nearly bottomless!@@"
<<else>>
Two fingers become three and then four as she lubricates your hole and works you wider. "@@.npc_manager;So gapey! You love this don't you?@@"<br>
<br>
Panting and drooling on her desk is the closest you can get to a response as her gloved fingers massage your prostate and stretch you wide.<br>
<br>
"@@.npc_manager;Mmm, I bet I could fit my whole hand in here... would you like that? To feel my entire fist inside your sissy hole?@@"<br>
<br>
You moan desperately as you feel something brush over your dangling <<getWordMyPenis $player>>.<br>
<br>
"@@.npc_manager;Very well, since you asked so nicely, open wide!@@"<br>
<br>
With a forceful, slippery thrust her knuckles stretch you wide enough to nearly burst, and then she is through, your sphincter clamping down on her wrist as you pant and try to adjust to the mind-blowing fullness.
<</if>>
<br><br>
Groaning in pleasure you feel her fist shifting inside of you, clenching and unclenching, your hole stretched wide to accomodate her arm as she intimately works you like a puppet.<br>
<br>
Your heart pounds as the pleasure builds higher and higher until you can rise no further and your entire body shudders, clamping down on her intruding limb as you leak joy out of your <<getWordMyPenis $player>>.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
One finger, then another, slide into your hole, enough to test your growing skill while remaining pleasurable... VERY pleasurable as her fingertips curl deeper to begin massaging your prostate.
<<else>>
As slender as it is her finger is still enough to focus your attention as it slides into your still novice bum. A gasp turns to a moan as her finger curls towards your prostate, gently massaging it and sending waves of pleasure through your body as you surrender to this forbidden thrill.
<</if>>
<br><br>
"@@.npc_manager;Good girl. I like to call this the sissy button, because playing with it turns even the most reticent girls on to happy obedience. You seem particularly sensitive in here@@" she states, adding another finger to the mix, the added stretch only enhancing your pleasure as she continues to stroke your happy prostate. "@@.npc_manager;Oh, you really were in need of a milking, I do not think it will be much longer!@@"<br>
<br>
You can only moan your agreement with her assessment - gasping in analgasm as she pushes you over the edge barely noticing a fleeting contact against your <<getWordMyPenis $player>> before you ooze your excitement.
<</if>>
<br><br>
Laying face down as you catch your breath and recover you feel her withdrawal followed by a brief tug on your <<getWordMyPenis $player>> before she slides into your field of view holding a full condom.<br>
<br>
"@@.npc_manager;Here you go,@@" She states, bringing the condom to your lips. "@@.npc_manager;enjoy your desert!@@"<br>
<br>
The scent of your emission is strong, the condom almost to your lips...<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
[<<moveTo "event_work_lunch_assistance_5" "Slurp it up!" 60 "<<set $scene.drink_cum=true>>">>]<br>
[@@.link_locked;Pass up an opportunity to eat cum? Never!@@]
<<elseif setup.getTotalValue("submission") > 10>>
[<<moveTo "event_work_lunch_assistance_5" "Slurp it up!" 60 "<<set $scene.drink_cum=true>>">>]<br>
[@@.link_locked;As disgusting as the prospect is you are too obedient to refuse her offer.@@]
<<elseif setup.getTotalValue("cum") < 5>>
[<<moveTo "event_work_lunch_assistance_5" "Choke it down." 60 "<<set $scene.drink_cum=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_5" "Refuse the disgusting offer." 60 "<<set $scene.drink_cum=false>>">>]
<<else>>
[<<moveTo "event_work_lunch_assistance_5" "Swallow it." 60 "<<set $scene.drink_cum=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_5" "Try to decline." 60 "<<set $scene.drink_cum=false>>">>]
<</if>>
</div>/*#
#desc: manager feeds you your cum after lunch reward
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'cum' 8 'very' $SEEN_FRIEND>>
<<if $scene.drink_cum>>
<<set $player.timebased.horny = 10>>
<<applyExperience 'submission' 6 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 5 'very' $SEEN_FRIEND>>
<<set $player.timebased.horny = 0>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.drink_cum>>
Your lips part eagerly and obediently, slurping the thick salty contents out of the condom as your tongue reaches towards the tip in search of every last drop of your still-warm production.<br>
<br>
"@@.npc_manager;Good girl,@@" she states before tossing the drained condom in the trash and leaning away along with her rubber gloves.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
She gently slides the re-lubricated plug back into your hole before fixing your clothes and helping you back to your feet.
<<else>>
Giving your rear a final congratulatory squeeze she fixes your clothes and helps you back to your feet.
<</if>>
<br><br>
"@@.npc_manager;Well I hope that tides you over and keeps your mind clear for the afternoon, enjoy the rest of your lunch, I need to get back to work.@@"<br>
<br>
Curtseying in thanks you head for the door.
<<else>>
You shake your head and try to stand up only for her to firmly hold you down, one hand taking control of you by the hair while the other brings the opening of the condom to your lips.<br>
<br>
"@@.npc_manager;So resistant! Come on now, a proper sissy should be delighted at the prospect of cleaning up after herself!@@"<br>
<br>
Unable to resist you wrinkle your nose as the condom is pressed between your lips and its gooey contents are squeezed into your mouth. She waits until you have finished swallowing the bitter, salty sludge before tossing the condom and gloves away and allowing you to stand back up.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
Dismissively she hands you your plug, monitoring as you slide it back where it "belongs" before fixing your clothes and heading for the door.
<<else>>
Returning to her desk she barely even pays attention as you fix your clothes and scurry towards the door.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave her office." 60>>]
</div>[<<moveTo "room_office_lunchbreak_toilet_male" "Men's Bathroom" 60>>]
<<if $player.flags.fem_style.unisex != "">>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom" 60>>]
<</if>>/*#
#desc: office men's bathroom
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location = "Men's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
The men's room closest to your office on Floor 52. They are very, very clean. You think you could change your clothes in a stall if you want to, they look spacious enough.<br>
<br>
<<if setup.getTotalValue("makeup") > 0>>
<<if $player.flags.fem_style.makeup == "">>
[@@.link_locked;You do not think you are ready to put on makeup in the work bathroom.@@]
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Men Toilet on Floor 52">><<set $return_makeuproom="room_office_lunchbreak_toilet_male">><<set $makeuproom_image="./images/locations/company_toilet.png">><<set $return_makeuproomtext="Finished.">><<set $makeuproom_water=true>>'>>]
<</if>>
<br><br>
<</if>>
<<if $player.timebased.horny >= 25>>
[<<moveTo "event_work_bathroom_masturbate_1" "Setup in a private stall and masturbate">>]<br>
<<else>>
[@@.link_locked;You are not horny enough to masturbate right now.@@]<br>
<</if>>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office" 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: office women's bathroom
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location = "Women's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
The lady's restroom closest to your office on Floor 52. They are very, very clean. You think you could change your clothes in a stall if you want to, they look spacious enough.<br>
<br>
<<if setup.getTotalValue("makeup") > 0>>
<<if $player.flags.fem_style.makeup == "">>
[@@.link_locked;You do not think you are ready to put on makeup in the work bathroom@@]
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup' 0 '<<set $makeuproom="Women Toilet on Floor 52">><<set $return_makeuproom="room_office_lunchbreak_toilet_female">><<set $makeuproom_image="./images/locations/company_toilet.png">><<set $return_makeuproomtext="Finished.">><<set $makeuproom_water=true>>'>>]
<</if>>
<br><br>
<</if>>
<<if $player.timebased.horny >= 25>>
[<<moveTo "event_work_bathroom_masturbate_1" "Setup in a private stall and masturbate">>]
<<else>>
[@@.link_locked;You are not horny enough to masturbate right now.@@]
<</if>>
<br><br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office" 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
You are not going to leave the bathroom looking indecent.
<</if>>
</div>/*#
#desc: office lunchroom
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'Canteen'>>
<<if $roomchange==true>>
<<set $scene.number = random(1,10)>>
<</if>>
<<set _tmpTime = Math.round(random($scene.number,$scene.number*4)*60)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeinInventory("food")>>
You are in the canteen on the 50th floor. There are still many people around, but you already got some food.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office" 60>>]<br>
<<include workLunchbathroom>>
<<else>>
You enter Social Interaction Service Syndicate LTD's canteen on Floor 50. It's not the only canteen in this building, but the closest to your office.
<<if $scene.foodDelivery.done>>
You already fetched some food today, so you see no reason to stay in line once more.<br>
<br>
<<else>>
<<switch $scene.number>>
<<case 1 2>>
There are only a few people here in line for food. This should only take a couple of minutes.
<<case 3 4 5>>
There are some people in front of you. This looks like it will take at least 5 minutes, maybe more.
<<case 6 7 8>>
There are a lot of people in front of you. This could take 10 minutes, but you assume it will be even longer.
<<case 9 10>>
The canteen is filled to the bursting point with people. This might take longer then your lunch break if you're unlucky.
<</switch>>
<br><br>
[<<moveTo "room_office_lunchbreak_canteen_buyfood" "Wait in line for the food" _tmpTime>>]
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office" 60>>]<br>
<<include workLunchbathroom>>
<</if>>
</div>/*#
#desc: choose food to purchase at office lunchroom
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $scene.metCook = false>>
<<if !$player.flags.metCook>>
<<set $scene.metCook = true>>
<<set $player.flags.metCook = true>>
<<set $npc_cook.profile = true>>
<</if>>
<</if>>
<<set $player.location = 'Canteen'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png"
"./images/characters/npc_cook.png">>
<div id="invframe" class="scrolltext">
<<if $scene.metCook>>
You manage to approach the Nutritional Sustenance Distribution Operative. His augmented reality tag says <<=setup.getNpcName('npc_cook', 'formal')>>. That's a rather unusual name and it sounds strangely familiar. You're certain you've heard it before, but you just can't think where. It seems like <<=setup.getNpcName('npc_cook', 'first')>> caught you staring at him.<br>
<br>
"@@.npc_cook;Is there something I can help ya with <<=$npc_cook.call_name>>? There something on ma face? Come on <<=$npc_cook.call_name>>, I ain't got no time for all this, so what shall it be, yah? Sustenance, is that what yah want? Sustenance <<=$npc_cook.call_name>>? Food. Dinna. Tha grub. Tha nosh. Substance consumed to provide nutritional support for an organism, usually of tha plant or tha animal and contains tha essential nutrients, such as carbohydrates, fats, proteins, vitamins, an' minerals.@@"<br>
<br>
You nod timidly.<br>
<br>
"@@.npc_cook;Then select a something from the menu <<=$npc_cook.call_name>>, will yah? And make haste, tha nice lads and missies behind you might wanna grub as well, yah?@@"<br>
<br>
<<else>>
You manage to approach the Nutritional Sustenance Distribution Operative also known as <<=setup.getNpcName('npc_cook', 'first')>>.<br>
<br>
"@@.npc_cook;What shall it be today <<=$npc_cook.call_name>>?@@"<br>
<br>
<</if>>
<<printFoodList $player>>
</div>/*#
#desc: start to work having not delivered manager's lunch
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if setup.checkItemTypeinInventory("food")>>
<<if setup.checkItemInInventory($player.work.foodID)>>
<<set $scene.foodDelivery.right = true>>
<<incrementEmotion 'satisfaction' 'npc_manager' 2>>
<<deleteItem $player $now $player.work.foodID>>
<<else>>
<<set $scene.foodDelivery.right = false>>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemFromType("food")>>
<<deleteItem $player $now $scene.foodDelivery.foodItem>>
<<set $npc_manager.wrongfood+=1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.foodDelivery.outcome = "">>
<<set $scene.foodDelivery.noFood = false>>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<set _x = setup.addStress($player,1)>>
<</if>>
<<else>>
<<set $scene.foodDelivery.noFood = true>>
<<applyExperience 'bimbofication' 4 'little' $SEEN_FRIEND>>
<<set _x = setup.addStress($player,2)>>
<<set $npc_manager.nofood+=1>>
<<if $npc_manager.nofood == 2 || $npc_manager.nofood == 3>>
<<applyExperience 'bdsm' 4 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $scene.foodDelivery.done = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You are about to resume your work as you notice an angry looking <<=setup.getNpcName('npc_manager', 'formal')>> standing in the doorway to her office.
<<if ($now.getUTCHours()>=12&&($now.getUTCMinutes()>30))>>
First she looks at her watch, then back at you while tapping her food in a rhythm that's pretty much your heartbeat now. Looks like you've returned too late.<br>
<br>
<<if $scene.foodDelivery.noFood>>
"@@.npc_manager;<<=$player.first_name>>, where have you been? Your lunch time was over <<=((12-$now.getUTCHours())*60+($now.getUTCMinutes()-30))>> minutes ago! And all that time and you forgot my lunch?@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>>, where have you been? Your lunch time was over <<=((12-$now.getUTCHours())*60+($now.getUTCMinutes()-30))>> minutes ago! What is that in your hand anyway? It better be my lunch! I presume you got stuck in the canteen?@@"
<</if>>
<<else>>
<br><br>
"@@.npc_manager;<<=$player.first_name>>, have you forgotten about my food?@@"
<</if>>
<br><br>
<<if $scene.foodDelivery.noFood>>
You lower your head in shame and admit that you've neglected your duty to get her food from the canteen.<br>
<br>
"@@.npc_manager;Tsk. You can be such an ditz <<=$player.first_name>>.@@"<br>
<br>
<<if $player.flags.firstWorkDayDone>>
<<switch random(1,12)>>
<<case 1 2 3>>
"@@.npc_manager;You are acting like a brain-dead Bimbo. Maybe I should change your dress code to attire as one. Hmm... something for the todo list.@@"
<<case 4 5 6 7>>
"@@.npc_manager;Did not know you where aiming for the Bimbo Secretary Stereotype. If you keep it up I will just have to start treating you as such.@@"
<<case 8 9 10 11 12>>
"@@.npc_manager;If you keep behaving like this you may have to suffer the consequences.@@"
<</switch>>
<<else>>
"@@.npc_manager_dom;If you keep behaving like this you will have to suffer the consequences.@@"
<</if>>
<br><br>
/% TODOfuture: enhance this w/newdiet?%/
<<switch $npc_manager.nofood>>
<<case 1>>
After a quick scolding she seems to calm down a little bit.<br>
<br>
"@@.npc_manager;What am I ever going to do with you? This is part of your job. If you are unable to complete simple tasks like these how can I ever trust you with more important things? Keep this behaviour up and I will have to let you go ... or worse. And if this is your confused way to demand attention... there are other ways, I hunger for more than just... food, you know.@@"<br>
<br>
She disappears into her office leaving you trembling in her wake.
<<case 2 3>>
Her gaze narrows even further.<br>
<br>
"@@.npc_manager;Stand up, and bend over the desk. Perhaps a swift spanking will help you remember your duties in the future.@@"<br>
<br>
You start to move, but not quickly enough it would seem, and she grabs you with one hand and casually tosses you over the desk.<br>
<br>
<<printThought $player "Just how strong is she!?">><br>
<br>
Yanking your clothes down to reveal your bare bottom she lands a quick, hard *SMACK* with her hand causing you to yelp in suprised pain.<br>
<br>
"@@.npc_manager;Remember@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;To@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;Pick@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;Up@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;My@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;Lunch.@@"<br>
<br>
*SMACK*<br>
<br>
She rhythmically states, punctuating each word with a slap as she alternates cheeks until you are quite red.<br>
<br>
"@@.npc_manager;Hmmff.@@" She states in conclusion. "@@.npc_manager;Do take a lesson from this, if you continue to fail I will have to apply a more... severe punishment.@@"<br>
<br>
Turning on her heels she returns to her office leaving you to fix your clothes and gingerly sit back down in your chair.
<<default>>
She seems almost resigned after the initial scolding.<br>
<br>
"@@.npc_manager;So many failures. Sometimes I really fail to understand your thinking, but right now I am more interested in food than attempting to discipline you.@@"<br>
<br>
She passes you without a further word, presumably off to canteen herself.
<</switch>>
<<else>>
You hand her the food you picked up from the canteen and she opens the box to glance inside. Looking back up at you she adjusts her glasses.
<<if !$scene.foodDelivery.right>>
A single glance tells you that you've messed up somehow.<br>
<br>
"@@.npc_manager;Tell me <<=$player.first_name>>, does this look like <<getFood $player>>? Not really, does it? You are such an absent-minded ditz!@@"<br>
<br>
She drops the box into the trash bin and leaves for her office. You decide to not remind her that bin is for non organic waste only, deciding to empty it yourself later once she's gone.
<<else>>
Her mood seems to brighten a little bit.<br>
<br>
<<if ($now.getUTCHours()>=12&&($now.getUTCMinutes()>30))>>
"@@.npc_manager;Very good. I was getting hungry. The waiting time at the canteen is something you cannot overcome on your own. I have to find out if the high priority passes still exist.@@"
<<else>>
"@@.npc_manager;Very good. I was getting hungry. Please deliver this to my office as soon as possible in the future.@@"
<</if>>
She turns around and returns to her office, taking the food with her.
<</if>>
<</if>>
<br><br>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' "Start to work" 60 "<<set $scene.foodDelivery.punished = true>>">>]
</div>/*#
#desc: start afternoon work having delivered food to manager
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if !$scene.foodDelivery.done && !$scene.foodDelivery.punished>>
<<initRoom>>
<<moveTo 'room_office_sissy_secretary_work_afternoon_start_nofood'>>
<<elseif $npc_manager.stage > 2 || ($npc_manager.stage == 2 && $npc_manager.stagevalues[2].makeup && !$scene.first_makeup)>>
<<if !$scene.inspection_failed && !$player.work.nowWorking>>
<<initRoom>>
<<moveTo 'event_makeup_lunch_inspection'>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You sit at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. What will you do?<br>
<br>
<<include thoughts_work>>
[<<link "Check Work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if Math.round($player.timebased.fatigue) <= 50 and $player.timebased.horny <= $player.penis.erection>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Work hard" 1 "<<set $player.timebased.fatiguemulti = 1.25>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.mode = 2>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]<br>
<<else>>
<<if Math.round($player.timebased.fatigue) > 50 and $player.timebased.horny <= $player.penis.erection>>
[@@.link_locked;You're too exhausted to work hard@@]<br>
<<elseif Math.round($player.timebased.fatigue) <= 50 and $player.timebased.horny > $player.penis.erection>>
[@@.link_locked;You're too horny to concentrate enough for this kind of work@@]<br>
<<else>>
[@@.link_locked;Your head is too clouded with strange thoughts to concentrate@@]<br>
<</if>>
<</if>>
<<if Math.round($player.timebased.fatigue) <= 99 and $player.timebased.horny <=99 >>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Work normal" 1 "<<set $player.timebased.fatiguemulti = 1>><<set $player.timebased.stressmulti = 0.1>><<set $player.work.mode = 1>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]<br>
<<else>>
<<if Math.round($player.timebased.fatigue) > 99 and $player.timebased.horny <=99 >>
[@@.link_locked;You're too exhausted to work normal@@]<br>
<<elseif Math.round($player.timebased.fatigue) <= 99 and $player.timebased.horny > 99 >>
[@@.link_locked;You're too horny to work normal.@@]<br>
<<else>>
[@@.link_locked;You don't think you can work normal today.@@]<br>
<</if>>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Work sloppy" 1 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.05>><<set $player.work.mode = 0>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]<br>
<br>
<<include workMasturbationOptions>>
<br><br>
<<if $npc_ai.stage >=2 && $now.getUTCDay() == 5 && !$npc_ai.flags.missions.connection>>
<<if $scene.ranMission>>
[@@.link_locked;You already attempted to run a mission for <<=setup.getNpcName("npc_ai", "first")>> today, she does not appear to have anything else for you.@@]
<<else>>
[<<moveTo "event_ai_mission_voluntary" 'Hmm, there is a blinking icon, it looks like <<=setup.getNpcName("npc_ai", "first")>> has a mission for you.' 60 "<<set $workEventReturn = 'room_office_sissy_secretary_work_afternoon_start'>>">>]<br>
<</if>>
<<elseif $npc_ai.flags.missions.generic_missions > 2>>
<<if $scene.ranMission>>
[@@.link_locked;You already ran a mission for <<=setup.getNpcName("npc_ai", "first")>> today, she does not appear to have anything else for you.@@]
<<else>>
[<<moveTo "event_ai_mission_voluntary" 'Check if <<=setup.getNpcName("npc_ai", "first")>> has a mission for you.' 60 "<<set $workEventReturn = 'room_office_sissy_secretary_work_afternoon_start'>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: punished for delivering the wrong lunch multiple times
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $npc_manager.wrongfood == 1>>
<<set _x = setup.addStress($player, 5)>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $npc_manager.wrongfood == 1 || $npc_manager.stage < 2>>
You are almost at the door when she continues, her voice frigid, like ice daggers holding you in place.<br>
<br>
"@@.npc_manager;It may seem a simple thing but a PROPER secretary should pay attention to every detail in discharging her duties. Failing to remember a simple lunch order is thus a sign of a deeper failing and one that you will need to either remedy. If you fail I will punish you until you either break, or learn. Do I make myself clear, <<if $player.flags.fem_style.name != "">>Miss<<else>>Mr.<</if>> <<=$player.first_last>>?@@"<br>
<br>
You stammer out an agreement.<br>
<br>
"@@.npc_manager;Good. Dismissed.@@"<br>
<br>
You flee the room, heart pounding without so much as laying a finger upon you she has put the fear of God... or is that Goddess? into you.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>><<set $player.work.foodNumber = 0>>">>]
<<else>>
You are almost to the door out of the inner office when you are brought up short by the blood-freezing sound of <<=setup.getNpcName('npc_manager', 'formal')>> clearing her throat.<br>
<br>
"@@.npc_manager;You forgot my order again? No, no, this will not do. Fetching my lunch, my CORRECT lunch is one of your duties as my secretary and if you cannot properly discharge such duty... well, punishment is in order.@@"<br>
<br>
You turn around as she rises from her seat. "@@.npc_manager;Come, kneel.@@" She commands, pointing next to her desk.<br>
<br>
Walking nervously over you drop to your knees as she turns to retrieve something from a desk drawer. Initially blocked by her body she turns to present what looks like a pink dog dish, rotating it to show that it has been monogrammed with <<=$player.first_name>>.<br>
<br>
<<printThought $player "What! How long has she been planning this?">><br>
<br>
Smiling at your look of shock she dumps the contents of her lunch into the dish and then places it on the floor in front of you.<br>
<br>
"@@.npc_manager;What you brought me may well have been a fine meal, but it was not what I requested and thus... It. is. trash.@@" Sitting back down she stomps her foot into the middle of the dish, mashing it with her toe until it is unrecognisable mush. She raises her foot towards your face, scraps of food stuck to the sole. "@@.npc_manager_dom;Now, clean me off.@@"<br>
<br>
[<<moveTo "event_manager_food_punishment_obey" "Lick her feet clean as ordered." 60>>]<br>
[<<moveTo "event_manager_food_punishment_disobey" "Shake your head and refuse the demeaning command." 60>>]
<</if>>
</div>/*#
#desc: wrong food punishment, lick her shoes and eat
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<if setup.getTotalValue('foot')>2>>
<<applyExperience 'foot' 8 'normal' $SEEN_FRIEND>>
<<else>>
<<setThreshold 'foot' 'foodplay_manager_food' 'accept_punishment' true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Trembling slightly under her dominantly focused gaze you extend your tongue and lean forward, licking the bits of food off of the bottom of her shoe as she gives commentary.<br>
<br>
"@@.npc_manager;That's right, get it all... now the heel, no, all the way. Yes, suck on it.@@"<br>
<br>
Though you blush at her lewd words you follow along with each command so that when she finally pulls her clean foot away you almost feel... disappointed?<br>
<br>
"@@.npc_manager;Very good, now eat up, we would not want this meal to go to waste...@@"<br>
<br>
Properly chagrined of your earlier defiance you reach down only for her to stop you. "@@.npc_manager;Ah, ah, no hands. Having failed in your duties as my secretary I daresay you are at best a cute pet, and pets do not have hands, do they?@@"<br>
<br>
You shake your head as she smiles, placing your hands behind your back and leaning down towards the food bowl. Under her careful supervision you eat all of the mashed meal, even going so far as to lick the bowl clean before she finally nods in satisfaction.<br>
<br>
"@@.npc_manager;Good, well I am glad SOMEONE got to enjoy that meal. Let it be a lesson for next time so that you remember my order properly, hmm? Now get back to work.@@"<br>
<br>
Rising to your feet you quickly curtsey and apologise before rushing out of the room and back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>><<set $player.work.foodNumber = 0>>">>]
</div>/*#
#desc: wrong food punishment, forced to eat
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $fetish.piss>>
<<if !setup.hasThreshold('piss', 'foodplay_manager_piss', 'decline_punishment')>>
<<setThreshold 'piss' 'foodplay_manager_piss' 'decline_punishment' true>>
<</if>>
<<applyExperience 'piss' 8 'very' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<if setup.getTotalValue('foot')>2>>
<<applyExperience 'foot' 8 'very' $SEEN_FRIEND>>
<<else>>
<<setThreshold 'foot' 'foodplay_manager_food' 'accept_punishment' true>>
<</if>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<if $player.makeup.template != "">>
<<set $player.makeup.messed = Math.min(100,$player.makeup.messed+25)>>
<</if>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Incensed at the suggestion that you would eat tromped-on food from a dog bowl you tighten your lips and shake your head. With lightning speed <<=setup.getNpcName('npc_manager', 'formal')>> is on her feet, one hand gripping your hair glaring down with anger for a brief moment she forces you face-first down into the bowl.<br>
<br>
"@@.npc_manager;I went to all that trouble to prepare your lunch, now you need to eat it!@@"<br>
<br>
<<if $fetish.piss>>
Flailing slightly you try to struggle against her grasp only for her to pull you back up. "@@.npc_manager;Hmm, is something the matter? Is it too dry for your liking? Oh, let me take care of that for you.@@"<br>
<br>
One hand still holding your hair like a vice she reaches down to raise her skirt and lower her panties. Looking down at you with a cruel smile she aims a stream of <<getWordPiss $player>> into the bowl, unleashing just enough to give it all a nice soak before fixing her panties and shoving you right back down.<br>
<br>
"@@.npc_manager;Come on, sissy bitch, eat it all up! Specially prepared yummy yummy!@@"<br>
<br>
Face down in the bowl you have little choice but to start eating, the bitter, acrid taste of her urine overpowering almost all flavour of the underlying smashed lunch. Coughing and gagging you manage to force yourself to eat it all, but she doesn't let you up until you have literally licked every drop from the bowl to leave it polished and clean.
<<else>>
Her hand on the back of your head might as well be a steel beam for how much you are able to struggle against it. Faced with no real choice you begin eating, choking down the ruined meal a bite at a time.<br>
<br>
"@@.npc_manager;All of it, sissy, I want that bowl tongue-polished and clean of every morsel.@@"<br>
<br>
Pushed down even further she moves your face around like you were a sponge, your extended tongue swirling around the bowl to fulfill her command.
<</if>>
<br><br>
Finally releasing her hold on your head she leans back in her chair and raises her foot once again.<br>
<br>
"@@.npc_manager;Ah, ah, do not forget desert.@@"<br>
<br>
Chagrined you wince but obey, licking her shoe clean.<br>
<br>
"@@.npc_manager;Back to work now, sissy - next time you screw up my order I may not be so lenient.@@"<br>
<br>
A bit scared as to what that might entail you hurry back to your workstation.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 1 "<<set $player.work.foodID = ''>><<set $player.work.foodNumber = 0>>">>]
</div><<if !$scene.foodDelivery.hasOwnProperty("outcome") || $scene.foodDelivery.outcome == "">>
<<if setup.checkItemInInventory($player.work.foodID)>>
<<set $scene.foodDelivery.right = true>>
<<incrementEmotion 'satisfaction' 'npc_manager' 2>>
<<deleteItem $player $now $player.work.foodID>>
<<set $scene.foodDelivery.outcome = "right">>
<<elseif setup.getFirstItemFromType("food") != "">>
<<set $scene.foodDelivery.right = false>>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemFromType("food")>>
<<deleteItem $player $now $scene.foodDelivery.foodItem>>
<<setThreshold "bimbofication" "ditzy_secretary" "food" true>>
<<applyExperience 'bimbofication' 4 'almost' $SEEN_FRIEND>>
<<set $npc_manager.wrongfood+=1>>
<<if $player.flags.firstWorkDayDone && (_rnd > Math.max(0,(9-($npc_manager.wrongfood+$npc_manager.anger))))>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.foodDelivery.outcome = "drop">>
<<if $npc_manager.anger>=5>>
<<decrementEmotion 'anger' 'npc_manager' 5>>
<<set $scene.foodDelivery.outcome = "disciplinaryMeasure">>
<</if>>
<<else>>
<<set $scene.foodDelivery.outcome = "eat">>
<</if>>
<<else>>
<<set $scene.foodDelivery.outcome = "">>
<</if>>
<<set $scene.foodDelivery.done = true>>
<</if>>/*#
#desc: deliver lunch to manager
#status: FINISHED 0.4.0.0
#*/
<<set _rnd = random(0,10)>>
<<if $roomchange == true>>
<<include checkFoodDelivery>>
<<set $scene.erection = ($player.timebased.horny>$player.penis.erection)>>
<<if $scene.erection>>
<<set $npc_manager.stagevalues[$npc_manager.stage].erectionatwork += 1>>
<<applyExperience 'humiliation' 10 'little' $SEEN_FRIEND>>
<</if>>
<<if $scene.foodDelivery.right && $scene.foodDelivery.outcome != "disciplinaryMeasure" && $npc_manager.stage >=2 && $player.work.foodID == 'food_sushi'>>
<<set $player.timebased.horny += 30>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 5 'almost' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 4 'almost' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You politely knock on the door as instructed. You wait a few seconds before you hear a response from the inside.<br>
<br>
"@@.npc_manager;You may enter, <<=$player.first_name>>.@@"<br>
<br>
You open the door and deliver the food you got from the canteen to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<if $scene.foodDelivery.right>>
Her mood seems to brighten when she sees what you've brought freshly prepared from the kitchen.<br>
<br>
"@@.npc_manager;Very good. I was about to starve.@@"<br>
<br>
<<if $scene.erection>>
<<if setup.getItemFromType("cage") == "">>
As you approach her desk her gaze drifts down your body, to alight on the unmistakable bulge your erection is making in your pants.<br>
<br>
"@@.npc_manager;Oh my... that is... well that is far from appropriate for the workplace.@@" She states, still staring as you place your lunch on her desk.<br>
<br>
"@@.npc_manager;You should figure out a... solution for that sort of thing in the future, otherwise I will have to take measures to ensure you remain under control and able to perform your duties.@@"<br>
<br>
Hunching over to conceal your shame you hurry back to your desk.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, that was so embarrassing... but what can I do about it?">>
<<else>>
As you approach her desk her gaze drifts down your body to alight between your legs. Though you are caged your arousal has it pushed out, tenting your clothes as obviously as any proper hard-on you've ever had.<br>
<br>
"@@.npc_manager;My, my... now I know you are caged and yet here you appear like... that. I advise you to find some way to prevent this from happening in the future... lest it be become necessary to deploy even more extreme measures...@@"<br>
<br>
Nervously you nod and ready your retreat, fearful of what she would even consider "extreme."
<</if>>
<br><br>
<</if>>
<<else>>
Her mood worsens when she sees what you have for her. It appears you have messed up her order.<br>
<br>
<<if $scene.foodDelivery.outcome == "eat">>
"@@.npc_manager;Oh well. At least I have something to eat.@@"<br>
<br>
<<if !$player.flags.firstWorkDayDone>>
"@@.npc_manager;But you should really pay more attention to what I say <<=$player.first_name>>. Starting tomorrow I will not be nearly as forgiving as I am today, since today is your first day of work up here. Oh well, we are going through the disciplinary measures this evening anyway, I might just bring this up again then.@@"
<<else>>
<<if $npc_manager.wrongfood<3>>
"@@.npc_manager;But you should really pay more attention to what I say in the future, <<=$player.first_name>>.@@"
<<elseif $npc_manager.wrongfood<5>>
"@@.npc_manager;You sure are a ditz with your head in the clouds <<=$player.first_name>>. Sometimes I am not sure what exactly is going on in that head of yours.@@"
<<else>>
"@@.npc_manager;Can you at least try to focus on your tasks you Bimbo?@@"
<</if>>
<</if>>
<br><br>
<<elseif $scene.foodDelivery.outcome == "drop">>
"@@.npc_manager_dom;Mr. <<=$player.last_name>>. What is the meaning of this!? Is this supposed to be a joke?@@"<br>
<br>
She tilts the plate with the food and lets it slide right into the trash bin.<br>
<br>
"@@.npc_manager;This level of discipline is not acceptable <<=$player.first_name>>. Leave, before I lose my temper.@@"<br>
<br>
<<elseif $scene.foodDelivery.outcome == "disciplinaryMeasure">>
"@@.npc_manager_dom;Mr. <<=$player.last_name>>. What is the meaning of this!? Is this supposed to be a joke?@@"<br>
<br>
She looks at the food with disgust, but not due it badly done. No, as usual, the culinarian's trade is on spot as usual. No, this stare of repulsion is targeting your incompetence alone, and only that. A devilish grin on her face indicates, that she might have something for you in store. You try your best to slowly back away, out of the office.<br>
<br>
<</if>>
<</if>>
<<if $scene.foodDelivery.right && $scene.foodDelivery.outcome != "disciplinaryMeasure">>
<<if $npc_manager.stage >=2 && $player.work.foodID == 'food_sushi'>>
She looks up at you with a crafty smile as she opens up her lunch.<br>
<br>
"@@.npc_manager;Actually, would you be a dear and stick around to help me out with lunch? But first, I will need you to strip...@@"<br>
<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Get naked as instructed." 60 "<<set $scene.strip=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Excuse yourself." 60 "<<set $scene.strip=false>>">>]
<<else>>
<<if $npc_manager.stage > 2 || ($npc_manager.stage == 2 && $npc_manager.stagevalues[2].makeup)>>
<<if $player.makeup.messed >=75>>
You turn to go but <<=setup.getNpcName('npc_manager', 'formal')>> looks at you and shakes her head. "@@.npc_manager;What can I say but... you look like a mess! As my personal SISSY secretary you should take pride in your appearance not show up looking like a used whore... You should head straight for the bathroom to re-do your whole makeup before anyone else sees the disaster zone that is your face!@@"
<<elseif $player.makeup.messed >= 50>>
As you turn to go her gaze moves towards your face and her brow furrows. "@@.npc_manager;What were you doing this morning? Your makeup is looking quite bad, you should attend to it at once!@@"
<<elseif $player.makeup.messed >= 25>>
Her keen eyes scan over your face and she shakes her head. "@@.npc_manager;Tut tut, some might not notice the signs but I expect my SISSY secretary to be perfectly made up at all times, you should do some touch up before things start getting bad.@@"
<<elseif setup.getCurrentMakeup($player) == "">>
Her brow furrows. "@@.npc_manager;Did you... remove your makeup?@@" She shakes her head. "@@.npc_manager;I hope that is merely a step towards refreshing your look. As I have explained to you before I expect you to be properly made up and feminine at all times.@@"
<<else>>
She nods in approval. "@@.npc_manager;Keeping on top of your makeup, well done.@@"
<</if>>
<br><br>
You nod hurriedly as she turns to her meal and you excuse yourself from her office.
<<else>>
Focused on her meal she dismisses you with a wave.
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1 "<<set $player.work.foodID = ''>><<set $player.work.foodNumber = 0>>">>]
<</if>>
<<elseif !$player.flags.firstWorkDayDone>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1 "<<set $player.work.foodID = ''>><<set $player.work.foodNumber = 0>>">>]
<<else>>
You turn to leave the office.<br>
<br>
[<<moveTo "event_manager_food_punishment" "Slowly reach for the doorhandle. She can only see things that move fast... you hope." 60 "<<set $player.work.foodID = ''>>">>]
<</if>>
</div>/*#
#desc: post-lunch makeup inspection
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.wtf = true>>
<<set $scene.inspection_failed = false>>
<<set $scene.makeup = setup.getCurrentMakeup($player)>>
<<switch $scene.makeup>>
<<case "">>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<set $scene.inspection_failed = true>>
<<case "nomakeupmakeup">>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.inspection_failed = true>>
<<case "moviestar">>
<<set $npc_manager.affection += 1>>
<<case "ultimatebimbo">>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.inspection_failed = true>>
<<case "sissy_doll">>
<<set $npc_manager.affection +=1>>
<<case "normalmakeup">>
<<set $npc_manager.affection +=1>>
<<case "expertmakeup">>
<<set $npc_manager.affection +=1>>
<</switch>>
<<if $player.makeup.messed >=75>>
<<set $scene.inspection_failed = true>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<elseif $player.makeup.messed >= 50>>
<<set $scene.inspection_failed = true>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<elseif $player.makeup.messed >= 25>>
<<set $scene.inspection_failed = true>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if $scene.inspection_failed>>
<<set $npc_manager.flags.lunch_makeup_fail +=1>>
<<else>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<set $npc_manager.flags.lunch_makeup_pass +=1>>
<</if>>
<<if $npc_manager.flags.lunch_makeup_fail == 2>>
<<applyExperience 'bdsm' 4 'very' $SEEN_FRIEND>>
<<elseif $npc_manager.flags.lunch_makeup_fail >= 3>>
<<set $player.makeup.permanent = 'sissy_doll'>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = ''>>
<</if>>
<<set $scene.first = !$npc_manager.flags.first_makeup_inspection>>
<<if $scene.first>>
<<set $npc_manager.flags.first_makeup_inspection = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You've sat back down at your desk and thinking about what to work on next when <<=setup.getNpcName('npc_manager', 'formal')>> strides out of her inner sanctum.<br>
<br>
"@@.npc_manager;Hello, my dear, I just wanted to check in and see how your lovely new makeup is holding up...@@"<br>
<br>
<<if $player.makeup.permanent != "" && $player.makeup.template == "">>
She smiles at you. "@@.npc_manager;Of course, silly me, you selected a permanent option so I hardly need have worried. Still, if you ever decide to change things up know that I will, as always, be keeping a close eye on you to make sure you are living up to all of my lofty expectations.@@"<br>
<br>
<<switch $player.makeup.permanent>>
<<case "nomakeupmakeup">>
"@@.npc_manager;That said... this template is quite insufficient; makeup should push you beyond your natural looks, not merely blend in.@@"
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll">>
"@@.npc_manager;A superb choice of templates, by the way, utterly feminine, just the way I like it.@@"
<<case "ultimatebimbo">>
"@@.npc_manager;That said this template is... well, there is no getting around it. You look like a whore, do please consider changing to something more work-appropriate.@@"
<<default>>
ERROR unknown makeup permanent template: <<=$player.makeup.permanent>>
<</switch>>
<<else>>
<<if $player.makeup.messed >=75>>
"@@.npc_manager;I could comment on the style of your makeup but really... what would be the point when it is so utterly ruined? I have not the slightest idea how you could make such a mess since this morning but know that I do not wish to ever see you like this again, do I make myself clear?@@"<br>
<br>
You nod quickly and nervously, suppressing fearful tears that would only further streak your cheeks.
<<else>>
<<if $player.makeup.messed >= 25>>
<<switch $player.makeup.template>>
<<case "nomakeupmakeup">>
<<if $scene.bonus_gift == 'makeup_nomakeup'>>
"@@.npc_manager;I suppose it was too much to expect that you would have figured out "proper" makeup since this morning... oh well, see that you have things sorted out by the next time you show up to work.@@"
<<else>>
"@@.npc_manager;To go to that trouble to make it look like you are not wearing makeup... and then to ruin it but leaving it to smudge? I honestly do not know what you could have been thinking, but it is a failure on multiple levels.@@"
<</if>>
<<case "normalmakeup">>
"@@.npc_manager;I suppose that is supposed to be properly feminine makeup but it is so mussed I honestly cannot tell. You really should have stayed on top of maintenance.@@"
<<case "expertmakeup" "moviestar" "sissy_doll">>
"@@.npc_manager;Such effort on a daring, feminine look, utterly wasted due to not keeping up with maintenance, a pity.@@"
<<case "ultimatebimbo">>
"@@.npc_manager;The full bimbo, and ruined to boot... this is not the look of a SISSY secretary but of a back-alley whore. Do better unless you wish to end your employment as the former and pursue a career as the latter.@@"
<<default>>
ERROR unknown makeup.template: <<=$player.makeup.template>>
<</switch>>
<<else>>
<<switch $player.makeup.template>>
<<case "">>
She peers at you intently, as if searching for the slightest hint of makeup, of which you are wearing none.<br>
<br>
"@@.npc_manager;Really? No makeup so soon? I recommend adjusting your attitude and showing up to work in the morning with a more proper look and a rededication to your duties.@@"
<<case "nomakeupmakeup">>
<<if $scene.bonus_gift == 'makeup_nomakeup'>>
"@@.npc_manager;I suppose it was too much to expect that you would have figured out "proper" makeup since this morning... oh well, see that you have things sorted out by the next time you show up to work.@@"
<<else>>
She stares at your subtle makeup for almost a minute before her mouth turns downward into a disapproving frown.<br>
<br>
"@@.npc_manager;On the one hand I could congratulate you on doing an effectively subtle job of technically wearing makeup without actually "wearing makeup." But that was not your assignment. Certainly you look a touch cuter than your natural adorableness but you are a SISSY secretary; and that means the full extent of your feminine beauty should be on display. No, this is quite unsatisfactory and I expect you to do much better at your next inspection.@@"
<</if>>
<<case "normalmakeup" "expertmakeup" "moviestar">>
"@@.npc_manager;Perfect! Your makeup is pristine and feminine, just as I instructed.@@"
<<case "ultimatebimbo">>
"@@.npc_manager;I know I told you to wear feminine makeup but this... no, this is just too much, makeup should be applied with care and a brush, not a trowel.@@"
<<case "sissy_doll">>
"@@.npc_manager;You know, at first, I thought this look would be a bit much but... I will be honest, it is somewhat growing on me, and good job keeping it in proper shape.@@"
<<default>>
ERROR unknown makeup.template: <<=$player.makeup.template>>
<</switch>>
<</if>>
<</if>>
<</if>>
<br><br>
<<if $scene.inspection_failed>>
"@@.npc_manager;This being your first day I will let you off with a warning but, in the future, well... you know by now that disciplinary measures are the proper way to address performance failures.@@"
<<else>>
"@@.npc_manager;Keep up the good work. I know keeping on top of makeup can be a challenge for a busy secretary but, well... performance failures WILL be met with appropriate disciplinary action.@@"
<</if>>
<<else>>
<<if $scene.inspection_failed>>
Surprising you with her appearance <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner sanctum looking more than a little cross, her gaze fixated on your face or, more accurately your <<if $scene.makeup == "">>lack of <</if>>makeup.<br>
<br>
<<if $player.makeup.messed >= 75>>
"@@.npc_manager;I could comment on the style of your makeup but really... what would be the point when it is so utterly ruined? I have not the slightest idea how you could make such a mess since this morning but know that I do not wish to ever see you like this again, do I make myself clear?@@"<br>
<br>
You nod quickly and nervously, suppressing fearful tears that would only further streak your cheeks.
<<else>>
<<switch $scene.makeup>>
<<case "">>
She peers at you intently, as if searching for the slightest hint of makeup, of which you are wearing none.<br>
<br>
"@@.npc_manager;Really? No makeup? You are supposed to use your lunchtime to FIX your makeup, not remove it entirely!@@"
<<case "nomakeupmakeup">>
She frowns slightly. "@@.npc_manager;Did you think this "no makeup" makeup would act as some sort of loophole? I am sorry, my dear, but things do not work that way. Your makeup is to fully bring out your feminine features and this, well... it is hardly sufficient.@@"
<<case "normalmakeup">>
She smiles "@@.npc_manager;you continue to to wear the right sort of makeup, good job... if only you could have kept on top of maintenance!@@"
<<case "expertmakeup">>
"@@.npc_manager;Hmm, interesting makeup choice. A bit distracting for my taste but it suits you well enough so I have no major objection.@@"
<<case "moviestar">>
"@@.npc_manager;Perhaps this choice of makeup is a bit much? Certainly it is quite impressive but, well... if it is too complicated for you to keep looking good you would be better served with something simpler.@@"
<<case "ultimatebimbo">>
She shakes her head. "@@.npc_manager;I am sorry, but this sort of makeup well... it is distraction, and not the sort of impression that is optimal for a SISSY secretary to display.@@"
<<case "sissy_doll">>
"@@.npc_manager;You know, I do so delight in looking upon you as my sweet, sissy doll... If only you could maintain things properly.@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<br><br>
<<if $player.makeup.messed >= 50>>
"@@.npc_manager;Your style choice be what it may... you really need to take better care of yourself. Your face is all but a wreck right now; that should have been your second priority for lunch. After delivering my food, of course.@@"
<<elseif $player.makeup.messed >= 25>>
She shakes her head "@@.npc_manager;some might consider this level of decay alright for late afternoon but I hold to a higher standard. You should have fixed your makeup during lunch, as slight as the damage may be this does not meet the high bar I expect my SISSY secretary to meet.@@"
<<else>>
"@@.npc_manager;On the upside at least things are in good shape but, well... is proper application of the wrong thing really something to be applauded?@@"
<</if>>
<</if>>
<br><br>
<<if $npc_manager.flags.lunch_makeup_fail == 1>>
"@@.npc_manager;This being your first failure, and being that I have quite the busy afternoon ahead of me, I will take it easy on you and merely let you off with a warning.@@"<br>
<br>
Her gaze narrows as she is suddenly looming over you and the room seems to momentarily darken. "@@.npc_manager_dom;Do NOT test my charity and fail me again.@@"
<<elseif $npc_manager.flags.lunch_makeup_fail == 2>>
"@@.npc_manager;Another failure...@@" she shakes her head. "@@.npc_manager;In a way perhaps this is my own fault... if I had treated you more firmly at the moment of your first mistake this could have been prevented... As it is well, I suppose we shall have to make up for lost time.@@"<br>
<br>
In a blur she grabs you by the hair and spins you around, landing a quick flurry of blows to your bottom that has you yelping in pain as your already damaged makeup becomes tear-streaked.<br>
<br>
"@@.npc_manager;Pathetic, now look at yourself!@@" She states after she has finished turning your bottom red right through your clothing. "@@.npc_manager;There is no way you can finish off your shift looking like... that. Since you insist on acting the part of the forgetful bimbo there is only one thing for it. You stay here while I call in an expert.@@" <<=setup.getNpcName('npc_manager', 'formal')>> disappears back into her office as you gingerly sit down to wait, your bottom quite sore from her swift punishment.<br>
<br>
Catching your breath you do not have long to wait before <<=setup.getNpcName('npc_barista', 'nickname')>> comes bouncing into the room with a wide grin and a makeup kit in one hand.<br>
<br>
"@@.npc_barista;Hiya! Hoo-boy, you do need some work, I hope you at least had some fun getting to that state!@@"<br>
<br>
You shake your head but <<=setup.getNpcName('npc_barista', 'nickname')>> is barely paying attention to you as she sets out her things and starts mixing up makeup remover.
<<elseif $npc_manager.flags.lunch_makeup_fail == 3>>
She frowns and shakes her head. "@@.npc_manager;Again you fail to maintain proper makeup into the afternoon...@@"<br>
<br>
<<if $player.flags.fem_style.makeup == "forced">>
You recognise the familiar permanent makeup-applying mask in her hand as she approaches, you consider fleeing but she is upon you before you can even more.<br>
<br>
"@@.npc_manager;You know this could have been permanent the first time now... well, maybe the second time's the charm, hmm?@@" She brings the mask to your face, pressing it tight as the mouth insert swells to silence you as the nanobots set to work on your skin.
<<else>>
As she approaches you see what looks like a featureless mask in her hand. Before you can object she is placing the mask over your face, a pad fitting between your lips and instantly swelling to act as a gag as the entire contrasting presses tight against your flesh.
<</if>>
You feel a warm tingling across your face, just enough to be painful yet you cannot so much as flinch away from the enveloping mask as it remains securely sealed to your face, blinding you and silencing your screams.<br>
<br>
The mask pulled away after perhaps a minute or two a mirror is held in front of your face allowing you to gaze upon your "new" features - your face now looking like that of a cute porcelain doll.<br>
<br>
"@@.npc_manager;There, that should solve your issues, permanently...@@"<br>
<br>
With a parting smirk she stalks back to her inner office leaving you with your new doll-like appearance to return to work.
<<else>>
<<if $player.makeup.permanent != "" && !($player.makeup.template != "" && $player.makeup.template == $player.makeup.permanent)>>
"@@.npc_manager;Failure, again? I do not understand why you keep spending money to undo the permanent solution to your problem while simultaneously failing to keep on top of your responsibilities.@@"
<<else>>
"@@.npc_manager;I give you a solution that would make this whole "makeup task" all but trivial and yet you go out of your way to do the wrong thing... I confess sometimes I quite fail to understand the minds of sissies. Would it not be so much easier to just be obedient?@@"
<</if>>
<br><br>
She fetches the now-familiar makeup applying mask and approaches you.<br>
<br>
"@@.npc_manager;No matter. I do so enjoy looking upon my sweet doll... if only her behaviour could better match her sweet demeanour.@@"<br>
<br>
There is no resisting her grasp as <<=setup.getNpcName('npc_manager', 'formal')>> presses the mask over your face, the familiar burning sensation applying the permanent doll-face makeup to you once more.
<</if>>
<<else>>
<<set $player.work.nowWorking = true>>
<<set $player.work.startTime = $now>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary_work_afternoon_start">>
<</if>>
<</if>>
<br><br>
<<if ($npc_manager.flags.lunch_makeup_fail >= 2) && ($scene.inspection_failed)>>
[<<moveTo 'event_makeup_lunch_fail_bimbo' 'Sit still.' 600>>]
<<else>>
She returns to her office leaving you to start your afternoon.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start Working." 0 "<<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]
<</if>>
</div>/*#
#desc: post-lunch makeup punishment, get bimbo makeup from npc_barista
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = 'ultimatebimbo'>>
<<setThreshold "feminization" "voluntary_path_feminization" "bimbo_makeup" true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_barista.png">>
<div id="invframe" class="scrolltext">
Huming happily to herself <<=setup.getNpcName('npc_barista', 'nickname')>> swiftly removes your ruined makeup and starts applying a fresh coat fast and heavy. It feels weird, like you're developing several extra layers of skin as she cakes things on and then sets to painting.<br>
<br>
You're a bit worried as to what you're about to face as she puts on the final touches. Even your eyelashes feel heavy thanks to her adding on some extensions. She grins wide before holding up a mirror.<br>
<br>
"@@.npc_barista;Ta-da! Like, wow, you look so hawt this way!@@"<br>
<br>
You gawk at the bimbo slut looking back at you from the other side of the mirror. Your every feature has been exaggerated for peak sexuality resulting in a look both impressive and quite artificial.<br>
<br>
<<if def $player.makeup.unlocked["ultimatebimbo"] && $player.makeup.unlocked["ultimatebimbo"].unlocked>>
"@@.npc_barista;Well, I gotta, like, get back to the cafe, I'll see ya later, sexy!@@"
<<else>>
"@@.npc_barista;Well, I gotta, like, get back to the cafe, but if you ever wanna learn to do this on your own just let me know!@@"
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start Working." 0 "<<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]
</div>/*#
#desc: manager leaves her office for a meeting
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're working away per usual when <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner sanctum.<br>
<br>
"@@.npc_manager;My presence is required for a... meeting, I should be back in half an hour or so. Stay behaved!@@"<br>
<br>
She continues past and out of the office without waiting for your acknowledgement.<br>
<br>
<<printThought $player "Huh, I wonder what that was about?">><br>
<br>
[<<moveTo "event_manager_out_of_office_return" "Continue working." 1800>>]<br>
[<<moveTo "event_manager_out_of_office_1" "Sneak into her office." 60>>]
</div>/*#
#desc: try to sneak into manager's office while she is away
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.office_unlocked>>
You check the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>>. Initially locked <<=setup.getNpcName('npc_ai', 'first')>> appears and graces you with a nod before there is a soft click and the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner sanctum swings open.<br>
<br>
[<<moveTo "event_manager_out_of_office_return" "This was a bad idea, lock the door and go back to work." 1740>>]<br>
[<<moveTo "event_manager_out_of_office_root" "Time to explore..." 60 "<<set $scene.timeremaining=1680>>">>]
<<else>>
You check the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office but it is quite securely locked.<br>
<br>
<<printThought $player "Dang... well, I probably just would have gotten into trouble anyway.">><br>
<br>
[<<moveTo "event_manager_out_of_office_return" "Continue working." 1800>>]<br>
<</if>>
</div>/*#
#desc: alone in manager's office
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<set _mod = 1+(setup.getTotalValue("bimbofication")-setup.getTotalValue("smart"))/20>>
<<set $scene.timeguess = _mod*$scene.timeremaining/60>>
<<elseif setup.getTotalValue("smart") >= 10>>
<<set $scene.timeguess = $scene.timeremaining/60>>
<<else>>
<<set _randomMod = random(20)-10>>
<<set $scene.timeguess = _randomMod *.05 * $scene.timeremaining/60>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
You look around <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. Large and impressive it seems strangely empty without her powerful presence.<br>
<br>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<printThought $player "I hope I, like don't get caught? I probably have like <<=$scene.timeguess>> minutes until she returns?">>
<<elseif setup.getTotalValue("smart") >= 10>>
<<printThought $player "I should be careful not to get caught. I think I have about <<=$scene.timeguess>> minutes until she returns but I probably shouldn't cut it too close...">>
<<else>>
<<printThought $player "I should be mindful of the time, I figure she'll be back in about <<=$scene.timeguess>> minutes?">>
<</if>>
<br><br>
[<<moveTo "event_manager_out_of_office_wardrobe" "Search her wardrobe." 600 "<<set $scene.timeremaining-=600>>">>]<br>
[<<moveTo "event_manager_out_of_office_desk" "Search her desk." 300 "<<set $scene.timeremaining-=300>>">>]<br>
</div>/*#
#desc: alone in manager's office, search her wardrobe
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/TODO_manager_wardrobe.png">>
<div id="invframe" class="scrolltext">
You open up <<=ps(setup.getNpcName('npc_manager', 'formal'))>> wardrobe to find close to a dozen matching outfits in the style of her normal work attire, as well as a few dresser and fetishistic options. Each dress has below it a matching pair of shoes, there are also a number of drawers.<br>
<br>
<<if currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task') && !setup.checkItemOwned('manager_dress')>>
<<printThought $player 'Hmm, taking one of her outfits would certainly be the most "authentic" options... but do I dare?'>><br>
<br>
<</if>>
<<if !setup.checkItemOwned('manager_dress')>>
[<<moveTo "event_manager_out_of_office_wardrobe_dress" "Pilfer one of her dresses. She has so many she probably won't notice..." 120 "<<set $scene.timeremaining-=120>>">>]<br>
<<else>>
[@@.link_locked;I already have a dress like hers, and anything else she'd surely notice it was missing.@@]
<</if>>
[<<moveTo "event_manager_out_of_office_wardrobe_drawers" "Search the drawers" 300 "<<set $scene.timeremaining-=300>>">>]
[<<moveTo "event_manager_out_of_office_root" "Close the wardrobe and return to office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, search drawers
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/TODO_manager_wardrobe.png">>
<div id="invframe" class="scrolltext">
You search through the drawers of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> wardrobe. Some are locked and those that are not contain nothing of particular interest.<br>
<br>
[<<moveTo "event_manager_out_of_office_wardrobe" "Back" 60 "<<set $scene.timeremaining-=60>>">>]
[<<moveTo "event_manager_out_of_office_root" "Look at something else in the office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, steal one of her dresses
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<addItem 'manager_dress'>>
<<addItem 'manager_heels'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/TODO_manager_wardrobe.png">>
<div id="invframe" class="scrolltext">
Taking a dress at random you also snag a matching pair of heels, bundling them both up.<br>
<br>
<<printThought $player "I should get back to my desk before I get caught...">><br>
<br>
[<<moveTo "event_manager_out_of_office_check" "Back to your desk." 60 "<<set $scene.timeremaining-=60>>">>]
[<<moveTo "event_manager_out_of_office_root" "Continue exploring her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, search her wardrobe
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/TODO_manager_desk.png">>
<div id="invframe" class="scrolltext">
You look through <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desk. In the drawers you find a lack of any sort of office supplies, but plenty of paddles, nipple clamps, dildos, butt plugs and other assorted accoutrement.<br>
<br>
<<if currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task') && !setup.checkItemOwned('manager_paddle')>>
<<printThought $player 'One of her "For SISSY secretary use only" paddles would surely help make my mimicry of her more authentic...'>><br>
<br>
<</if>>
<<if setup.checkItemOwned('manager_paddle')>>
<<if setup.checkItemInInventory('manager_paddle')>>
<<printThought $player "I should return her paddle before she notices it's missing...">>
<<else>>
<<printThought $player "I should return her paddle before she notices it's missing... But I forgot it at home!">>
<</if>>
<br><br>
[<<moveTo "event_manager_out_of_office_desk_paddle_return" "Return the paddle." 120 "<<set $scene.timeremaining-=120>>">>]<br>
<<else>>
[<<moveTo "event_manager_out_of_office_desk_paddle" "Pilfer a paddle." 120 "<<set $scene.timeremaining-=120>>">>]<br>
<</if>>
[<<moveTo "event_manager_out_of_office_desk_computer" "Try to access her computer." 120 "<<set $scene.timeremaining-=120>>">>]<br>
[<<moveTo "event_manager_out_of_office_root" "Explore some other part of her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, search her wardrobe
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<addItem 'manager_paddle'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/TODO_manager_desk.png">>
<div id="invframe" class="scrolltext">
You grab the "For SISSY secretary use only" pink paddle. Holding it in your hand you can't help but remember the times it was used on your... and the certainty that you will be getting even worse if she ever finds out that you stole it...<br>
<br>
<<printThought $player "I should get back to my desk before I get caught...">><br>
<br>
[<<moveTo "event_manager_out_of_office_check" "Back to your desk." 60 "<<set $scene.timeremaining-=60>>">>]
[<<moveTo "event_manager_out_of_office_root" "Continue exploring her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, search her wardrobe
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/TODO_manager_desk.png">>
<div id="invframe" class="scrolltext">
You carefully put the "For SISSY secretary use only" back in the drawer where it belongs.<br>
<br>
<<printThought $player "I should get back to my desk before I get caught...">><br>
<br>
[<<moveTo "event_manager_out_of_office_check" "Back to your desk." 60 "<<set $scene.timeremaining-=60>>">>]
[<<moveTo "event_manager_out_of_office_root" "Continue exploring her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, try to use her computer
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/TODO_manager_computer.png">>
<div id="invframe" class="scrolltext">
You try to log on to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> computer but she appears to practice proper security practices and locked it before stepping away.<br>
<br>
[<<moveTo "event_manager_out_of_office_root" "Explore some other part of her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: check if you get caught in manager's office
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.timeremaining <= 0>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<set $scene.caughtwithdress = setup.checkItemInInventory('manager_dress')>>
<<if $scene.caughtwithdress>>
<<deleteItem $player $now 'manager_dress'>>
<<deleteItem $player $now 'manager_heels'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.timeremaining <= 0>>
You are on your way out of your office and back to your desk when <<=setup.getNpcName('npc_manager', 'formal')>> comes through the door. Her look of surprise narrows quickly as you freeze in fear.<br>
<br>
"@@.npc_manager;Were you sneaking around in my office while I was out?@@" She asks as she stalks towards you, like a tiger stalking its helpless prey.<br>
<br>
<<if $scene.caughtwithdress>>
"@@.npc_manager;And what is this?@@" She asks, plucking the dress and heels from your grasp "@@.npc_manager;were you... stealing one of my outfits?@@" She shakes her head as you quake in your boots. "@@.npc_manager;You naught, naughty girl, of course you know that such actions must be met with immediate punishment.@@"
<<else>>
"@@.npc_manager;And just what were you doing in there hmm?@@"<br>
<br>
You are too terrified to speak as she comes to stand in front of you, her piercing gaze nailing you in place.<br>
<br>
"@@.npc_manager;Cat got your tongue? Well, no matter, I am sure your lips will be loosened after a bit of punishment and if not... well, hopefully you will at least learn a lesson.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_out_of_office_punish" "It's punishment time..." 60 "<<set $scene.timeremaining-=60>>">>]
<<else>>
You hurry out of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, locking the door behind you before returning to your desk and resuming working, hoping that she will not notice any evidence of your snooping around.<br>
<br>
[<<moveTo "event_manager_out_of_office_return" "Resume working." $scene.timeremaining>>]
<</if>>
</div>/*#
#desc: manager returns to her office from a meeting
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> returns from her "meeting" looking somewhat flush. Gracing you with a simple nod she continues past into her inner office and closes the door.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 0>>]<br>
</div>/*#
#desc: check if you get caught in manager's office
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
This scene is not yet implemented
<<if $scene.caughtwithdress && $scene.caughtwithpaddle>>
/% TODOfuture %/
<<elseif $scene.caughtwithdress>>
/% TODOfuture %/
<<else>>
/% TODOfuture %/
<</if>>
<br><br>
[<<moveTo "event_manager_out_of_office_return" "Resume working." $scene.timeremaining>>]
</div>/*#
#desc: check if you get caught in manager's office
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You gather your things and head out. Halfway to the elevator you hear footsteps behind and turn to around to find <<=setup.getNpcName('npc_manager', 'formal')>> bearing down on you.<br>
<br>
"@@.npc_manager;Sorry to interrupt you on your way home but... it would seem that you have accidentally taken something with you. A certain paddle, I believe?@@"<br>
<br>
Wide-eyed in fear you nervously hand over the paddle, bracing for punishment only for her to merely casually take it from you.<br>
<br>
"@@.npc_manager;Ah, just as I suspected... well, more than suspected; RFID chip in the paddle you know - must not misplace company property!@@"<br>
<br>
"@@.npc_manager;Well? What are you waiting for! Run along home, my deal, I will see you <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>>.@@"<br>
<br>
Scarcely believing your "luck" at getting out without punishment you hurriedly nod and rush up the hallway to the elevator before she can change her mind.<br>
<br>
<<printThought $player "Glad she didn't punish me but... how am I going to smuggle that thing out if it's tracked?">><br>
<br>
[<<moveTo "event_manager_out_of_office_return" "Resume working." $scene.timeremaining>>]
</div>
/% TODO
<<if currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task')>>
<<if setup.checkItemOwned('manager_paddle_broken') || setup.checkItemOwned('manager_paddle_repaired')>>
She pauses and gives your sore bottom a gentle massage. "@@.npc_manager;I have to say, this new steel-core paddle is such a delight to weild, I should thank you for breaking the old one and giving me an excuse to upgrade!@@"
<<else>>
She pauses and takes a deep breath. "@@.npc_manager;My my, really got into it that time!, if I keep needing to administer punishments like that I might well end up breaking this paddle!@@"<br>
<br>
<<printThought $player "Wait, if it breaks maybe she'd let me take it? Then I'd just have to figure out a way to get it repaired...">><br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getWillpower($player)>0>>
[<<moveTo "event_manager_talk_nothing_2_bonus_1" "Harder, Mistress..." 120>>]
<<else>>
[@@.link_locked;You lack the mental will to request any more punishment.@@]
<</if>>
<<else>>
[@@.link_locked;My bum-bum is already on fire, no way can I endure having her break it over my rear!@@]
<</if>>
<</if>>
<<else>>
She pauses and takes a deep breath. "@@.npc_manager;My my, really got into it that time!, if I keep needing to administer punishments like that I might well end up breaking this paddle!@@"
<</if>>
%//*#
#desc: ask manager for more spankings in hopes of breaking paddle
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Harder? My, my look who has blossomed into a real pain slut.@@" She strokes your bare bottom, the mere brush of her fingers setting off sparks that has you hiss in pain.<br>
<br>
"@@.npc_manager;Aww, does it hurt, SISSY? I think that will do for today, I would not want to break anything, after all.@@"<br>
<br>
<<printThought $player "If she's going to break the paddle I'm going to have to convince her to go all out... but can I survive that?">><br>
<br>
<<if setup.getWillpower($player)>0>>
[<<moveTo "event_manager_talk_nothing_2_bonus_2" "Please, Ma'am, I want some more..." 120>>]
<<else>>
[@@.link_locked;You lack the mental will to credibly request any more punishment.@@]
<</if>>
</div>/*#
#desc: convince manager to spank you harder to break paddle
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.count = 1>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Well! Since you asked so nicely...@@" Glancing over your shoulder you watch her stretch her shoulders, looking almost like a baseball player warming up for the plate...<br>
<br>
<<printThought $player "Oh no, what did I do?">><br>
<br>
"@@.npc_manager;Brace yourself, sissy.@@" Is your last warning before the paddle comes down.<br>
<br>
Like a pink blur it practically sings through the air, impacting your rear with such force that the massive desk you're leaning against actually rocks forward slightly. You cry out in pain as she pauses. "@@.npc_manager;Well, sissy? I thought this was what you wanted, just say the word and I will stop otherwise... start counting.@@"<br>
<br>
[<<moveTo "event_manager_talk_nothing_2_bonus_3" "One." 120>>] <<hint $options "You're in so much pain already asking for more is going to take an act of will.">>
</div>/*#
#desc: endure spanking long enough for paddle to break
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.broken = random(5) < $scene.count>>
<<if !$scene.broken>>
<<set $scene.count += 1>>
<<spendWillpoer $player 1>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.broken>>
TODOfuture
<<elseif setup.getWillpower($player) > 0>>
TODOfuture
<<else>>
Another titanic blow lands across your rear and you throw in the towel. You feel beaten down and broken, uncertain if you'll be able to sit down again... ever and utterly mentally drained.<br>
<br>
"@@.npc_manager;Mmmm, I think that will do.@@" She states "@@.npc_manager;what a brave girl to endure all of that I hope you enjoyed... well, maybe that is not QUITE the right word it, I know I had quite the delightful time. It really is nice to really cut loose every once in awhile...@@"<br>
<br>
Panting and sobbing as she pulls you to your feet and bundles you up in her grasp you sink into her strong arms as she strokes your hair. "@@.npc_manager;There, there,@@" she comforts as you sob into her shoulder "@@.npc_manager;I know it is hard but you were a good Sissy, and I bet you learned a really important lesson, hmm?@@"<br>
<br>
You nod, even though you aren't quite sure what that lesson might be. Too exhausted to be concerned at the fact that all of this was, technically, a "failure" being that the paddle remains stubbornly in one piece you slowly regain some energy as she helps fix your clothes and guides you to the door.<br>
<br>
"@@.npc_manager;Have a good evening, my dear.@@" She states in parting as you stagger out of the office, wincing slightly with each step.<br>
<br>
[<<moveTo "room_elevator_home" "Head for the elevator" 180>>]
<</if>>
</div><<set $scene.returnFromMasturbation = passage()>>
<<if $player.timebased.horny > $player.penis.erection>>
<<printThought $player "I don't think I can focus on my work, I'm just too horny...">><br>
<br>
<<if setup.getItemFromType("cage") != "">>
<<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey>>
You glance over at the key to your chastity device sitting on the corner of your desk...<br>
<br>
[<<moveTo "event_work_masturbate_desk_1" "Unlock yourself and squeeze one out at your desk." 0>>]<br>
[<<moveTo "event_work_masturbate_bathroom_1" "Unlock yourself and head for the bathroom for some private relief." 0>>]
<<else>>
Unfortunately for the purposes of resolving your arousal your <<getWordMyPenis $player>> is quite securely locked away and the key out of your reach.
<</if>>
<br><br>
<<if setup.getItemFromType("plug") != "">>
<<if setup.getTotalValue("anal") >= 10>>
[<<moveTo "event_work_masturbate_anal" "Fortunately you're plugged, which is really more your speed these days than playing with your caged <<getWordMyPenis $player>>." 0>>]<br>
<<elseif setup.getTotalValue("anal") > 7>>
[<<moveTo "event_work_masturbate_anal" "Perhaps the plug in your bum would be enough to get your off even locked up? You're desperate enough to try." 0>>]<br>
<<else>>
[@@.link_locked;You may be plugged, but you don't think you can get yourself off just with that.@@]<br>
<</if>>
<<elseif setup.getTotalValue("anal") >= 10>>
[@@.link_locked;If you had only remembered to plug your cute tush like the butt-slut you are blossoming into you'd have another option for getting yourself off.@@]<br>
<</if>>
<<if $scene.asked_help_manager != true>>
[<<moveTo "event_work_masturbate_office_1" 'Ask <<=setup.getNpcName("npc_manager", "formal")>> for help.' 0>>]<br>
<<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey>>
<<set _removeCage = "<<removeItem $player $now " + setup.getItemFromType("cage") + " true>>">>
[<<moveTo "event_work_masturbate_office_1" 'Remove your cage and go ask <<=setup.getNpcName("npc_manager", "formal")>> for help.' 0 _removeCage>>]
<<else>>
[@@.link_locked;I'm locked up and with no key, guess I'm entirely dependent on her...@@]
<</if>>
<<else>>
[@@.link_locked;I already asked for her help today...@@]
<</if>>
<<else>>
<<if $npc_manager.stage >= 2>>
You glance around the office, you're alone and you could probably "resolve" your tension fairly quickly...<br>
<br>
[<<moveTo "event_work_masturbate_desk_1" "Squeeze a quick one out at your desk." 0>>]<br>
<<else>>
You're feeling pent up enough for it to distract from your work, maybe if you could find somewhere private?<br>
<br>
<<printThought $player "Damn that penis enlarging scam!">><br>
<br>
<</if>>
[<<moveTo "event_work_masturbate_bathroom_1" "Head to the bathroom for some more secure privacy to get some relief." 0>>]<br>
<<if setup.getItemFromType("plug") != "">>
<<if setup.getTotalValue("anal") >= 10>>
[<<moveTo "event_work_masturbate_anal" "Fortunately you're plugged, which is really more your speed these days than playing with your caged <<getWordMyPenis $player>>." 0>>]<br>
<<else>>
[@@.link_locked;You may be plugged, but you don't think you can get yourself off just with that.@@]<br>
<</if>>
<<else>>
<<if setup.getTotalValue("anal") >= 10>>
[@@.link_locked;If you had only remembered to plug your cute tush like the butt-slut you have blossomed into you'd have another option for getting yourself off.@@]<br>
<</if>>
<</if>>
<</if>>
<</if>>/*#
#desc: jerk off at your desk at work
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $player.cutscene.lockinventory = true>>
<<switch random(1,5)>>
<<case 1>>
<<set $scene.caught_by = 'manager'>>
<<set $player.flags.masturbation.work.desk_caught = true>>
<<case 2>>
<<set $scene.caught_by = 'ai'>>
<<case 3 4 5>>
<<set $scene.caught_by = 'none'>>
<<set $player.flags.masturbation.work.desk = true>>
<</switch>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>
hike up your skirt
<<else>>
pull down your pants
<</if>>
<<if $scene.cage != "">>
and remove your chastity cage. Free of its prison your <<getWordMyPenis $player>> swells with excitement and you go to work stroking and playing with your sensitive member, leaning back in your chair and stifling a moan of pleasure.<br>
<br>
Touching yourself feels so good, the forbidden nature of your act only making it more pleasurable as your fingers glide up and down and you revel in the momentary freedom from the cruel chastity device.
<<else>>
and start jerking off. The act of doing it at work, where someone could walk in at any time, has your heart racing, the forbidden nature of your effort only making it more pleasurable as you lean back in your chair and bite your lip.
<</if>>
<br><br>
It had been your intent to be over and done quickly to clear your head for work but now, with your <<getWordMyPenis $player>> you don't want the pleasure to end, but even slowing your pace you can feel your climax rapidly approaching.<br>
<br>
[<<moveTo "event_work_masturbate_desk_2" "The time has cum..." 300>>]
</div>/*#
#desc: caught/cleanup jerking off at your desk at work
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<<switch $scene.caught_by>>
<<case 'manager'>>
<<if $scene.cage != "">>
<<set $npc_manager.flags.unlocked_lunch_play = true>>
<</if>>
<<set $player.timebased.horny = 50>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<if $npc_manager.stage == 1 && $player.flags.fem_style.unisex != "">>
<<set $npc_manager.stagevalues[1].override = true>>
<<else>>
<<applyExperience 'bdsm' 4 'very' $SEEN_FRIEND>>
<</if>>
<<if $scene.cage != "">>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken' true>>
<</if>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, false, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, false)>>
<<default>>
ERROR unexpected npc_manager.stage! <<=$npc_manager.stage>>
<</switch>>
<</if>>
<<case 'ai'>>
<<set _top = setup.checkTopBodySlot('tits','top')>>
<<changeItemStatus _top 'cum' '["set",50]'>>
<<set $player.timebased.horny = 40>>
<<case 'none'>>
<<set $player.timebased.horny = 10>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<switch $scene.caught_by>>
<<case 'manager'>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<<case 'ai'>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_ai.png">>
<<case 'none'>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.caught_by>>
<<case 'manager'>>
"@@.npc_manager;Ah-hum@@" You are on the cusp of orgasm when the sound of your <<=setup.getNpcName('npc_manager', 'title')>> clearing her throat freezes you in place. Your eyes snap open and you look up to find her looming above you, staring down over her glasses.<br>
<br>
"@@.npc_manager;And just what, exactly do you think you are doing here?@@"<br>
<br>
As if your utter humiliation wasn't already bad enough your <<getWordMyPenis $player>> decides that it has had enough, spurting its shameful excitement with such vigour a strand arcs high enough to land across her glasses and, even more horrifying, her cheek.<br>
<br>
Your shock turns to desperate fear as you stare up wide-eyed as she removes her glasses and wipes them off, using a single finger to brush herself off, her expression like stone, rigid and strangely unreadable.<br>
<br>
<<if $scene.cage != "">>
"@@.npc_manager;Well! I thought I was showing you a kindness, giving you a modicum of control over your situation but, apparently, that favour has only resulting in you taking advantage of my generosity like an utterly depraved sissy slut.@@"<br>
<br>
You want to respond, to beg for forgiveness, for mercy for anything, but you find yourself petrified, and, even worse, your <<getWordMyPenis $player>> remains stiff and excited between your fingers despite your climax. Reaching past you towards the desk she picks up your cage and hands it to you.<br>
<br>
"@@.npc_manager;Put it on. Now.@@" She orders, her words causing you to spring into action, cramming your <<getWordMyPenis $player>> back into its prison for her to lock it closed with a click. "@@.npc_manager;Good, and since you have proven so woefully unable to control yourself I will hold on to this for safe keeping.@@"<br>
<br>
She makes a show of threading the key onto her necklace and tucking it down her top standing still for a moment of calm before bursting into motion.<br>
<br>
She moves as fast as lightning, her hand shooting out like a cobra to grab you by the hair and pull you up off your chair. Her pull is scary strong and you find yourself helplessly pitched forward, bent over your desk with your face pressed against the smooth hardwood.<br>
<br>
"@@.npc_manager;So.@@" She states, her voice suddenly casual even as she holds you in place as firmly as if you were nailed to the desk. "@@.npc_manager;I daresay that you have reached new heights of disobedience with todays actions - while I certainly understand the... excitement that surely has resulted from your ongoing transformation into a proper Sissy Secretary there are also expectations for you to exhibit decorum and control.@@"<br>
<br>
A hard slap impacts your rear, sending a jolt of pain through your body in spite of what meager padding your clothing provides. One blow begets another, her lecture fading into the background as you whimper and beg for lenience, your cries falling on deaf ears as she continues your punitive paddling until you have wilted in exhaustion, unable even to muster another plea for mercy.<br>
<br>
Releasing her grasp causes you to slide to the ground, glancing up at her annoyed expression and somehow managing to drag yourself back up onto your chair, wincing in pain as you put weight onto your tanned bottom.<br>
<br>
"@@.npc_manager;I do hope that serves as a lesson in what is and is not appropriate behaviour at work. In the future, if you find the excitement of your position proves too much to focus you should let me know, perhaps after you have delivered my lunch, and I may see what I can do to... help your situation.@@"<br>
<br>
Suppressing tears you nod silently as she smiles and turns smartly to disappear back into her inner office.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>><<wearItem $player $now $scene.cage true>>">>]
<<else>>
You sit petrified. Even with the strange things that have happened in the course of your short time working under <<=setup.getNpcName('npc_manager', 'formal')>> this has to be a fireable offense, right?<br>
<br>
Taking an overly long time to clean her glasses she seems to be intentionally letting you stew before finally continuing. "@@.npc_manager;This is... quite disappointing, behaving like this, when you are supposed to be working... Unfortunately I need to get to a meeting so your punishment will have to wait until the morning... but know that there WILL be a reckoning.@@"<br>
<br>
You gulp as she hurries past. It takes a few minutes for your pounding heart-rate to come down after which there's really nothing to do but return to your duties.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<case 'ai'>>
Just as you climax your hear a sound from your computer, looking towards the screen with shock as you find a video of yourself playing, the camera in your computer activated to provide a mirror view of your debauchery.<br>
<br>
Despite the shock and humiliation you are too close, and you end up spurting all over yourself as the video freezes on the exact frame of your climax. Your heart pounds as you look at the evidence of your perversion, frozen in place until a shimmering overlay appears and <<=ps(setup.getNpcName('npc_ai', 'first'))>> scroll across the screen.<br>
<br>
"@@.npc_ai;<<uc "Hello unit ">> <<uc $player.first_name>><<uc ", I do not believe this sort of behaviour is part of your job description. No matter, I will continue to keep your secrets, but you owe me another favour.">>@@"<br>
<br>
The image blinks away to display your normal desktop as you blink in shock. Catching your breath you clean up as best you can, <<if setup.getItemFromType("cage") != "">>swiftly re-caging yourself and depositing the key back at the corner of your desk <</if>>before you get in any further trouble.<br>
<br>
As you start to work you have a final, frustrating realization - despite your climax you are already feeling horny again!<br>
<br>
<<printThought $player "How can being caught and embarrassed turn me on? What's wrong with me?">><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<<case 'none'>>
With a gasp you cum, managing to have the foresight to aim so that you spurt your joy into your hand rather than making a mess of your workspace.<br>
<br>
[<<moveTo "event_work_masturbate_desk_3" "Lick your hand clean." 300 "<<set $scene.cum=true>>">>]<br>
<<if setup.getTotalValue("cum") < 10>>
[<<moveTo "event_work_masturbate_desk_3" "Find a towel to clean up." 300 "<<set $scene.cum=false>>">>]
<<else>>
[@@.link_locked;You could not possibly let such deliciousness go to waste.@@]
<</if>>
<<default>>
ERROR unexpected caught_by: <<=$scene.caught_by>><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</switch>>
</div>/*#
#desc: clean yourself up after masturbating at your desk
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<<if $scene.cum>>
<<applyExperience 'cum' 11 'very' $ALONE>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
Eagerly you lick your hand clean of tasty, tasty cum.
<<else>>
After a mere moments thought you bring your hand to your lips, licking it clean of yummy cummies.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Not having anything immediately at hand to clean off your hand you lick it clean, trying not to think about the enthusiasm with which your tongue searches out every bitter, salty drop.
<<else>>
Looking at the mess on your hand you glance around for some way to clean it up before just licking your fingers clean, trying your best to ignore the taste.
<</if>>
<</if>>
<<else>>
You find a napkin in your desk and wipe off your hands, wadding up the cum-soaked paper and tossing it into the trash basket to hide the evidence of your naughty misbehaviour.
<</if>>
<br><br>
<<printThought $player "Whew, I should be able to focus on work now but... maybe it's not such a safe idea to do this sort of thing at my desk?">><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: jerk off in office bathroom
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $scene.caught = ((setup.getItemFromType("cage") != "") && (random(1,4) == 1))>>
<<set $player.timebased.horny = 0>>
<<set $player.flags.masturbation.work.bathroom = true>>
<</if>>
<<set $player.location = "Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("cage") != "">>
You scoop up the key to your cage and head for the bathroom, grabbing a private stall and unlocking yourself and sighing with relief as your <<getWordMyPenis $player>> springs forth in excitement.
<<else>>
You hurry to the bathroom, grabbing a private stall and exposing yourself, your <<getWordMyPenis $player>> springing forth in excitement.
<</if>>
<br><br>
Taking the matter in hand you suppress your moans as you wank, taking less than two minutes before spurting across the stall door in front of you.<br>
<br>
Letting out a sigh of contentment you are overcome by a wave of shame and disgust at having snuck away from your duties to jerk off.<br>
<br>
<<if setup.getItemFromType("cage") != "">>
Your limp <<getWordMyPenis $player>> easily fits back into its prison and you lock it closed before gathering your things and hurrying back to your desk,
<<else>>
You catch your breath before fixing your clothes and hurrying back to your desk,
<</if>>
now ready to properly focus on your duties.<br>
<br>
<<if $scene.caught>>
[<<moveTo "event_work_masturbate_bathroom_2" "Back to work." 600>>]
<<else>>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: caught by manager coming back to office after jerking off in bathroom
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You return to your office only to find <<=setup.getNpcName('npc_manager', 'formal')>> standing next to your desk, her stern expression, and the key-less dish on the edge of your desk, making it immediately clear that you are in trouble.<br>
<br>
"@@.npc_manager;So, imagine my surprise when I come out to see my lovely secretary and I find that not only are you not at your desk you have absconded with the key to your chastity device!@@"<br>
<br>
"@@.npc_manager;So tell me, my lovely... what took you away from your duties?@@"<br>
<br>
[<<moveTo "event_work_masturbate_bathroom_3" "Lie and say you were just having a piss." 60 "<<set $scene.lie=true>>">>]
[<<moveTo "event_work_masturbate_bathroom_3" "Admit you were playing with yourself." 60 "<<set $scene.lie=false>>">>]
</div>/*#
#desc: caught by manager coming back to office after jerking off in bathroom
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.lie>>
<<set $player.flags.masturbation.work.bathroom_caught = true>>
<<else>>
<<set $player.flags.masturbation.work.bathroom_confess = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
"@@.npc_manager;A piss why would- Oh! I get it, you wanted to go to the bathroom standing up so you needed out of your cage!@@" She shakes her head in amusement "@@.npc_manager;oh you silly sissy, you do not need to remove your cage to go wee, you just need to sit down, like a good girl.@@"<br>
<br>
"@@.npc_manager;Tell you what, since this was all the result of a... misunderstanding, I will let you off with a warning if you promise me that, in the future, you will always remember to sit to pee. Think of it as your special time to relax and remember what you are working towards.@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought $player "Of course I shouldn't be standing up to pee like a boy, I'm a girl!">><br>
<br>
Without hesitation you beg her forgiveness, promising that, of course, you will always sit down to pee in the future.
<<else>>
<<if setup.getTotalValue("feminization") > 5>>
<<printThought $player "What I'm working towards... How feminine does she expect me to be?">>
<<else>>
<<printThought $player "Wait, what does she think I'm working toward? Probably better just to agree with her though.">>
<</if>>
<br><br>
After a few moments hesitation you conclude that this is probably the lightest you're liable to get off and you quickly parrot back the promise not to stand to pee anymore.
<</if>>
<br><br>
Seemingly satisfied with your response she waits for you to put the key to your cage back on the edge of the desk before smiling at you and returning to her office. You let out a sigh of relief and are about to sit down when you have a sudden thought.<br>
<br>
<<printThought $player "Wait, she said she came out because she had business, but now she just leaves me alone? Was she just spying on me hoping I'd trip up?">><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
Looking down in shame you admit that you swiped the key to play with yourself in the bathroom.<br>
<br>
"@@.npc_manager;I see...@@" she states, walking towards you. "@@.npc_manager;Well that is definitely not something you should be doing but your honesty is quite refreshing...@@" She looks you over, her piercing gaze in search of a better understanding. "@@.npc_manager;Your failure has earned you some discipline, but your honesty means that I will give you a choice; you can admit your lack of self-discipline and give me the key to hold onto until such time as you have demonstrated greater control or we can treat this as a one-off mistake and I administer a formal punishment.@@"<br>
<br>
[<<moveTo "event_work_masturbate_bathroom_4" "Permanently give up control of your chastity." 60 "<<set $scene.punish=false>>">>]
[<<moveTo "event_work_masturbate_bathroom_4" "Ask for an immediate punishment." 60 "<<set $scene.punish=true>>">>]
<</if>>
</div>/*#
#desc: punished or give up key after confessing to unlocking + playing with self in bathroom
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<incrementEmotion 'satisfaction' 'npc_manager' 2>>
<<if $scene.punish>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<set $npc_manager.flags.unlocked_lunch_play = true>>
<<else>>
<<applyExperience 'submission' 16 'very' $SEEN_FRIEND>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken' true>>
<</if>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, false, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, false)>>
<<default>>
ERROR unexpected npc_manager.stage! <<=$npc_manager.stage>>
<</switch>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.punish>>
Taking a deep breath you walk over to the edge of your desk, placing the key in its dish and bending over with your rear exposed. Looking over your shoulder you do your best Bambi eyes and softly state "Please, <<=setup.getNpcName('npc_manager', 'formal')>>, would you punish your SISSY secretary?" <br>
<br>
She looks back with a smile no... not a smile, a grin, a hungry, intimidating borderline demonic grin.<br>
<br>
"@@.npc_manager;Of course, my dear.@@" She states, her fingers brushing over your rear. "@@.npc_manager;One moment while I fetch your cute paddle.@@"<br>
<br>
You nod, listening to the sharp click of her heels as you remain bent of your desk, the air of the room cool on your exposed bottom as you await her return.<br>
<br>
Glancing towards the door you watch her stride back in, "for SISSY secretary use only" pink paddle in hand. You gulp in fearful anticipation.<br>
<br>
"@@.npc_manager;Now, my dear... how many spanks do you think your little transgression deserves?@@"<br>
<br>
Your heart in your throat you hesitantly reply "t-ten?" <br>
<br>
"@@.npc_manager;On each cheek? Hmm, that sounds reasonable, get ready, sissy!@@"<br>
<br>
You have no more time to prepare before the first blow lands, SMACK! You yelp in pain only for it to be matched with another strike to the other side of your rear.<br>
<br>
Your breaths coming in quick, short gasps you squeeze your fists and focus on counting as you wait for the punishment to end. SMACK! SMACK! Each blow lands hard and sharp as she systematically turns your entire bottom cherry red, alternating cheek to cheek.<br>
<br>
You're up to eight on each side when she pauses and you wonder if, perhaps she is taking mercy on your poor, fire-hot bum.<br>
<br>
"@@.npc_manager;You learning your lesson?@@" She asks, the gentle touch of her hand on your rear still painful in your over-sensitised state.<br>
<br>
"Y-yes, <<=setup.getNpcName('npc_manager', 'formal')>>" you reply, wincing as she squeezes your butt.<br>
<br>
"@@.npc_manager;Wonderful, now to finish your punishment, with something more precisely targeted towards the cause of this whole problem.@@"<br>
<br>
You're confused what she could mean only for her to reach between your legs to pull your testicles back, exposing them between your thighs while you remain otherwise securely caged.<br>
<br>
SMACK! Though softer than her previous blows this one hurts far more, the paddle perfectly impacting your defenceless testicles. Breath hissing through clenched teeth you jerk as a second blow lands, somehow even more painful despite you being prepared.<br>
<br>
"@@.npc_manager;I know it hurts, but this is what happens to bad sissy's. If I do not punish your failures how are you to learn and develop into the perfect SISSY secretary you were meant to be, hmm?@@" SMACK! the paddle lands again and you let out a gasp. One more, by your count unless...<br>
<br>
You feel her fondling your balls, re-arranging them into perfect position before winding back for the final blow. SMACK! It slams into you with a glancing, upward swing crushing your balls and then your sore rear for a full refresher of pain.<br>
<br>
Gasping for air you try to recover now that the punishment is over, only for a fleeting thought to go through your mind.<br>
<br>
<<printThought $player 'I bet she would be really impressed if I asked for "one more to grow on..."'>><br>
<br>
[<<moveTo "event_work_masturbate_bathroom_5" "Request one more." 60 "<<set $scene.extra=true>>">>]
[<<moveTo "event_work_masturbate_bathroom_5" "Remain silent." 60 "<<set $scene.extra=false>>">>]
<<else>>
Trembling slightly you hand her the key to your chastity device, simultaneously excited and scared by her gentle smile as she takes it in hand and you realise you have no idea when you will be "free" again.<br>
<br>
"@@.npc_manager;Thank you. I know it can be difficult to admit ones own failings and take the measures required to address them but well... know that you doing this makes me proud of you, and even more certain that I made the right choice in choosing to hire you to be my SISSY secretary.@@"<br>
<br>
You blush as she places the key on her necklace and it disappears down her shirt.<br>
<br>
"@@.npc_manager;Well, now that there are no more distractions I suppose we had both better be back to work. I will see you later, my dear.@@" She states with a smile before turning and heading back into her office.<br>
<br>
Letting out a held breath you return to your chair, even more alert to the presence of the device locked around your <<getWordMyPenis $player>>, especially when you glance towards the edge of your desk and the now-empty dish.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: finish punishment after admitting bathroom masturbation
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.extra>>
<<applyExperience 'bdsm' 6 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.extra>>
Your words are disjoint and breathless as you ask her for one more spank to help make "sure" you have learned your lesson. Face-down on the desk you cannot see her expression and you can sense the beaming pride as she responds.<br>
<br>
"@@.npc_manager;Oh, my, it seems your little misbehaviour really has led you to a place of better understanding your duties as a SISSY secretary. It would be my pleasure to help solidify your lesson, here, let me make it extra special.@@"<br>
<br>
You feel her hand once again on your balls, stretching you back with one hand before her other lands a firm slap on your taut, achingly sensitive testicles. "@@.npc_manager;There we go.@@" She states, giving your balls a friendly squeeze. "@@.npc_manager;Keep this in mind the next time you consider misbehaving, spanking it like a pervert may be fun but it is a pale imitation of the REAL pleasures a sissy should be focusing on and I will make sure to continue reinforcing these lessons until they penetrate your cute skull.@@"<br>
<br>
Standing up straight you wince as you pull up your clothes, the merest brush of fabric against your red bottom and pained testicles a fresh agony but you merely nod in agreement with her words.<br>
<br>
"@@.npc_manager;Excellent, well since you have learned your lesson this can stay here for now.@@" She states, giving the key to your cage a gentle pat as it lies safely back in its dish. "@@.npc_manager;Now it is back to work and I will see you later!@@"<br>
<br>
Wincing with each step you slowly ease yourself into your chair, even the thickly padded seat painful against your tush.
<<else>>
You remain silent as you slowly rise to your feet, hissing in pain as you fix your clothes. Arms crossed with the menacing paddle on full display she nods, gently tapping the key resting safely in its dish before silently returning to her inner office.<br>
<br>
Taking a deep breath you wait for the door to close before carefully walking over to your chair and, wincing in pain, taking your seat to resume your duties.
<</if>>
<br><br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: choose how to anally masturbate at work
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You shift in your chair, feeling the <<=setup.getItemName(setup.getItemFromType("plug"))>> rubbing delightfully against your prostate. You could probably get off just sitting here... though that seems risky. Alternately you could opt to use the bathroom for a bit of privacy.<br>
<br>
[<<moveTo "event_work_masturbate_anal_desk" "Roll your hips and try to get off at your desk." 300>>]<br>
[<<moveTo "event_work_masturbate_anal_bathroom" "Head for the bathroom for some privacy." 300>>]
</div>/*#
#desc: get off using buttplug at your desk at work
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<<if setup.getItemObjFromType("plug").effect.anal.level <= 5>>
<<set $player.timebased.horny += 20>>
<<else>>
<<set $player.timebased.horny = 10>>
<<applyExperience 'cum' 5 'normal' $ALONE>>
<<set _panties=setup.getItemFromType('panties')>>
<<if _panties!="">>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<<set _plugSize = setup.getItemObjFromType("plug").effect.anal.level>>
<<applyExperience 'anal' _plugSize 'normal' $SEEN_FRIEND>>
<<set $scene.caught = random(1,3) == 1>>
<<if $scene.caught>>
<<set $npc_manager.flags.unlocked_lunch_play = true>>
<<if setup.getItemObjFromType("plug").tags.includes("ems")>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.flags.masturbation.work.desk_plug_caught = true>>
<<else>>
<<set $player.flags.masturbation.work.desk_plug = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Settling into your chair you start rocking your hips to shift the <<=setup.getItemName(setup.getItemFromType("plug"))>> around inside of you.<br>
<br>
<<if setup.getItemObjFromType("plug").effect.anal.level > 5>>
<<if setup.getItemObjFromType("plug").effect.anal.level > 10>>
You smile in pleasure as your body shifts around the massive plug inside of you. As much of a constant distraction its substantial girth and size may be at times like this it is perfect, filling you up and pressing hard against your prostate.
<<else>>
The plug in your ass is just big enough to give you that prostate pressure you crave and you purr in contentment as you clench down, sucking it deeper as you rock back and forth so that it shifts around in your bowels.
<</if>>
<br><br>
Eyes shut in concentration you focus on your forthcoming analgasm, heart pounding and breath quickening as you get closer and closer only to freeze, shuddering and letting out a panting gasp as you climax, your hips bucking as you fill your panties without ever touching your <<getWordMyPenis $player>>.<br>
<br>
<<if $scene.caught>>
Opening your eyes you almost fall out of your chair in shock as you find yourself looking up at <<=setup.getNpcName('npc_manager', 'formal')>>. "@@.npc_manager;Enjoying yourself?@@" she asks with a single raised eyebrow. "@@.npc_manager;Not that I should be surprised that a sissy like you would be getting off like this but well... what if someone had walked in while you were in the midst of your debauchery? You are my representative, after all and what would one of my colleagues think if they arrived for a meeting to find my secretary wantonly pleasuring herself like a slut?@@"<br>
<br>
You look away in shame, the pleasure you had felt moments ago suddenly evaporated.<br>
<br>
<<if $npc_manager.stage >= 3>>
<<if setup.getItemObjFromType("plug").tags.includes("ems")>>
A remote appearing in her hand you cry out in pain as intense shocks suddenly course deep in your ass, your anal occupant lighting up for almost a second of agony.<br>
<br>
"@@.npc_manager;There, let that be a lesson to you that your holes exist to be used to service others, not engage in wanton hedonistic butt-sluttery of your own.@@"<br>
<br>
Still in pain you nod obediently, even as you recognise the slight stirrings of returning arousal at the brief, but severe, punishment.<br>
<br>
"@@.npc_manager;Anyway, I was just coming out to let you know that I will be in a meeting and should not be disturbed.@@"
<<else>>
A remote appearing in her hand she clicks it only for you to fail to react. Her gaze narrowing she clicks again before stopping and glaring down at you. "@@.npc_manager;Did you... neglect to wear a properly-featured plug? You naughty girl! Something vibrating and electric is for your own good, as well as swift behaviour adjustment. I need to get to my meeting so I do not have time for a more thorough punishment but you had better get that cute butt in order lest I take more... severe measures.@@"
<</if>>
<<else>>
She snorts, "@@.npc_manager;no response? Typical, well, unfortunately I do not have time to punish you at the moment but you should be more careful lest I shove something nice and big and electrified up your rear and watch how you shift about then, hmm?@@"<br>
<br>
Your heart pounds at the thought as your <<getWordMyPenis $player>> twitches.<br>
<br>
"@@.npc_manager;Anyway, I was just coming out to let you know that I will be in a meeting and should not be disturbed.@@"
<</if>>
<br><br>
She turns to go only to pause in the doorway. "@@.npc_manager;Oh, and, in the future, if you are having difficulty dealing with your... urges... perhaps I might be of some assistance? Let me know around lunch when I usually have a few minutes free.@@"
<<else>>
Catching your breath you look around the thankfully still-empty office and, shifting slightly in your chair and enjoying the afterglow of the plug settling inside of you, focus back on your computer.
<</if>>
<br><br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
Though you try hard no amount of grinding on your chair you seem to hit a threshold beyond which you just cannot ascend. You sigh in frustration as you finally give up on your quest; hornier than ever it seems apparent that the toy currently occupying you just isn't enough to push you to a climax.<br>
<br>
<<printThought $player "Damn, I wish I had something bigger inside of me...">><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: play with your butt in work bathroom
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.timebased.horny = 10>>
<<set _lvl = setup.getItemObjFromType('plug').effect.anal.level>>
<<applyExperience 'anal' _lvl 'normal' $INCOGNITO>>
<<set $player.flags.masturbation.work.bathroom_plug = true>>
<</if>>
<<set $player.location = "Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Making your way to a private stall you drop your clothes to your ankles and sit back, reaching between your legs to play with your plugged bum.<br>
<br>
<<if setup.getItemFromType("cage") != "">>
Reaching past your caged <<getWordMyPenis $player>> you ignore your straining, imprisoned member to focus on the forbidden sissy pleasures of your rear hole.
<<else>>
Your <<getWordMyPenis $player>> is already stiff, growing even harder as you brush against it but you remain focused on the forbidden pleasures of your rear passage.
<</if>>
<br><br>
You moan and bite your lip, shifting the plug back and forth, in and out, teasing a finger around your stretched hole even as you use the toy to press against your sensitive prostate.<br>
<br>
You are interrupted once by the sound of another person entering the bathroom, their casual whistle echoing off the tile as you tense and hold your breath, hoping they don't notice your presence.<br>
<br>
When they finally leave you resume your efforts with gusto, pumping the plug inside of you until you dribble your joy all over the floor.<br>
<br>
Hurriedly straightening your clothes you wash your hands and leave the bathroom, doing your best to act as casual as possible even as you are reflexively clenching and almost milking the plug still lodged inside of you.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask manager to help you get off
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<setScene>>
<<set $player.timebased.horny += 10>>
<<set $scene.help = random(1,10) < 2*$npc_manager.stage>>
<<set $scene.asked_help_manager = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You walk into the inner office and ask <<=setup.getNpcName('npc_manager', 'formal')>> if she could "help" you with something.<br>
<br>
<<if $npc_manager.anger > $npc_manager.satisfaction>>
She glares at you in annoyance.<br>
<br>
"@@.npc_manager;No, I will not "help" you with something - help is something earned by good <<if $player.flags.fem_style.name == "">>secretaries<<else>>girls<</if>>, and you have been QUITE naughty of late.@@"<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<if $scene.help && $player.timebased.horny > $player.penis.erection>>
"@@.npc_manager;Help you with something, what do you-@@" her gaze drifts south to the bulge between your legs.
<<if $npc_manager.affection < $npc_manager.anger>>
Her expression remains neutral and her voice even as she continues. "@@.npc_manager;I see. Well you should have thought of that before you were so rampantly misbehaved. Still, I suppose I should do something so you can remain focused on your work.@@"<br>
<br>
Your heart races and your excitement rises even further in anticipation.<br>
<br>
[<<moveTo "event_work_masturbate_office_2" "Wait." 60 "<<set $scene.style = 'punish'>>">>]
<<else>>
"@@.npc_manager;Oh, I see the situation hmm, yes I might be able to do something about that. What did you have in mind?@@"<br>
<br>
There is a twinkle in her eye as she grins at you and you have the feeling this is some sort of test.<br>
<br>
<<set _passage = "Expose your <<getWordMyPenis $player>>.">>
[<<moveTo "event_work_masturbate_office_2" _passage 60 "<<set $scene.style = 'penis'>>">>]<br>
[<<moveTo "event_work_masturbate_office_2" "Bend over and expose your pert bum." 60 "<<set $scene.style = 'anal'>>">>]<br><br>
[<<moveTo $scene.returnFromMasturbation "Change your mind and go back to work." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
"@@.npc_manager;I am very sorry but I am about to jump on a call, you will have to use your ingenuity and figure things out on your own.@@"<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: bend over or expose penis in hopes of manager helping you get off
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage == "">>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<addItem "electric_chastity">>
<<wearItem $player $now "electric_chastity" true>>
<<manipulateItem $player $now "electric_chastity" "lock" true>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken' true>>
<</if>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, false, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, false)>>
<<default>>
ERROR unexpected npc_manager.stage! <<=$npc_manager.stage>>
<</switch>>
<<elseif $scene.style == "punish">>
<<set $player.flags.masturbation.work.punish = true>>
<<if $npc_manager.stage >=3>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.plug_ems = false>>
<<if $scene.plug != "">>
<<set $scene.plug_ems = setup.getItemObj($scene.plug).tags.includes("ems")>>
<</if>>
<<set $scene.chastity_ems = setup.getItemObj($scene.cage).tags.includes("ems")>>
<<if $scene.plug_ems || $scene.chastity_ems>>
<<set $scene.style = "angry_ems">>
<<if $scene.plug_ems>>
<<set $player.timebased.horny -= 20>>
<<applyExperience 'bdsm' 11 'normal' $SEEN_FRIEND>>
<</if>>
<<if $scene.chastity_ems>>
<<set $player.timebased.horny -= 20>>
<<applyExperience 'bdsm' 11 'very' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set $scene.style = "angry_noems">>
<<set $player.timebased.horny = 0>>
<<applyExperience 'bdsm' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'very' $SEEN_FRIEND>>
<<if setup.inWardrobe('remote_control_plug')>>
<<wardrobeToItem 'remote_control_plug'>>
<</if>>
<<if $scene.plug != "">>
<<swapItem $player $now 'remote_control_plug'>>
<<else>>
<<wearItem $player $now 'remote_control_plug' true>>
<</if>>
<</if>>
<<else>>
<<set $scene.style = "angry_ice">>
<<set $player.timebased.horny = 0>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set $scene.angry = ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.satisfaction)+($npc_manager.affection)>>
<<if $scene.angry>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<elseif $scene.style == 'anal'>>
<<set $player.flags.masturbation.work.help_anal = true>>
<<set $npc_manager.affection += 1>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "">>
<<set $scene.vibrate = setup.getItemObj($scene.plug).tags.includes("vibrating")>>
<</if>>
<<set $player.timebased.horny = 0>>
<<set _panties=setup.getItemFromType('panties')>>
<<if _panties!="">>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<<applyExperience 'anal' 11 'very' $SEEN_FRIEND>>
<<else>>
<<set $player.flags.masturbation.work.help = true>>
<<set $player.timebased.horny += 20>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cage == "">>
You realise your mistake the instant you finish revealing your un-caged <<getWordMyPenis $player false>> as <<=ps(setup.getNpcName('npc_manager', 'formal'))>> eyes flare.<br>
<br>
"@@.npc_manager_dom;What. Is. THAT?@@"<br>
<br>
Moving faster than you can react she practically flies across her desk to stand in front of you, her hand clenching down on your terrified <<getWordMyPenis $player false>>.<br>
<br>
"@@.npc_manager;You know the rules; when you are at work, you are to be caged. Since you have so utterly failed I believe it is warranted to take drastic measures.@@"<br>
<br>
Still holding you firm she drags you around to the side of her desk where she reaches into a drawer to pull out an intimidating steel chastity device. "@@.npc_manager;Forgetting such a vital training device once again... well, I think it is time to deal with this problem... permanently.@@"<br>
<br>
With a bit of help from her nails her squeeze soon has you shrunken sufficient for her to cram your <<getWordMyPenis $player false>> inside its cold steel embrace.<br>
<br>
"@@.npc_manager;This lovely device is perfect for keeping the most... recalcitrant sissies under control.@@" She states, nimbly threading you down the snug tube before locking it in place. "@@.npc_manager;And now for the final cherry on top...@@" She adds before producing a narrow, gently curved rod. Greasing it with a thin lubricant she aligns it with the tip of the device and you are treated to the strange sensation of it sliding into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate as the sounding rod bottoms out inside of you and locks in place leaving you effectively imprisoned inside and out.<br>
<br>
Waving a small fob over the device you hear a sharp click of the lock before she wiggles the fob in front of your face. "@@.npc_manager;Over a trillion, trillion combinations, and this time you will NOT be getting the key back at the end of the day.@@"<br>
<br>
Still trying to adjust to the sensations of this new device you stare back at her, but she only smiles. "@@.npc_manager;Oh, and, just so you know... it is also electrified if you ever think of hmm... misbehaving again.@@"<br>
<br>
Wide-eyed with fear you tremble as she steps back.<br>
<br>
"@@.npc_manager;Now, if you would please be returning to your desk? I believe this has addressed the issue that you... presented me with.@@"<br>
<br>
Properly chagrined you nod and turn away in defeat.
<<else>>
<<switch $scene.style>>
<<case 'angry_ems'>>
You should have been on guard when she failed to rise from her seat, but you are too horny to notice until the remote is in her hand. You cry out in pain and flail about as painful electricity courses through your
<<if $scene.plug_ems && $scene.chastity_ems>>
ass and <<getWordMyPenis $player>>, penetrating deep into you from both directions.
<<elseif $scene.plug_ems>>
rear, your prostate lighting up red with pain until you cry out.
<<elseif $scene.chastity_ems>>
<<getWordMyPenis $player>>, your cage, and its penetrating plug, punishing you inside and out.
<<else>>
ERROR: no ems should not be possible
<</if>>
<br><br>
"@@.npc_manager;There, is that not just so much more efficient?@@" She asks cheerily as you pant and try to recover. "@@.npc_manager;Now run along back to work, unless you need another shock to help you focus?@@"<br>
<br>
"invigorated" you quickly shake and scurry back to your desk as her laughter echoes behind you.
<<case 'angry_noems'>>
You are waiting in eager anticipation when she pulls out a remote, clicking it only for a look of puzzlement, followed by annoyance to come over her face.<br>
<br>
"@@.npc_manager;Did you... You KNOW that a remote controlled plug is part of your uniform, show me your ass, SISSY!@@"<br>
<br>
Before you can react she has somehow made it around the desk and bent you over, one hand clutching your hair as she exposes your ass
<<if $scene.plug>>
and the <<=setup.getItemName(setup.getItemFromType("plug"))>> presently occupying it.<br>
<br>
"@@.npc_manager;What is this?@@" She asks before ripping it out of you as you gasp. "@@.npc_manager;THIS is not regulation, this is not regulation at all.@@"
<<else>>
your quite empty ass.<br>
<br>
"@@.npc_manager;What is this? You know you are suppose to be properly plugged, for training and so that I can better reward or punish you at any time... I know you had something in this cute hole this morning so what were you thinking removing it?@@"<br>
<br>
You try to respond but she cuts you off with a hard spank, "@@.npc_manager;that was a rhetorical question, of course you were not thinking at all, you foolish girl.@@"
<</if>>
<br><br>
Releasing her grip on you results in you falling to the ground, but you have barely collected yourself to push back to your feet before she has gone to her desk and back, a fresh remote controlled plug in one hand, and bottle of lube in the other. A quick squirt of the latter is all you get before the former is jammed deep in your hole.<br>
<br>
While you are still adjusting to this fresh intruder she brandishes the remote again, shock after shock coursing through you as you writhe on the floor, the punishment not stopping until you are crying and begging her for mercy.<br>
<br>
"@@.npc_manager;Hmmf@@" she states, standing over you as you desperately kiss and worship her feet, willing to do anything to prevent further punishment. "@@.npc_manager;I suppose that is a sufficient lesson for now. Go crawl back to your desk, and this time keep that cute ass properly filled!@@"<br>
<br>
"Yes, <<=setup.getNpcName('npc_manager', 'title')>>," you gasp, unable to muster the energy to stand as you obey her instruction to the letter; crawling on all fours out of the room before pulling yourself back up into your chair and trying to re-focus on your work.
<<case 'angry_ice'>>
With a scheming grin she reaches behind her desk to grab something before walking around and approaching you, one hand mysteriously behind her back.<br>
<br>
"@@.npc_manager;Is my poor secretary feeling too hot and bothered?@@" She coos, gently pulling your clothes aside with one hand. "@@.npc_manager;Well, let me just... cool those fires.@@" She adds before swiftly pressing an ice-pack against your <<getWordMyPenis $player>>.<br>
<br>
You let out a stifled cry as you wilt instantly, your arousal drained swiftly as she grins down at you. "@@.npc_manager;Shh, shh, shh, Mistress makes it aaaallll better.@@" She whispers as you whimper slightly, grateful when she removes the freezing pack a few moments later. "@@.npc_manager;There we go, nice and relaxed and ready to return to work, run along now, dear!@@"<br>
<br>
Fixing your clothes, and hoping they will do something to warm you up you nod and hurry out of the room.
<<case 'penis'>>
<<if $scene.angry>>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns and you instantly realise you've made a mistake.<br>
<br>
"@@.npc_manager;Have you learned nothing? That thing of yours is caged for a reason, you really need to learn to look elsewhere if you want to get pleasure in a proper manner. In any case I cannot help you, please return to your desk.@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> stares for several seconds before nodding sagely.<br>
<br>
"@@.npc_manager;I see, yes, I believe I can "help" you, please come over here and place your hands behind your back.@@"<br>
<br>
You do as instructed as she reaches into her desk drawer to come up with what you think is called a wand vibrator?<br>
<br>
"@@.npc_manager;Remain still.@@" She orders as she activates the vibrator and touches it to your cage.<br>
<br>
You gasp almost instantly, the powerful vibrations refracted and intensified as they run through the cage to stimulate you from all sides. You stagger and she pulls the vibe away with a playful frown.<br>
<br>
"@@.npc_manager;I said remain still, now behave or you will not get your reward.@@"<br>
<br>
Biting your lip you nod and do your best as she goes back and forth, touching the vibrator to your cage for a few seconds at a time, using it like a conductors wand as she repeatedly brings you to the brink of orgasm before pausing just long enough to keep you frustrated.<br>
<br>
You're at the point where the vibrations last for less than a second at a time, finally gasping out a desperate "please..." when she pulls the vibrator away once again.<br>
<br>
"@@.npc_manager;Perfection. Well, back to work for you, I do hope that I have been of assistance.@@"<br>
<br>
Your lip trembles as you realise that, after all this edgeing, she was planning to leave you unfulfilled the whole time. A glance at her gleefully grinning expression squashes all possibility of argument and you reluctantly fix your clothes and walk away, worse off than when you came in.
<</if>>
<<case 'anal'>>
<<if $scene.angry>>
You wiggle your butt but it is to no avail as she merely frowns.<br>
<br>
"@@.npc_manager;The effort is appreciated, and you do look quite cute, but I am afraid I am just too busy to take time away for such a misbehaving SISSY as yourself.@@"<br>
<br>
You pout but she remains firm as she dismisses you from her office.<br>
<br>
<<printThought $player "Maybe I should work harder to get on her good side.">>
<<else>>
<<if $scene.plug != "">>
Wiggling your butt in your <<=ps(setup.getNpcName('npc_manager', 'title'))>> direction you look back to see
<<if $scene.vibrate>>
her already with remote in hand, barely having time to react before your prostate is joyously thrumming with powerful vibrations.
<<else>>
her already approaching with a pleased expression on her face.
<</if>>
<br><br>
"@@.npc_manager;Such a good girl. Knowing the proper orifice for pleasure to flow into her body, well, one of them, at least.@@"<br>
<br>
Walking around her desk to stand behind you she grinds against your rear, dry humping you over the desk causing the plug in your rear to shift<<if $scene.vibrate>> as it continues to vibrate<</if>>. You moan and gasp as you enjoy the simulated pounding and it isn't long before you burst inside your cage, leaking into your underwear as her hips press against your rear.<br>
<br>
"@@.npc_manager;So easy!@@" She jokes as she steps away<<if $scene.vibrate>> and clicks to cease the vibrations<</if>>. "@@.npc_manager;Well, I am glad to have helped you out, but I must return to work, have a good day!@@"<br>
<br>
Staggering up to your feet you wipe the drool from your chin and mumble a thanks before heading back to your desk.
<<else>>
You wiggle your butt in invitation as <<=setup.getNpcName('npc_manager', 'formal')>> makes a show of snapping a latex glove over one hand before walking towards you.<br>
<br>
Bending you over and exposing your hole she coos as she begins rubbing lube around your puckered rear.<br>
<br>
"@@.npc_manager;Such a lovely sissy hole, so inviting!@@"<br>
<br>
You moan as the first of her fingers slides easily into you.
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
You moan as one finger becomes two, then three then her entire fist is pistoning into you.
<<else>>
You moan as one finger becomes two, then three as she slowly eases you open until, finally, her entire fist slides into your well-trained hole.
<</if>>
<br><br>
Churning you hard and deep she gives it to you just like your slut ass loves and it isn't long before you're making a right mess of your panties as you explode with joy through your cage.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
As you become accustomed to the first finger she works you wider, sliding a second, then finally a third inside of you to twist and thrust, teasing your hole wider and tickling your prostate until you explode in delight.
<<else>>
Sensing your novice experience she uses only a single finger inside of you but even this is more than enough as it curls toward your prostate, rubbing and stroking in new and exciting ways as she brings you to a rapid, and unique, climax.
<</if>>
<</if>>
<br><br>
"@@.npc_manager;eager, eager@@" she states in amusement, teasing your hole for just a little longer before sliding out and helping you back to your feet. You're still catching your breath as she helps you fix your clothes and sends you back to work with a smile and a parting butt-squeeze.<br>
<</if>>
<</if>>
<<default>>
ERROR unexpected manager masturbation style: <<=$scene.style>>
<</switch>>
<</if>>
<br><br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: npc_admin drops in for a meeting w/manager
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set _trigger = '{"trigger":"afternoon","minTimeDiff":24,"type":"chance","chance":25,"repeat":true,"priority":100,"lastDate":"' + $now + '"}'>>
<<addWorkEvent 'admin_office_sex_visit_repeat' _trigger '{"szene":"event_work_manager_and_admin_1_alt","length":"60"}'>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_5'
0
'event_psychiatrist_session_admin_manager_sex_1'
false
'theme_psychiatrist_admin_header'
>>
<</if>>
here
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
You're working away when you notice that <<=setup.getNpcName('npc_manager', 'formal')>> next meeting is with your friend <<=setup.getNpcName('npc_admin', 'first')>>. Arriving a couple minutes early he drops by your desk to visit.<br>
<br>
"@@.npc_admin;Hey, bro, how's the job? Got my first status meeting with the boss lady, been working hard to establish myself in the new position. He glances up at the clock. Figured I'd come a few minutes early to say hi to my best bro plus, well, you know what she says...@@"<br>
<br>
He smiles and the two of you repeat in unison "@@.npc_admin;punctuality is a pillar of society.@@" He laughs.<br>
<br>
"@@.npc_admin;Whelp, that's my cue, if I'm not out in an hour send a rescue party.@@"<br>
<br>
You catch a glimpse of <<=setup.getNpcName('npc_manager', 'formal')>> welcoming him into her office before the door closes on their meeting.<br>
<br>
[<<moveTo "event_work_manager_and_admin_2" "Keep working." 1200>>]
</div>/*#
#desc: npc_admin drops in for a meeting w/manager
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.repeat = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
You're working away when <<=setup.getNpcName('npc_admin', 'first')>> shows up for another meeting with your manager.<br>
<br>
"@@.npc_admin;Hey, bro, you holdin' down the fort?@@" He asks with an awkward grin. He seems a bit distracted and you reflect back on what he was doing with, or more accurately, to, your <<=setup.getNpcName('npc_manager', 'title')>> the last time he visited. "@@.npc_admin;Imma just head on in.@@" He states walking past your desk and disappearing into the inner office.<br>
<br>
[<<moveTo "event_work_manager_and_admin_2" "Keep working." 1200>>]
</div>/*#
#desc: overhear manager fucking admin
#status: WRITTEN 0.7.0.0
#*/
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Your work is disrupted by a loud cry emanating from your <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office.<br>
<br>
Jumping from your seat you rush to her door only to hear another shout, this one more clearly.<br>
<br>
"@@.npc_manager;Yes, harder!@@"<br>
<br>
<<if $scene.repeat>>
You sigh, it appears that <<=setup.getNpcName('npc_manager', 'title')>> fucking your friend is going to be a bit of a standard thing. Barging in on them seems... very ill advised but that doesn't mean you have to sit here doing nothing...
<<else>>
You freeze, is she... are THEY having sex?<br>
<br>
You remember <<=setup.getNpcName('npc_admin', 'first')>> joking about you setting him up with your boss but he can't... Then again given your own relationship with your <<=setup.getNpcName('npc_manager', 'title')>> maybe you shouldn't be surprised...
<</if>>
<br><br>
[<<moveTo "event_work_manager_and_admin_3" "Try and sneak a peek." 600 "<<set $scene.watch=true>>">>]<br>
[<<moveTo "event_work_manager_and_admin_3" "Just go back to your desk." 1800 "<<set $scene.watch=false>>">>]
</div>/*#
#desc: watch/don't watch manager fucking admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.watch>>
<<set $npc_admin.flags.sawHimfuckingManager = true>>
<<applyExperience 'penis' 8 'very' $INCOGNITO>>
<<set $player.timebased.horny += 20>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.watch>>
Lucking out that the door wasn't fully latched you are able to peek in to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office to find your suspicions confirmed. <<=setup.getNpcName('npc_admin', 'first')>> is laying across her desk while she rides him. Her back towards you means you can't see her face but her posture makes it clear that she is the one in charge, even as her moans attest to how much she is enjoying herself.<br>
<br>
You stare entranced, watching as she rises and falls on <<=ps(setup.getNpcName('npc_admin', 'first'))>> <<getWordPenis>>. His hands around her waist drive home the size disparity between the two of them but there is no question that <<=setup.getNpcName('npc_manager', 'formal')>> is in command of the situation, controlling the pace as she rolls her hips and pumps up and down.<br>
<br>
You feel like you're watching a private porno the way they go at it, your gorgeous <<=setup.getNpcName('npc_manager', 'title')>> and your muscle-bound friend; the longer you stare the more turned on your feel. Perhaps it is merely the fact that you are presently locked in chastity but you find yourself fantasizing about taking <<=ps(setup.getNpcName('npc_manager', 'formal'))>> place, feeling <<=ps(setup.getNpcName('npc_admin', 'first'))>> glorious cock plunging into you as his strong arms support you...<br>
<br>
You are broken out of your fantasy by a loud dual climax, <<=setup.getNpcName('npc_manager', 'formal')>> pitching forward as <<=ps(setup.getNpcName('npc_admin', 'first'))>> cock slides free, large, glistening and glorious even half-wilted.<br>
<br>
Afraid of being caught you quickly back away and return to your desk, unable to escape your earlier fantasies...<br>
<br>
<<printThought $player "<<=setup.getNpcName('npc_admin', 'first')>> has always been my friend and he's definitely straight but well... things are different and I've caught him looking a couple times since I started my transformation...">><br>
<br>
Making a concerted effort to look "busy" you don't even look up as <<=setup.getNpcName('npc_admin', 'first')>> emerges a few minutes later, fixing his shirt as he passes by your desk and departs. You sneak a quick look as he passes, feeling a fresh rush of excitement... do you dare? Maybe if you tried buttering him up during a shared activity first... perhaps spending some time with him at the gym might give you an opportunity?
<<else>>
Trying to ignore the sounds coming from the inner office you return to your desk. After some time things quiet down and <<=setup.getNpcName('npc_admin', 'first')>> emerges. Fixing his coat on the way past your desk he just nods in your direction, seemingly avoiding making eye contact.
<</if>>
<br><br>
You let out a sigh of relief only to get a message from your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;Please join me in my office, I have need of your services.@@"<br>
<br>
<<if $scene.repeat>>
You already know what she's going to ask and yet ignoring her order is all but unthinkable.<br>
<br>
<</if>>
[<<moveTo "event_work_manager_and_admin_4" "Answer the summons." 60>>]
</div>/*#
#desc: lick manager clean after she fucked admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office to find her sitting on the edge of her desk, her dress parted to exposed her glistening pussy flecked with cum.<br>
<br>
"@@.npc_manager;Good, there you are. If you would please attend to this - your friend is quite a lovely man but he left behind something of a mess and I thought that, rather than spend the rest of the afternoon leaking into my underthings, you might attend to things and enjoy a SISSY treat.@@"<br>
<br>
You are stunned, staring in shock for a moment until her eyes narrow.<br>
<br>
"@@.npc_manager;What are you waiting for? Get over here and get to licking.@@"<br>
<br>
[<<moveTo "event_work_manager_and_admin_5" "Crawl over and start licking." 360 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_work_manager_and_admin_5" "She can't be serious, object!" 60 "<<set $scene.lick=false>>">>]
</div>/*#
#desc: lick manager clean after she fucked admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.lick>>
<<applyExperience 'oral' 5 'little' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'very' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
The sight, and smell, of <<=ps(setup.getNpcName('npc_admin', 'first'))>> fresh hot <<getWordCum>> can't help but have you excited as you drop to your knees and crawl over between <<=ps(setup.getNpcName('npc_manager', 'formal'))>> legs.
<<else>>
It would be hard for you to resist the offer of fresh <<getWordCum>> and you soon find yourself between <<=ps(setup.getNpcName('npc_manager', 'formal'))>> legs.
<</if>>
<br><br>
She lets out a soft moan as your tongue slides between her folds though you are unsure which of you is enjoying things more, either way you barely even pause for air as you search out every delectable morsel.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
You may be starting to develop a taste for cum but this is... something else. You try to console yourself with the fact that, technically, you're performing a sort of cunnilingus, right?
<<else>>
Even though the thought of licking up a "cream pie" disgusts you and yet you find yourself kneeling between <<=ps(setup.getNpcName('npc_manager', 'formal'))>> legs and setting to work.
<</if>>
The salty-sweet mix of feminine and masculine that is <<=ps(setup.getNpcName('npc_admin', 'first'))>> salty seed combined with <<=ps(setup.getNpcName('npc_manager', 'formal'))>> more delicate flavour, your initial hesitancy replaced by a strange hunger as your tongue burrows deep to scoop out every drop of <<getWordCum>> you can find.
<</if>>
<br><br>
You can hear her start to breath a bit heavier when she finally gives you a rewarding head-pat and then gently pushes you away. "@@.npc_manager;Very nicely done. Do enjoy the rest of your afternoon, you have once again risen to the occasion and provided the sort of service a SISSY secretary can be proud of.@@"<br>
<br>
You blush at the fact that you have arrived at the point where licking your friend's cum out of your manager's cunt is considered an "attagirl" work moment. You rise to your feet and depart.
<<else>>
Though a part of you says it is futile you feel you ought to draw a line. Certainly you have done... things since accepting this job but this... licking your friend's cum out of your manager's cunt? No, that is too much and you shake your head.<br>
<br>
"@@.npc_manager;No?@@" She seems more surprised than angry, "@@.npc_manager;I thought for sure a SISSY slut like you would jump at the chance... have you been keeping up with your therapy?@@"<br>
<br>
<<printThought $player "Wait, what does she mean by that?">><br>
<br>
She shakes her head and lets her dress slide back down to conceal her crotch. "@@.npc_manager;Well, if you are uninterested in a treat I do not have the time to force it upon you, your loss but know that I am quite disappointed in you. A proper SISSY secretary should jump at this sort of opportunity, both on face, and because her existance is defined by eager service for her <<=setup.getNpcName('npc_manager', 'title')>>.@@"<br>
<br>
With a wave she dismisses you.
<</if>>
<br><br>
[<<moveTo $workEventReturn "Back to work." 120>>]
</div>/*#
#desc: npc_admin drops in for a meeting w/manager after you tried to seduce him
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
You're diligently working away when <<=setup.getNpcName('npc_admin', 'first')>> appears. You do a double take, glancing from him to your screen and back to confirm that no, she doesn't have anything on the books today.<br>
<br>
He flashes a lop-sided grin to try to diffuse tension. "@@.npc_admin;Uh, hi so... <<=setup.getNpcName('npc_manager', 'other')>> said she had a bit of an urgent need for me, guess she didn't tell you?@@"<br>
<br>
You shake your head, all of the emotions from the morning flooding back and leaving you just as speechless.<br>
<br>
"@@.npc_admin;So, how's the day going? I, uh, missed you at the gym, so much better to lift with a partner, y'know?@@"<br>
<br>
You nod, still seemingly unable to find your voice you appreciate the implications of his comment - that things are still "good" between the two of you but are still grateful when <<=setup.getNpcName('npc_manager', 'formal')>> appears in the doorway to interrupt.<br>
<br>
"@@.npc_manager;Now, now, stop distracting my lovely secretary. She has work to do... and so do you, now get in here.@@"<br>
<br>
"@@.npc_admin;Yes ma'am!@@" he replies hurriedly, tossing a wave back at you before disappearing into her office and the heavy door closing with a thud.<br>
<br>
You release your held breath and slump in your chair. Is this how it's going to be? You freezing up like a bashful schoolgirl whenever you're in <<=ps(setup.getNpcName('npc_admin', 'first'))>> intoxicatingly manly presence?<br>
<br>
You sigh and try to focus on your work only to get a summons from <<=setup.getNpcName('npc_manager', 'formal')>> about fifteen minutes later.<br>
<br>
[<<moveTo "event_work_manager_admin_cock_2" "Go see what she needs." 900>>]
</div>/*#
#desc: manager plays matchmaker with you and admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png">> /% TODO antlers + admin %/
<div id="invframe" class="scrolltext">
Focused on your <<=ps(setup.getNpcName('npc_manager', 'title'))>> order you aren't even thinking as you walk into the room only to brought to a dead stop as you walk in to find <<=setup.getNpcName('npc_admin', 'first')>> with his pants around his ankles and her kneeling in front of him, his large, hard cock in hand.<br>
<br>
Seeing you his eyes go wide in fright and he leaps, fumbling for his pants only to run into some measure of difficulty as the combination of their fitted tailoring and his very engorged member cause issues.<br>
<br>
"@@.npc_manager;Oh calm down, I summoned <<=$player.first_name>> to take care of multiple problems.@@"<br>
<br>
By no means placated <<=setup.getNpcName('npc_admin', 'first')>> looks back and forth between the two extremes of femininity before imploring you with a measure of desperation "@@.npc_admin;look, I'm so sorry, I mean, I know what it looks like but-@@"<br>
<br>
"@@.npc_manager;Oh shush,@@" she states, her authoritative voice casually cutting him off before turning towards you. "@@.npc_manager;It was exactly what it looks like - I was trying to suck his cock, only fair considering he just did a wonderful job eating me out.@@"<br>
<br>
You don't think you've ever seen <<=setup.getNpcName('npc_admin', 'first')>> this embarrassed or at a loss for words as he seems to have finally wrangled his pants back around his waist... though the still-hard outline of his <<getWordPenis $player>> remains VERY visible.<br>
<br>
"@@.npc_manager;Anyway, here I am looking to reciprocate and it seems that I am at a bit of a loss to properly handle someone of his... magnificence in that manner. That thought lead naturally, of course, to the lovely cocksucking SISSY secretary under my employ plus well... Let's be honest, the sexual tension between the two of you is obvious to anyone with a brain; I was hoping you'd sort it out on your own at the gym - all that blood pumping, his muscles bulging, proving irresistible...@@" She trails off as the both of you are left blushing.<br>
<br>
"@@.npc_manager;Alas, it seems that you two are just too slow for my timetable and so I decided to take this opportunity to play a little matchmaker. So come on, <<=$player.first_name>>, show him how you feel. You can even use your mouth in other ways if you can't manage to find the words.@@"<br>
<br>
You aren't sure what has you more shocked, the blunt "help" she just provided... or that fact that <<=ps(setup.getNpcName('npc_admin', 'first'))>> seems to be tenting even more noticeably inside his tight pants...<br>
<br>
[<<moveTo "event_work_manager_admin_cock_3" "No, I want him but... not like this, not with her watching." 60 "<<set $scene.style='no'>>">>]<br>
[<<moveTo "event_work_manager_admin_cock_3" 'Ask <<=setup.getNpcName("npc_manager", "formal")>> if you could, perhaps, have some privacy?' 60 "<<set $scene.style='private'>>">>]<br>
<<if setup.getTotalValue("penis") > 10 || setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_work_manager_admin_cock_3" "Drop to your knees and make all three people in the room happy." 60 "<<set $scene.style='slut'>>">>]<br>
<<else>>
[@@.link_locked;You aren't so much of a bimbo, or so obsessed with cock, as to just dive in like this...@@]
<</if>>
</div>/*#
#desc: you react to manager playing matchmaker with you and admin
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.style == 'slut'>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 15 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<set $npc_admin.flags.sucked_for_manager = 'slut'>>
<</if>>
<<addEvent 'admin_first_dinner_date'
'{"trigger":"always","type":["next"],"location":"room_office_after_work","priority":100}'
'{"szene":"event_admin_first_date_1"}'
>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_20'
0
'event_psychiatrist_session_admin_solution'
false
'theme_psychiatrist_admin_header'
>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'no'>>
Somehow you find your voice glancing from <<=setup.getNpcName('npc_admin', 'first')>> to <<=setup.getNpcName('npc_manager', 'formal')>>
before settling on the latter.<br>
<br>
You stutter, almost unable to form coherent sentences as you try to explain to <<=setup.getNpcName('npc_admin', 'first')>> how sorry you are. Yes, you have feeling, yes you wanted something romantic, you wanted something phys... but not like this... not like this.
<br>
Your voice trails off as you hold back tears at the thought of your dreams being now shattered. Surprisingly your display seems to finally rouse <<=setup.getNpcName('npc_admin', 'first')>> from his own shocked stillness as he is suddenly at your side, cradling you in his large, strong arms.<br>
<br>
"@@.npc_admin;Shhh, it's ok I should have said something this morning but... I was scared.@@"<br>
<br>
Holding you protectively he turns back to confront <<=setup.getNpcName('npc_manager', 'formal')>> "@@.npc_admin;look, I know you run things a bit... different here on the upper floors, and I guess you meant well but... we'll handle things on our own, thank you very much.@@" Turning back to you his voice softens. "@@.npc_admin;Tell you what, how about we go out to dinner tonight, my treat and we can... figure things out.@@"<br>
<br>
Your heart swelling and somehow freezing your vocal cords once again you just nod.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> just shrugs. "@@.npc_manager;I expect the two of you to expedite the amelioration of your non job-related extracurricular interpersonal issues in as hasty a manner as possible. I simply do not have the necessary time for my subordinates being constantly distracted by unresolved sexual tension. Fornicate or don't just stop procrastinating about it.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> shepherds you out of the room as <<=setup.getNpcName('npc_manager', 'formal')>> looks on with a hint of a smile. Back in your inner office with you manager out of view he finally removes his arm and steps away, your shoulders immediately missing his strong grasp.<br>
<br>
"@@.npc_admin;I'll, uh... see you tonight.@@" He mumbles, his brief bravado seemingly vanishing fast as he hesitates, then picks you up for a brief, but passionate kiss. "@@.npc_admin;More on that later.@@" He states sheepishly before dashing off and leaving you by yourself.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
<<case 'private'>>
Surprising the both of you you glare at <<=setup.getNpcName('npc_manager', 'formal')>> for a moment. "Could we have some time just the two of us?" <br>
<br>
Raising an eyebrow she slowly nods.<br>
<br>
"@@.npc_manager;Certainly, but... I do expect you to sort this thing out between you. Seriously, just fuck already; you both want it and I am fed up with my subordinates being constantly distracted by their foolishly unresolved sexual tension.@@"<br>
<br>
She leaves and the silence lingers, you try to open your mouth but fail to find the words and it is, instead, <<=setup.getNpcName('npc_admin', 'first')>> who breaks the silence. "@@.npc_admin;Look, I think we have um... a lot to talk about and I dunno about you but the mood right now is well... a bit spoiled. Tell you what; how about I take you out for dinner tonight and we can have a nice long discussion to figure things out...@@" He pauses. "@@.npc_admin;Shit... I don't suppose she's going to get upset if we come out too soon? She seemed... kind of dead set on us doing it, gotta say she's an impressive manager but, well... a bit of a freak!@@"<br>
<br>
<<printThought $player "You have no idea...">><br>
<br>
<<if setup.getTotalValue("penis") >= 10>>
He turns to go as you find your gaze drawn to the still-hard outline of his cock...<br>
<br>
[<<moveTo "event_work_manager_admin_cock_4" "Suggest that maybe it'd be better if you sucked his cock now..." 60 "<<set $scene.suck = true>>">>]<br>
<<else>>
[@@.link_locked;You don't have the wherewithal to suck his cock right now.@@]<br>
<</if>>
[<<moveTo "event_work_manager_admin_cock_4" "Follow him out of the office." 60 "<<set $scene.suck = false>>">>]
<<case 'slut'>>
<<=setup.getNpcName('npc_admin', 'first')>> starts to talk only for you to cut him off, surprising him and <<=setup.getNpcName('npc_manager', 'formal')>> both with the sultry steel in your voice.<br>
<br>
"No, I mean, yes, we need to talk about our relationship - maybe tonight, when you take me to dinner but right now? Right now I want. To suck. Your. Cock." <br>
<br>
<<=ps(setup.getNpcName('npc_admin', 'first'))>> jaw drops as his other "head" shows its approval of the idea by bursting free of his half-zipped pants. You notice <<=setup.getNpcName('npc_manager', 'formal')>> out of the corner of your eye looking on in pride but right now you have eyes only for <<=setup.getNpcName('npc_admin', 'first')>> as you walk up to him and then drop to your knees to take him in hand.<br>
<br>
"@@.npc_admin;You don't have to-@@" He whispers, a tremble in his voice as your fingers dance up and down his shaft.<br>
<br>
"Have to?" You reply, running your tongue from his base all the way up to his dripping tip. He tastes even better than you imagined, strong and masculine in its purest form."No, but I WANT to. Now shut up, grab my hair and let me drain every wonderful salty drop from these gorgeous balls." <br>
<br>
Spreading your lips you take him into your mouth, your tight suction around his cock eliciting a moan on the first stroke.<br>
<br>
<<include suckAdminCock>>
<br><br>
Gently licking his <<getWordPenis $player>> clean as you stare lovingly up at him from your kneeling position he seems at a loss for words until <<=setup.getNpcName('npc_manager', 'formal')>> intercedes.<br>
<br>
"@@.npc_manager;Very good, I think that is sorted out just fine. You may return to your desk now, <<=$player.first_name>> I want a few more words with your friend then you can look forward to your dinner this evening.@@"<br>
<br>
Reluctantly releasing your hold on his glorious member you tuck him back into his pants and buckle things closed, smiling at him the whole time before dropping into a parting curtsey and skipping out of the room and back to your desk.<br>
<br>
A couple minutes pass and <<=setup.getNpcName('npc_admin', 'first')>> emerges, still looking a bit dazed, especially when you flash him a wink on his way past your desk. As he leaves the office <<=setup.getNpcName('npc_manager', 'formal')>> lingers in her doorway, smiling one last time before speaking two words - "@@.npc_manager;Good girl@@" that have you straighten with pride.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
<<default>>
ERROR unexpected scene.style: <<=$scene.style>>
<</switch>>
</div>/*#
#desc: suck admin's cock in manager's office
#status: WRITTEN 0.7.0.0
#*/
<<if setup.getTotalValue("oral") > 15>>
He may be large but you are a cocksucking queen, gulping him to the base as he moans in shock. You hum in pleasure as you feel him deep in your throat, working his full length as your hands gently massage his balls staying at depth as long as you can before pulling back with a lip-smacking pop before you take in a deep breath.<br>
<br>
You can tell by his expression that he is shocked at your skill, a hand briefly on your head falling to one side as he just gawks. Rolling your eyes you don't bother correcting his failure, taking care of forcing yourself back down his <<getWordPenis $player>> on your own as you greedily suck, eager for his heavy balls to reward you with their creamy cargo.
<<else>>
He is big... a little too big for even your rapidly developing skills and though you do your best, you end up about a hands-width shy of a proper deepthroat. From his reaction he doesn't mind your failure in the least, the fact that <<=setup.getNpcName('npc_manager', 'formal')>> is looking on seemingly forgotten as you bob and suck.<br>
<br>
Despite being forced to compensate for your lacking oral capacity with your hand you give him a blowjob that dreams are made of, your lips worshiping every centimeter of his magnificent chocolate shaft as you bring him towards an eagerly anticipated orgasm.
<</if>>
<br><br>
He cums, hard, but you are careful to time it so that he pumps his load into your mouth rather than splatter your makeup or spray across your <<=ps(setup.getNpcName('npc_manager', 'title'))>> office.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Like liquid ambrosia his cum is the best you can remember ever tasting, rich and creamy and in such volume your cheeks swell and you are forced to gulp some of down lest it spill out past you lips.
<<else>>
His cum is thick and strong and delicious as you are forced to swallow quickly lest its copious volume spills out past your lips.
<</if>>
With a smile you make a show of swallowing with a loud gulp, smiling and then opening your mouth to show off. Licking your lips you rise to your feet.<br>
<br>
"@@.npc_manager;Well, that was lovely but I believe you had both best return to work.@@" You nod towards <<=setup.getNpcName('npc_manager', 'formal')>> who somehow manages to look even more proud than she already was.<br>
<br>
Turning back towards <<=setup.getNpcName('npc_admin', 'first')>> you smile and say you'll see him for dinner and that you hope he's looking forward to it as much as you are! Looking almost drunk from his orgasm he just nods as you spin on your heels and head back to your desk.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
His cum is strong and thick and salty and there is so much of it you struggle to choke it down without making a mess.
<<else>>
His cum is potent and thick, viscous and salty and disturbingly somehow alluring... You don't get much time to focus however as you instead struggle merely to keep up with its production, gulping as fast as you can lest the bitter brew spill out past your lips and make a mess.
<</if>>
<br><br>
You feel like you've just sucked from a firehose, barely managing to swallow things down as his balls finally drain. Panting for air, your mouth still heavy with aftertaste you stare in amazement that his perfect balls produced so much.
<</if>>/*#
#desc: non-slut end of admin/you manager matchmaking scene
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.suck>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 15 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_admin' 3>>
<<set $npc_admin.flags.sucked_for_manager = 'voluntary'>>
<</if>>
<</if>>
<<if $scene.suck>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<else>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<if $scene.suck>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_admin.png">>
<<else>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
He seems a bit stunned by your offer, though you can't help but notice the outline of his <<getWordPenis $player>> twitch through his pants.<br>
<br>
"@@.npc_admin;You really don't have to- I mean, you know I didn't ask her to do this, I mean I would never-@@"<br>
<br>
Walking closer as he stutters you take the expeditious route and just pull his cock out to start sucking. Regardless of his initial objections you have lips that few men could resist and his words soon turn to moans.<br>
<br>
<<include suckAdminCock>><br>
<br>
"@@.npc_admin;Holy sh- you, I-@@" once again he seems at a loss for words, clearly in awe of your skills. You just wink, making a show of licking your lips as you rise to your feet.<br>
<br>
You tell him you'll see him after work, flashing a wink before heading back to your desk.<br>
<br>
Looking up from her phone <<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Done already? you could have savoured things a bit longer but oh well, back to work.@@"<br>
<br>
She walks past as you take your chair, a few minutes later <<=setup.getNpcName('npc_admin', 'first')>> files back out, glancing at you for a moment in awe before hurrying past your desk and out of the office.
<<else>>
Things feel a bit awkward as you walk a couple steps behind <<=setup.getNpcName('npc_admin', 'first')>> as he leads the way out of the office. Sitting on the edge of your desk <<=setup.getNpcName('npc_manager', 'formal')>> looks up from her phone with a raised eyebrow. "@@.npc_manager;Finished so soon? Now I know <<=setup.getNpcName('npc_admin', 'first')>> is far more than a minute-man so clearly you forwent the opportunity I provided for the two of you.@@" She sighs "@@.npc_manager;more's the pity, but time and tide wait for neither man nor woman. Back to work, the both of you, though let me wish you luck on your date tonight being a bit more... productive.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> returning to her office you have already sat back down at your desk when you realize that the dinner arrangement was made after she left the room...<br>
<br>
<<printThought $player "I guess <<=setup.getNpcName('npc_ai', 'first')>> isn't the only one with access to the cameras in her office...">>
<</if>>
<br><br>
[<<moveTo $workEventReturn "Back to work." 60>>]
</div>/*#
#desc: phase 2 morning, call from manager if late, receive sissy nameplate,
#status: WRITTEN 0.7.0.0
#*/
<<include enterroom>>
<<if $roomchange == true>>
<<set _nextDate to setup.setNextDate($now, 0, 11, 0)>>
<<if !$player.flags.workExhausted>>
<<set $player.flags.workExhausted = true>>
<<set $player.willpower.bonus += 1>>
<<addEvent 'workExhaustedEvent'
'{"trigger":"always","type":["date"],"priority":200}'
'{"szene":"event_work_exhausted_2"}'
_nextDate
>>
<<else>>
<<gainWillpower $player 1>>
<<addEvent 'workExhaustedEvent'
'{"trigger":"always","type":["date"],"priority":200}'
'{"szene":"event_work_exhausted_repeat"}'
_nextDate
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You stagger into the office half dead, landing heavily into your chair<<if setup.getItemFromType("plug") != "">>, a movement that causes your <<=setup.getItemName(setup.getItemFromType("plug"))>> to thrust deeper into you and make you gasp<</if>>.<br>
<br>
You try to focus your attention, feeling proud of yourself for pushing through your physical exhaustion in your determination to fulfill the duties of your job.<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Start working" 0>>]
</div>/*#
#desc: manager catche you passing out at your desk due to coming to work exhausted
#status: WRITTEN 0.7.0.0
#*/
<<include enterroom>>
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
TODO
</div>/*#
#desc: manager catche you passing out at your desk due to coming to work exhausted
#status: WRITTEN 0.7.0.0
#*/
<<include enterroom>>
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
TODO
</div>/*#
#desc: wait/contacted for after work secretary performance review
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<if $roomchange == true>>
<<set $review = {}>>
<<set $review.remuneration = false>>
<<set $review.firstremuneration = false>>
<<set $review.special = "">>
<<if $now.getUTCDay()==4>>
<<set $review.remuneration = true>>
<<if !$player.flags.firstremuneration>>
<<set $player.flags.firstremuneration = true>>
<<set $review.firstremuneration = true>>
<</if>>
<</if>>
<<switch $npc_manager.stage>>
<<case 1>>
<<if !$review.remuneration &&
$player.flags.fem_style.unisex!="" &&
$player.flags.fem_style.chastity!="">>
<<switch $player.flags.fem_style.chastity>>
<<case "obedient" "voluntary">>
<<set $review.special = "stage1_end_good_girl">>
<<default>>
ERROR unexpected fem_style chastity: <<=$player.flags.fem_style.chastity>>
<</switch>>
<</if>>
<<case 2>>
<<if $player.flags.fem_style.female!="" &&
$player.flags.fem_style.makeup!="" &&
$player.flags.fem_style.name!="" &&
($npc_manager.flags.bad_girl.got_sissy_underwear || $npc_manager.flags.good_girl.got_sissy_underwear) &&
($npc_manager.flags.bad_girl.got_pink_secretary || $npc_manager.flags.good_girl.got_pink_secretary) &&
$npc_manager.flags.pegging.base_style == "" &&
$npc_manager.flags.party.first_attend &&
$npc_admin.flags.promotion &&
(!$currentTasks.hasOwnProperty("task_chastity_trial") || $npc_manager.flags.took_adv_key) &&
!$review.remuneration>>
<<if setup.getAverageFemstyle($player) == "forced">>
<<set $review.special = "stage2_end_bad_girl">>
<<else>>
<<set $review.special = "stage2_end_good_girl">>
<</if>>
<</if>>
<<case 3>>
<<case 4>>
<<case 5>>
<<default>>
ERROR: unexpected stage!: <<=$npc_manager.stage>>
<</switch>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You clock out and get ready to leave, getting everything in order before waiting for <<=setup.getNpcName('npc_manager', 'formal')>> to summon you for your daily performance review. Fortunately she follows her own advice regarding punctuality and you soon see an icon flashing on your screen that pops up with a message from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, come see me now for your daily performance review.@@"<br>
<br>
<<switch $review.special>>
<<case "">>
[<<moveTo "event_manager_performance_review_1" "Enter the office." 60>>]
<<case "stage1_end_good_girl">>
[<<moveTo "event_manager_stage1_end_reward_1_alt" "Enter the office." 60>>]
<<case "stage2_end_bad_girl">>
[<<moveTo "event_manager_pegging_0_bad_girl_0" "Enter the office." 60>>]
<<case "stage2_end_good_girl">>
[<<moveTo "event_manager_pegging_0" "Enter the office." 60>>]
<</switch>>
</div>/*#
#desc: after work secretary performance assessment
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<<if $player.work.tmphoursDone == 0>>
<<set $scene.workEffectiveness = 0>>
<<else>>
<<set $scene.workEffectiveness = ($player.work.tmpworkPensum/$player.work.tmphoursDone)>>
<</if>>
<<if $scene.workEffectiveness>=1.125>>
<<set $npc_manager.workdiscipline+=0.5>>
<<elseif $scene.workEffectiveness>=1.0>>
<<set $npc_manager.workdiscipline+=0.25>>
<<elseif $scene.workEffectiveness>=0.875>>
<<set $npc_manager.workdiscipline+=0>>
<<else>>
<<set $npc_manager.workdiscipline-=0.5>>
<</if>>
<</if>>
<<if ($npc_manager.anger-$npc_manager.satisfaction)>5>>
<<set $scene.tmpDM = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkWornListTag(['underwear','stockings','garter'],'or')==true>>
<<initRoom>>
<<moveTo 'event_manager_performance_review_2'>>
<</if>>
<<else>>
<<set $scene.tmpDM = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Have a seat. Please.@@"<br>
<br>
You sit down in the comfortable chair in front of her work desk.
<<if setup.getTotalValue('submission')<5>>
Again there is that strange feeling nagging at the back of your head. How does she always look down on you? Is there a trick to it or simply your mind's illusion?
<<else>>
The strange feeling of hesitation you once felt in the back of your mind when in her presence is steadily becoming but a distant memory. Of course it makes sense that she always looks down at you, she is superior to you. In no longer matters the strange physics of it, you have accepted your role as her subordinate, having done so many things for her you wouldn't have done otherwise, or for anyone else.
<</if>>
<br><br>
<<if $scene.workEffectiveness>=1.125>>
"@@.npc_manager;Well, colour me impressed. You did really well today. You accomplished more than I anticipated. Seems like I made the right decision in hiring you.@@"
<<elseif $scene.workEffectiveness>=1.0>>
"@@.npc_manager;Well, your working performance is good for a newcomer from a different background. Please maintain this level of performance in the future.@@"
<<elseif $scene.workEffectiveness>=0.875>>
"@@.npc_manager;Your performance today was quite lacklustre. Do not forget that I want you to strive for nothing less than perfection.@@"
<<else>>
<<if $npc_manager.stage >= 3>>
"@@.npc_manager;I know you made it through your probationary period but did you think that would relax expectations? Things are more serious now, if you are fired it is no longer "goodbye, nice working with you..." no, per your contract the company is not just allowed, but required to attempt to find you a more suitable position into which you can be repurposed... That would be quite a pity, to make me so regret the decision to hire you...@@"
<<else>>
"@@.npc_manager;You will have to raise your efforts a lot more if you want to keep this job past your probationary period. Do not make me regret my decision to hire you.@@"
<</if>>
<</if>>
<br><br>
<<if $npc_manager.anger>=$npc_manager.satisfaction>>
"@@.npc_manager;Still, you managed to mess up
<<if ($npc_manager.anger-$npc_manager.satisfaction)>5>>
much too often for my taste. I am afraid that another disciplinary measure is required to remind you of your duties.
<<elseif $npc_manager.anger>3>>
often. Unless you want another disciplinary measure, you had better try harder from now on.
<<else>>
a little bit. Nothing too major. Just make sure it never happens again and you will be just fine.
<</if>>
Well, here is to a better, more obedient tomorrow!@@"
<br><br>
<</if>>
<<if $scene.tmpDM == true>>
"@@.npc_manager;We might as well start right now. Please take off everything besides your underwear.@@"
<<else>>
<<if $review.remuneration>>
<<if $review.firstremuneration>>
"@@.npc_manager;Okay, this may be a little bit strange for you <<=$player.first_name>>, since you were used to getting your salary at the end of the month at your last job. But since I know you were terminated without severance I have arranged to make an exception during your trial period. You will get your wages every Thursday evening after your performance review. After the trial period ends you will get a regular wage at the end of the month like everyone else, but in the short term the more frequent payments should help give you some solvency, as well as more immediately reflect your willingness to perform as marvelously as possible.@@"
<<else>>
"@@.npc_manager;Well, today is Thursday again. Let us progress straight to the part where we discuss your remuneration, shall we <<=$player.first_name>>?@@"
<</if>>
<br><br>
[<<moveTo "event_manager_salary" "Continue." 60>>]
<<else>>
<<set $player.cutscene.lockinventory = false>>
"@@.npc_manager;Well, this will be all for today. You may leave <<=$player.first_name>>.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office.">>]
<</if>>
<</if>>
</div>/*#
#desc: mux to route to correct version of after-work punishment
#status: FINISHED 0.4.0.0
#*/
<<set $returnto = "event_manager_performance_review_3">>
<<if $npc_manager.perversion < 5>>
<<goto npc_manager_perversion_1>>
<<else>>
/%TODOfuture%/
<<goto npc_manager_perversion_1>>
<</if>>/*#
#desc: recover from after work spanking
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<</if>>
<<if setup.getIndecentValue($player)==0>>
<<initRoom>>
<<moveTo "event_manager_performance_review_4">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
It takes you a while but you manage to somewhat recover from the pain of your "discipline" while <<=ps(setup.getNpcName('npc_manager', 'formal'))>> cleans the paddle and places it back into the drawer.<br>
<br>
"@@.npc_manager;Would you please put your clothes back on <<=$player.first_name>>? As much as I love to look at the art I left on your behind, it is somewhat distracting. Thank you.@@"<br>
</div>/*#
#desc: post after-work punishment manager dismisses or routes to getting your paycheck (depending on day)
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 1)>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Very good. Naturally I want you to continue to honor our agreement in the near future as well <<=$player.first_name>>.@@"<br>
<br>
<<if $review.remuneration>>
"@@.npc_manager;Now that that is sorted out I suppose we should move on to your compensation...@@"<br>
<br>
[<<moveTo "event_manager_salary" "Continue." 60>>]
<<elseif setup.getUTCDate($now)==$player.work.lastWorkDay>>
"@@.npc_manager;Today is the last day of the month. Once you are out of the probationary period and reach regular status as an office Secretary, you will get your evaluations only once a month. Since I already gave you your evaluation today I suppose we can skip this part today. Let us get straight to the part where we discuss your remuneration, shall we?@@"<br>
<br>
[<<moveTo "event_manager_salary" "Continue." 60>>]
<<else>>
"@@.npc_manager;Well, that would be all for today, have a nice evening.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office" 60>>]
<</if>>
</div>/*#
#desc: coffee random event, "whipped" special
#status: WRITTEN 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_barista.png">>
<div id="invframe" class="scrolltext">
Entering Coffee Shop 52 you can't help but note that it's a bit busier than normal. A glance up at the menu board gives you a clue as to why. "SPECIAL! Whatever you want, have it WHIPPED!" It says.<br>
<br>
Reaching the counter you place your order with the always bubbly and enthusiastic <<=setup.getNpcName('npc_barista', 'first')>>.<br>
<br>
"@@.npc_barista;Just the usual? You sure you don't want to take advantage of our special?@@"<br>
<br>
Her eyebrows bounce up and down enticingly. You consider deviating from your manager's order to take advantage of this obviously popular deal but shake your head and decline the suggestion.<br>
<br>
<<printThought $player "Best not to risk her ire, she seems to quite like her routines.">><br>
<br>
"@@.npc_barista;Hmm, regular cream then... Where did I put that...@@"<br>
<br>
Ducking out of sight she looks under the counter for a few moments before turning, her mini-skirt-trimmed rear on full display peeking over the counter.<br>
<br>
It isn't the first time you've seen her, or the twin plugs barely kept in place by her straining thong. Unlike that first meeting between you and the strange, enthusiastic barista, however her pert, pale bum is criss-crossed with a veritable web of red marks.<br>
<br>
You're still trying to process what could have caused the marks when she spins and pops back up holding a large jug of cream.<br>
<br>
"@@.npc_barista;Found it!@@" She announces proudly, filling a cup with freshly brewed coffee before pouring in the cream per usual. "@@.npc_barista;Here's ya go!@@"<br>
<br>
Still off-guard you take the cup with a nod, quickly hurrying off to make your delivery.<br>
<br>
[<<moveTo event_work_coffee_random_finish "Continue." 60>>]
</div>/*#
#desc: coffee random event, barista blowjob aftermath
#status: WRITTEN 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $scene.newCum = false>>
<<set $scene.swallowedOther = false>>
<<if !$player.swallowedothercum && !$player.swalloeddowncum>>
<<applyExperience 'cum' 4 'little' $INCOGNITO>>
<</if>>
<<if !$player.swallowedothercum>>
<<set $player.swallowedothercum = true>>
<<set $scene.newCum = true>>
<<set $scene.swallowedOther = true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_barista.png">>
<div id="invframe" class="scrolltext">
Walking into the Coffee Shop you almost bump into another customer coming the other direction. Not that you didn't see him, you saw him from a mile away, but he seemed kind of distracted. A blissful wide grin spangles his face, as he waves goodbye at a beaming <<=setup.getNpcName('npc_barista', 'first')>>, while at first almost running into the glass facade, then into you.<br>
<br>
She waves back with her usual over-eager bubbly manner, calling after him "@@.npc_barista;thanks for coming in me today!@@"<br>
<br>
Even after she stops waving you can see her boobs whipping up and down until they finally come to a standstill. Ignoring her odd phrasing you approach the counter something that looks like whipped cream from her lips and smiles at you. "@@.npc_barista;Hiya <<=$player.first_name>>! What can I do for you?@@"<br>
<br>
You place your usual order, waiting for her to prepare the coffee - with cream, as you notice there's still some cream on her rosy cheeks. She doesn't seem to register it herself, so you try to inconspicuously draw her attention to it, but to no avail.<br>
<br>
"@@.npc_barista;What? Where?@@", she turns around left and right bending over and getting up again, "@@.npc_barista;I can't seem to find it...@@"<br>
<br>
Even though you're directly pointing towards it she seems unable to find anything, so you try to be helpful and wipe it off with your finger, and by reflex put it in your mouth. It's just whipped cream, what's the worst that could happen. <<=setup.getNpcName('npc_barista', 'first')>> suddenly looks at you with an interested expression. Hmm... tastes kinda strange for whipped cream.... kinda salty. Oh...<br>
<br>
<<if $scene.newCum>>
<<if !$scene.swallowedOther>>
<<printThought $player "What is this? I can't quite put my finger onto it.">><br>
<br>
"@@.npc_barista;Oh... that must have been from the customer who just left.@@" she remarks, her statement failing to do anything but raise additional questions.
<<else>>
<<printThought $player "Did I just swallow some dudes <<getWordCum $player>>? Oh <<getWordGod $player>>!">><br>
<br>
Your blushing is enough evidence for <<=setup.getNpcName('npc_barista', 'first')>> to realise that you know exactly what you just tasted. Without uttering a word, she simply smiles at you and continues to prepare your coffee.
<</if>>
<<else>>
<<printThought $player "Did I just swallow some dudes <<getWordCum $player>> again? Oh <<getWordGod $player>>!">><br>
<br>
Your blushing is enough evidence for <<=setup.getNpcName('npc_barista', 'first')>> to realise that you know exactly what you just tasted. Without uttering a word, she simply smiles at you and continues to prepare your coffee.
<</if>>
You simply stand there without trying to think about it before heading back to your office with your delivery.<br>
<br>
[<<moveTo event_work_coffee_random_finish "Continue." 60>>]
</div>/*#
#desc: deliver coffee after random event
#status: WRITTEN 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You deliver <<=ps(setup.getNpcName('npc_manager', 'formal'))>> her coffee.<br>
<br>
"@@.npc_manager;Hmm, a bit slower than usual, was there a line? No matter, you may resume your duties <<=$player.first_name>>.@@"<br>
<br>
[<<moveTo $workEventReturn "Return to work." 60>>]
</div>/*#
#desc: fetch coffee (repeatable)
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.bespokeComment = setup.getBespokeComment('npc_barista')>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_barista.png">>
<div id="invframe" class="scrolltext">
You head for the coffee shop and step up to the counter where you are greeted by the bubbly barista-maid <<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
You manage to get some coffee. This time without any incidents holding you up. A strong, hot coffee with a shot of cream in it.<br>
<br>
"@@.npc_barista;Heya! What can I get for you today?@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
As you wait for <<=setup.getNpcName('npc_barista', 'first')>> to prepare <<=ps(setup.getNpcName('npc_manager', 'formal'))>> coffee you ask her if she might have any suggestions of how you might "improve" your uniform. Turning around she appears lost in thought for a moment before her eyes light.<br>
<br>
"@@.npc_barista;Ohmygawd, did you just start the A-SLUT programme????@@"<br>
<br>
You hesitate, then nod and she smiles even wider.<br>
<br>
"@@.npc_barista;Oh that is just the best! Becoming A-SLUT was one of the best things that ever happened to me! I am so happy for you!@@"<br>
<br>
<<printThought $player "Considering how she acts, that's probably true in more senses than she may have meant...">>
<br><br>
"@@.npc_barista;Anyway, my best suggestion is the acronym my bimbo A-SLUT mentor once told me: HTS - Higher, Tighter, Skimpier; that is to say; Higher heels, Tighter clothes and Skimpier cuts! A trife-, trifac-, three things that are just the bestest!@@"<br>
<br>
Looking at <<=setup.getNpcName('npc_barista', 'first')>>, perched on stiletto heels looking ready to explode out of her latex maid's uniform that barely covers much in the first place there is no question she has followed her so-called "advice" to a T. Unsure if the conversation was valuable you decide to just focus on your errand and be on your way as soon as possible.<br>
<br>
<<elseif $scene.bespokeComment>>
<<if $scene.bespokeComment == "all">>
"@@.npc_barista;Girlfriend! Like. OH. MY. GOD! You are like... hotter than espresso and pinker than my favourite candy! Work it gurl! I told you being A-SLUT was the way to get ahead!@@"
<<else>>
<<=setup.getNpcName('npc_barista', 'first')>> lustily eyes your <<=setup.getItemName($scene.bespokeComment)>>.<br>
<br>
"@@.npc_barista;Like, ohmygawd, those are just, like the hottest things in, like, ever! Like, you look sooooo sexy in them. It's making me all wet!... well, no, I mean, I was already wet, I'm ALWAYS wet, I love having plugs in my slut-holes, it's almost as good as having a cock or two in me! Oooh, or three cocks, that's REALLY the best feeling, an airtight airhead! Teehee!@@"<br>
<br>
She pauses, going through the mental reset you've seen her run through before. "@@.npc_barista;Sorry, what were we talking about? Oh right, your new <<=setup.getItemName($scene.bespokeComment)>>! I told you A-SLUT was like, the best thing! I can't wait to see what they have you doing next! Remember, the harder your boss rides you, the better it is in the end. And during!@@"
<</if>>
<br><br>
<<printThought $player "Wow is she a sex-crazed bimbo. I hope that is <<if setup.getTotalValue('bimbofication') < 10>>not <</if>>a vision of my future.">><br>
<br>
<<elseif $npc_manager.stage >= 2 && !$npc_barista.flags.taughtbimbomakeup && ($npc_barista.flags.makeupoffer || setup.getTotalValue("makeup") >= 10)>>
<<if $npc_barista.flags.makeupoffer>>
<<printThought $player "She mentioned to ask her for more makeup tips...">>
<<else>>
Though it is quite garish and slutty you can't help but notice that <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> has been quite expertly applied.<br>
<br>
<<printThought $player "I wonder if she could give me any makeup tips?">>
<</if>>
<br><br>
[<<moveTo "event_work_barista_makeup_1" "Ask her for makeup tips." 360>>]<br>
<</if>>
[<<moveTo "event_work_coffee_return" "Put in the usual order and head back to the office." 60>>]
</div>/*#
#desc: return from coffee shop
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You return to your manager with her order - a strong, hot coffee with a shot of cream in it.<br>
<br>
"@@.npc_manager;Thank you. You may resume your duties <<=$player.first_name>>.@@"<br>
<br>
[<<moveTo $workEventReturn "Return to your desk." 60>>]
</div>/*#
#desc: meet going home first day, he is newly hired, "normal"/slight stubble
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set _nextDate to setup.setNextDate($now, 3, 0, 0)>>
<<set $randomEvents['canteen'].pushUnique({id: 'coworker_sexdoll', done: false, date_after: _nextDate})>>
<<set $npc_sexdoll.flags.stage = 1>>
<<if $player.flags.fem_style.name != "" && !$npc_sexdoll.flags.reactnamechange>>
/% shouldn't be actually possible but... safety %/
<<set $npc_sexdoll.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator_2.png" "./images/characters/npc_sexdoll_0.png">>
<div id="invframe" class="scrolltext">
Approaching the elevator at the end of your first day you see another man standing inside. Noticing your approach he helpfully holds the door as you hurry the final few steps to step in.<br>
<br>
He looks about your age, short hair, average build, wearing the normal collared shirt, tie and slacks combo that makes up the male dress code. His expression is a bit meek, his face a little scruffy with 5 o'clock shadow. Noting your somewhat dazed expression he smiles in an awkward but comforting way. "@@.npc_sexdoll;Tough day?@@"<br>
<br>
You nod, explaining that you just started a new job before your voice starts to trail off.<br>
<br>
"@@.npc_sexdoll;Say no more, say no more. This was my first day, too, in fact. Thought I knew what I was in for - my old man has a similar job, got me the hook-up for management track but... wow, all the stuff I had to go through, I mean a brain scan, would you believe it?@@"<br>
<br>
You're a bit surprised, you haven't had to do anything like THAT but, well... you went from lowly IT monkey to secretary, things are probably different for management. You shrug and mutual shyness takes over the both of you, the remainder of the ride down passing in silence.<br>
<br>
Reaching the ground floor the elevator dings and starts to open. "@@.npc_sexdoll;Oh, so my name is <<=setup.getNpcName('npc_sexdoll', 'first')>>, <<=setup.getNpcName('npc_sexdoll', 'full')>>. Nice meeting you. I guess... see you around? And good luck with the rest of your week! Just concentrate on it being a fun, new opportunity.@@"<br>
<br>
You wish him luck as well as he remains in the elevator to continue down to the parking garage and you step out to walk home.<br>
<br>
<<printThought $player "Nice enough guy... Seems a bit shy for management though.">><br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator" 120>>]
</div>/*#
#desc: he is wearing unisex attire, no facial hair
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = 'Canteen'>>
<<if $roomchange==true>>
<<setScene>>
<<set _nextDate to setup.setNextDate($now, 6, 0, 0)>>
<<set $randomEvents['work_bathroom_female'].pushUnique({id: 'coworker_sexdoll', done: false, date_after: _nextDate})>>
<<set $npc_sexdoll.flags.stage = 2>>
<<if $player.flags.fem_style.name != "" && !$npc_sexdoll.flags.reactnamechange>>
<<set $npc_sexdoll.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png" "./images/characters/npc_sexdoll_1.png">>
<div id="invframe" class="scrolltext">
Stepping into line you are surprised to find yourself standing behind <<=setup.getNpcName('npc_sexdoll', 'full')>>. You haven't seen him since your first day as a secretary and you almost don't recognise him! When you ran into him in the elevator he was a bit scruffy looking, dressed in the standard slacks and shirt but now his face is as smooth and hairless as a baby's bottom, his hair looking quite nice extending down past his ears, his clothing a silk shirt and a very fitted pair of trousers that aren't quite male or
<<if $player.flags.fem_style.female != "">>
female; a line you remember riding so well.
<<elseif $player.flags.fem_style.unisex != "">>
female; a line you are quite familiar with riding.
<<else>>
female.
<</if>>
<br><br>
You greet him and he turns around with a smile. When he speaks you would swear his voice sounds a bit softer and more gentle than when you met him previously, but that is probably just your imagination.<br>
<br>
<<if $scene.namereact>>
"@@.npc_sexdoll;Hey! <<=$player.original_first_name>>! How have you been? Got over those first-day jitters?@@"<br>
<br>
You nod, quickly correcting him that you go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_sexdoll;Oh, sorry, guess I just remembered wrong, forget my own head sometimes if it wasn't screwed on!@@"<br>
<br>
You laugh along with him, a bit surprised at how he takes you changes in such casual stride, not that it would be anywhere close to the weirdest thing you've witnessed at work.
<<else>>
"@@.npc_sexdoll;Hey! <<=$player.first_name>>! How have you been? Got over those first-day jitters?@@"<br>
<br>
You nod<<if setup.analyzeWornTags(['female','male','unisex']) == "male">><<else>>a bit surprised that he completely glosses over your new "look"... not that it comes close to the weirdest thing you've witnessed at this job<</if>>.
<</if>>
<br><br>
Before you can think of anything else to talk about you're at the front of the line and he bids you farewell and steps up to place his order. A moment later and you are waved forward and he moves along with a parting wave.<br>
<br>
[<<moveTo "room_office_lunchbreak_canteen_buyfood" "Step up to place your order" 0>>]
</div>/*#
#desc: fixing her makeup, has shoulder length hair, wearing tight shirt and pants
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<setScene>>
<<set _nextDate to setup.setNextDate($now, 6, 0, 0)>>
<<set $randomEvents['work_coffee_shop'].pushUnique({id: 'coworker_sexdoll', done: false, date_after: _nextDate})>>
<<set $npc_sexdoll.flags.stage = 3>>
<<set $npc_sexdoll.first_name = $npc_sexdoll.sissy_name>>
<<set $npc_sexdoll.other_call = "Ms.">>
<<set $npc_sexdoll.call = "Ms.">>
<<if $player.flags.fem_style.name != "" && !$npc_sexdoll.flags.reactnamechange>>
<<set $npc_sexdoll.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<</if>>
<<set $player.location = "Women's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png" "./images/characters/npc_sexdoll_2.png">>
<div id="invframe" class="scrolltext">
Walking into the bathroom you do a double take at the woman doing her makeup at the sink looking oddly familiar.<br>
<br>
After a few moments you realise she looks really similar to the junior manager you met back on your first day only now... well "he" has gone right past the unisex attire you last saw him in to be wearing a skirt and blouse! Her previously short-cropped hair now flows down to her shoulders in beautiful waves.<br>
<br>
"Is that you, <<=setup.getNpcName('npc_sexdoll', $npc_sexdoll.original_first_name)>>?" You ask and she turns with a smile, her long hair swishing behind her like something out of a movie.<br>
<br>
<<if $scene.namereact>>
"@@.npc_sexdoll;Oh, hi <<=$player.original_first_name>>, I actually go by <<=setup.getNpcName('npc_sexdoll', 'first')>> now. How have you been?@@"<br>
<br>
You explain that, actually, you've changed names too, <<=setup.getNpcName('npc_sexdoll', 'first')>> taking it in stride without any further comment.
<<else>>
"@@.npc_sexdoll;Oh, hi <<=$player.first_name>>, I actually go by <<=setup.getNpcName('npc_sexdoll', 'first')>> now. How have you been?@@"
<</if>>
<br><br>
After congratulating her on her new name you then proceed to the usual "small talk" fashion as you say things have been fine and exchange some other perfunctory compliments. It is a bit hard to believe that the shy dude you met that first day in the elevator could have transformed into this bubbly, sexy woman but, well... it's not like the old you would recognise yourself these days either.<br>
<br>
After a minute or so <<=setup.getNpcName('npc_sexdoll', 'first')>> excuses herself, explaining that she has a "full" schedule ahead with a meeting to get to but wishing you luck as you continue to "@@.npc_sexdoll;develop your career with the company.@@"<br>
<br>
<<printThought $player "That's a bit of a weird way to phrase things...">><br>
<br>
Alone in the bathroom you consider what to do.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom" 60>>]
</div>/*#
#desc: female transformation, chatting w/candy about upper floors, seems quite ditzy
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_sexdoll.flags.stage = 4>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_sexdoll_3.png">>
<div id="invframe" class="scrolltext">
Walking into Coffee Shop 52 you are momentarily taken aback by the woman ahead of you at the counter.<br>
<br>
Leaning against the counter chatting with <<=setup.getNpcName('npc_barista', 'nickname')>> is a woman that could only be <<=setup.getNpcName('npc_sexdoll', 'first')>> nee <<=setup.getNpcName('npc_sexdoll', $npc_sexdoll.original_first_name)>>. It would appear that her "transformation" is complete, as the shy dude you met your first day as a secretary now looks as much a woman, and even more of a bimbo slut, as the sex-pot barista that she is conversing with.<br>
<br>
The two of them noticing you at the same time they wave in greeting as you blink. <<=setup.getNpcName('npc_sexdoll', 'first')>> may be wearing more businesslike attire but any sense of professionalism is somewhat destroyed by the fact that it barely covers half of her breasts, with massive nipple rings dangling down leaving her looking even more of a slut than <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> maid outfit.<br>
<br>
"@@.npc_sexdoll;Hiya!, So I was just telling <<=setup.getNpcName('npc_barista', 'nickname')>> about my promotion!@@"<br>
<br>
"@@.npc_barista;Yup! She's going to move upstairs as soon as the paperwork is finished, it's going to be, like, so great!@@"<br>
<br>
You nod, still a little weirded out by their combined "stereo" bimbo gaze; as disorientating as it is arousing.<br>
<br>
There is a bing from behind the counter and <<=setup.getNpcName('npc_barista', 'nickname')>> perks up. "@@.npc_barista;Oh! That's your order ready, good luck in your new position!@@"<br>
<br>
"@@.npc_sexdoll;Thanks!@@" <<=setup.getNpcName('npc_sexdoll', 'first')>> states, blowing a kiss as she hurries out the door, her breasts and butt jiggling atop what have to be at least twelve centimeter heels.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" "Get your order and head back to the office." 360>>]
</div>/*#
#desc: meet for first time standing in line for lunch
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = 'Canteen'>>
<<if $roomchange==true>>
<<set _nextDate to setup.setNextDate($now, 3, 0, 0)>>
<<set $randomEvents['work_bathroom_female'].pushUnique({id: 'coworker_hucow', done: false, date_after: _nextDate})>>
<<set $npc_hucow.flags.stage = 1>>
<<if $player.flags.fem_style.name != "" && !$npc_hucow.flags.reactnamechange>>
<<set $npc_hucow.flags.reactnamechange = true>>
<</if>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png" "./images/characters/npc_hucow_0.png">>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.spill_event>>
You're standing in line for lunch when the girl in front of you, a slender young woman of mixed asian descent dressed in a lab coat, greets you.<br>
<br>
"@@.npc_hucow;Hey, weren't you part of a nasty spill a few days ago?@@"<br>
<br>
You blush a bit at the memory and nod yes.<br>
<br>
"@@.npc_hucow;I thought so, that looked like quite a mess! Anyway, my name is <<=setup.getNpcName('npc_hucow', 'full')>>, what's yours?@@"
<<else>>
Your mind is wandering as you stand in line for lunch only to be interrupted by someone bumping into you.<br>
<br>
Turning in surprise you find yourself face to face with a slender young woman of mixed asian descent dressed in a lab coat holding a phone.<br>
<br>
"@@.npc_hucow;Oh! I'm so sorry, looked down at my phone for a moment and crash right into you! Good thing it was before I got my lunch though, right?@@" She laughs as you assure her that there was no harm done. "@@.npc_hucow;Anyway, my name is <<=setup.getNpcName('npc_hucow', 'full')>>, what's yours?@@"
<</if>>
<br><br>
You exchange introductions and start chatting while you wait and you ask her what she does at the company.<br>
<br>
"@@.npc_hucow;I work in the bio-tech department helping around the lab and stuff. Tell the truth I don't really understand most of what goes on there...yet. The tech here is years ahead of everything I've seen during my time at the University. But I'm sure it's really important stuff that's gonna change the world!@@"<br>
<br>
You nod in agreement but don't have a chance to talk about anything else as you have made it to the front of the line, bidding her good-day and stepping up to counter.<br>
<br>
[<<moveTo "room_office_lunchbreak_canteen_buyfood" "Place your order" 0>>]
</div>/*#
#desc: busy trying to "fix/adjust" noticeably larger breasts
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<set _nextDate to setup.setNextDate($now, 3, 0, 0)>>
<<set $randomEvents['work_coffee_shop'].pushUnique({id: 'coworker_hucow', done: false, date_after: _nextDate})>>
<<set $npc_hucow.flags.stage = 2>>
<</if>>
<<set $player.location = "Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png" "./images/characters/npc_hucow_1.png">>
<div id="invframe" class="scrolltext">
As you walk into the bathroom you notice <<=setup.getNpcName('npc_hucow', 'full')>>. She has a look of frustration on her face as she seems to be attempting to re-adjust her breasts - breasts that are a good several cup sizes larger than the more modest (and proportional) set she was sporting whence last you met.<br>
<br>
You ask her if anything is wrong and she sighs.<br>
<br>
"@@.npc_hucow;No, not really it's just, well... I dunno what it is but my breasts have just been so swelled and sensitive lately! I've had to buy two new bras already and I think I'm going to have to upgrade a third time on the way home tonight!@@"<br>
<br>
Surprised at her reaction you check that she didn't do this intentionally?<br>
<br>
"@@.npc_hucow;No, that's the crazy thing! I mean, sure they're kind of sexy but they just started growing on their own! I asked at work, I mean, we handle all sorts of things in the lab and maybe I got exposed to something? But my boss said everything was fine and not to worry about it so I'm hoping they'll shrink back down... or at least stop growing soon!@@"<br>
<br>
You wish her luck as she finally gives up and heads out of the bathroom, her breasts swaying with each step while looking ready to burst out of her tight top.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom" 60>>]
</div>/*#
#desc: shorter skirt/higher heels, breasts even larger, walks out from the back room massaging her tits
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set _nextDate to setup.setNextDate($now, 6, 0, 0)>>
<<set $randomEvents['elevator_home'].pushUnique({id: 'coworker_hucow', done: false, date_after: _nextDate})>>
<<set $npc_hucow.flags.stage = 3>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_hucow_2.png">>
<div id="invframe" class="scrolltext">
<<if $npc_barista.flags.milking.questioned>>
You're standing waiting for your order when you spot <<=setup.getNpcName('npc_hucow', 'full')>> behind the counter unhooking herself from a milking device. From the look of things she has just finished quite a large deposit and she smiles in contentment, groping herself before wrangling her massive breasts back inside her lab coat. You can't help but stare in surprise, scarcely believing the transformation wrought upon
<<else>>
You're standing waiting for your order when you spot <<=setup.getNpcName('npc_hucow', 'full')>> walking out from the back room. Massaging her breasts she looks quite different from
<</if>>
the friendly, cute girl you first ran into waiting in line for lunch.<br>
<br>
<<=ps(setup.getNpcName('npc_hucow', 'full'))>> breasts have grown to roughly the size of her head, looking particularly lewd given her slender frame. That sense of "lewd" is only accentuated by her new outfit - her old lab outfit seeming to have shrunk so as to now strain to contain her massive breasts while barely extending down far enough to be "decent." Steep platform heels only add to the look of imbalance to have her hips swaying with every step. The way her breasts swing back and forth looks quite precarious but she has a pleased, if somewhat dopey, grin on her face as she heads past you.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" "Get your order and head back to the office." 360>>]
</div>/*#
#desc: dressed salaciously, heavy makeup, breasts ginormous, a bit airheaded, on her way to upper floors for some "overtime"
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_hucow.flags.stage = 4>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_hucow_3.png">>
<div id="invframe" class="scrolltext">
Stepping into the elevator you find yourself sharing the small compartment with <<=setup.getNpcName('npc_hucow', 'full')>>. Her breasts are even larger than before, twin soccer balls pressed together by a straining bra, and spreading wider than her narrow chest.<br>
<br>
"@@.npc_hucow;Hiya!@@" She says in greeting, smiling at you with newly thick lips and an overly made-up face. You nod in greeting, her lab coat looking even shorter than you last saw it, hanging open to expose what looks like a skintight jumpsuit beneath, a fully cinched corset dedicated primarily to the task of keeping her back straight while supporting her ginormous breasts.<br>
<br>
You ride down only for her face to screw up in confusion as she looks at the panel.<br>
<br>
"@@.npc_hucow;Oh, silly me! I must have forgotten to hit the button, I need to go up to floor 138, working a special bonus night shift again!@@"<br>
<br>
Given her breasts you can guess at what that "extra" shift probably entails but you merely wish her a good evening as you step out of the elevator.<br>
<br>
Glancing back as the elevator doors close you're pretty sure you catch a glimpse of her squeezing one of her tits with one hand while her other hand snakes past her open lab coat down between her legs.<br>
<br>
[<<moveTo "company_lobby" "Continue into the lobby." 120>>]
</div>/*#
#desc: shy girl but end up chatting waiting for drinks, mentions being single/lonely
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set _nextDate to setup.setNextDate($now, 3, 0, 0)>>
<<set $randomEvents['elevator_home'].pushUnique({id: 'coworker_futa', done: false, date_after: _nextDate})>>
<<set $npc_futa.flags.stage = 1>>
<<if $player.flags.fem_style.name != "" && !$npc_hucow.flags.reactnamechange>>
<<set $npc_hucow.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_futa_0.png">>
<div id="invframe" class="scrolltext">
The coffee shop is busier than usual today and you find yourself waiting next to a shy, mousy-looking girl dressed in a modest sweater, knitted skirt and flats.<br>
<br>
On a whim you strike up a conversation, introducing yourself and asking how she's doing.<br>
<br>
She seems a bit surprised by your attention, stammering a bit before introducing herself as "@@.npc_futa;<<=setup.getNpcName('npc_futa', 'full')>>.@@"<br>
<br>
Drink orders still going slow you keep chatting and she starts to open up. It's like the floodgates have been unleashed as she explains that "@@.npc_futa;you know, normally I don't really talk to people much. Socially, I mean, like... I haven't ever even had a boyfriend!@@"<br>
<br>
Unsure quite how to respond you mumble something about how "sometimes you need to just make a move" rescued from further awkwardness as her name is called out. She blushes slightly saying "@@.npc_futa;sorry if I over-shared a bit there but... well, it was nice to meet you. Maybe you're right, anyway I guess I'll see you around, what with us working on the same floor and all!@@"<br>
<br>
Dashing off with her drink it isn't long after that <<=setup.getNpcName('npc_barista', 'nickname')>> calls out your name.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" "Get your drink and head back to the office." 360>>]
</div>/*#
#desc: more aggressive attire, mentions having the courage to ask out a new boyfriend
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set _nextDate to setup.setNextDate($now, 6, 0, 0)>>
<<set $randomEvents['canteen'].pushUnique({id: 'coworker_futa', done: false, date_after: _nextDate})>>
<<set $npc_futa.flags.stage = 2>>
<<if $player.flags.fem_style.name != "" && !$npc_futa.flags.reactnamechange>>
<<set $npc_futa.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_futa_1.png">>
<div id="invframe" class="scrolltext">
Walking into the elevator you find <<=setup.getNpcName('npc_futa', 'full')>>. She's looking just a touch less innocent than the last you saw her, though no less sweet, trading her frumpy sweater for something a bit more fitted and sexy paired with leggings rather than a concealing skirt. She's even wearing heels! Modest at just a couple centimeters but it really seems to make a difference, though all that fades compared to her confident smile as she greets you.<br>
<br>
<<if $scene.namereact>>
"@@.npc_futa;Hey! <<=$player.original_first_name>>.@@" She says in greeting only for you to quickly correct her that you go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_futa;Oh! I'm so sorry. Not for your name, I mean it really suits you and it's great if that's what you wanted to be called, I just didn't know or I never would have well...@@"<br>
<br>
You explain that it's fine and she seems to relax a bit.
<<else>>
"@@.npc_futa;Hey! <<=$player.first_name>>.@@" She says in greeting, throwing her arms out to give you a hug like you were old friends.
<</if>>
<br><br>
"@@.npc_futa;So, it's a bit crazy but, well, I took your advice and tried asking out this cute guy in my apartment building? And he said yes! It was, like, so great, we clicked and everything and he asked me for a second date and it's tonight!@@"<br>
<br>
You congratulate her on her newfound boldness, wishing her luck as the elevator doors open onto the lobby.<br>
<br>
Biting her lip she seems to muster her courage before quickly blurting out "@@.npc_futa;I really hope I get lucky tonight! Ohmygod I can't believe I said that to you!@@"<br>
<br>
Blushing hard she runs off across the lobby, her kitten heels clicking on the marble floor.<br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator" 120>>]
</div>/*#
#desc: dressing even sluttier/edgier, you notice a slight bulge between her legs, mentions dumping her boyfriend
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = 'Canteen'>>
<<if $roomchange==true>>
<<set _nextDate to setup.setNextDate($now, 6, 0, 0)>>
<<set $randomEvents['work_bathroom_female'].pushUnique({id: 'coworker_futa', done : false, date_after: _nextDate})>>
<<set $npc_futa.flags.stage = 3>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png" "./images/characters/npc_futa_2.png">>
<div id="invframe" class="scrolltext">
Standing in line you find yourself next to <<=setup.getNpcName('npc_futa', 'full')>>. Gone are her sweaters and colourful knits, replaced by an all black ensemble layering a leather coat over a ruffled blouse, pencil skirt and gloves with 4" heels rounding out the look.<br>
<br>
Even more than her new look it feels like the tables have turned as now it's you feeling a bit intimidated and nervous around her. Her friendly smile remains the same as it ever was, even if there's a slight hint of scheming in the corner of her eye.<br>
<br>
You ask her how things are, if she's still dating the "cute guy" from her apartment.<br>
<br>
She snorts "@@.npc_futa;that loser? Nah, I dumped his ass, he just couldn't handle what I'm packing but it's fine. Now that I've learned to harness my confidence well... it seems like there's nothing I can't do! My boss even recognised it and gave me a promotion, that's why I'm dressing a bit more formal and all.@@"<br>
<br>
You express condolences that things didn't work out but wish her luck in her new position just before she heads up to make her order.<br>
<br>
She heads for a chair and you get ready to approach the counter. Noticing her sitting down out of the corner of your eye you swear you notice a slight bulge disrupting the otherwise smooth lines of her skirt... a bulge that you are certain was never there before.<br>
<br>
<<printThought $player "Must be seeing things...">><br>
<br>
<<=setup.getNpcName('npc_cook', 'first')>> breaks you from your distraction. "@@.npc_cook;Hey, you gunna ordah or what?@@"<br>
<br>
[<<moveTo "room_office_lunchbreak_canteen_buyfood" "Place your order" 0>>]
</div>/*#
#desc: offers to fuck you
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<</if>>
<<set $player.location = "Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png" "./images/characters/npc_futa_3.png">>
<div id="invframe" class="scrolltext">
<<if $npc_futa.flags.stage > 3>>
You run into <<=setup.getNpcName('npc_futa', 'full')>> again int the bathroom, forced to look away as she graces you with a hungry grin as you both recall the "fun" of your previous encounter.<br>
<br>
Unfortunately for your eager holes by the time you look back she has disappeared. A little miffed you figure she must have had a meeting to get to or something as you finish up your own business.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom" 60>>]
<<else>>
Walking into the bathroom you find yourself staring at <<=setup.getNpcName('npc_futa', 'full')>>. It seems she the whole "leather" look is more than just a phase as she has upgraded even further; knee-high heels, a leather coat zipped just far enough to leave a bit of cleavage showing and leather pants that seem to draw attention to the obvious bulge between her legs.<br>
<br>
Looking at you with a grin she follows your sight-line and smiles even wider.<br>
<br>
"@@.npc_futa;So, I never properly thanked you for the encouragement that got me "out of my shell" - how about we head back to my office for a few and I show you how good a bit of... CONFIDENCE can feel like.@@"<br>
<br>
In case there was any doubt what she was talking about she makes a two-handed motion towards her swelling package.<br>
<br>
[<<moveTo "event_coworker_futa_3_fuck" "Accept her offer." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_coworker_futa_3_fuck" "Say you unfortunately don't have time at the moment." 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: fucks you, mentions that her boyfriend came crawling back/that he could take lessons from you on how to take it in the ass
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<if $scene.accept>>
<<set $npc_futa.flags.stage = 4>>
<<if $player.analvirginity == "">>
<<set $player.analvirginity = 'npc_futa'>>
<<setThreshold 'anal' 'other_anal' "first_time" true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_1'
0
'event_psychiatrist_session_anal_virginity_1'
true
"theme_technician_other_header"
>>
<</if>>
<<set $player.timebased.horny = 0>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_futa.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_futa', 'full'))>> office">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODO_generic_office.png" "./images/characters/npc_futa_3.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Almost hypnotised by <<=ps(setup.getNpcName('npc_futa', 'full'))>> dominant energy you quickly agree to her offer and obediently follow her up the hall to her office.<br>
<br>
As offices go it... barely qualifies, not much more than a desk and a few filing cabinets, less than half the size of just the antechamber you work out of to say nothing of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner lair. Still, it has a locking door and that's all that really matters as she soon has you on your knees, giving you a moment to admire the big, juice <<getWordPenis $player>> sprouting from between her legs before she has you bent over the desk.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
You gasp as she pulls the <<=setup.getItemName(setup.getItemFromType("plug"))>> out of your ass, then moan when she replaces it with her thick cock.
<<else>>
Trying to relax you moan as her thick cock slides into your rear hole.
<</if>>
<br><br>
Once she starts thrusting it is all but over as she holds you down, her hips slapping against your ass as she pounds you good and hard.<br>
<br>
"@@.npc_futa;Damn but your ass is fucking tight and magical. I should send my boyfriend to you for lessons on how to take it deep!@@"<br>
<br>
You moan as she continues to plow your prostate, your incoherent sound somehow communicating the question if this is the same guy she dumped.<br>
<br>
"@@.npc_futa;Yea, he came literally crawling back to me after realizing there was no way he'd find another girl my equal. It's been great, he moved in with me and now does all the chores like a good slave. As soon as he manages to take all of me in both holes I'm going to collar him and maybe look into expanding my harem to include a girl as well. It's been great for training but I think I might break him if I only have two holes to fuck given I need to cum at least two or three times a night or I get cramps.@@"<br>
<br>
Only half processing her story you feel your orgasm approaching, crying out in ecstasy as she slams home, injecting her futa cum deep in your ass with a grunt as your eyes roll back in your head and you spurt all over the front of her desk.<br>
<br>
Pulling out and leaving you to lay there and recover she reaches down to scrape up your seed, licking it up herself rather than feeding you as she smiles. "@@.npc_futa;Mmm, I just love the taste of a sissy. Unfortunately I need to use my desk for work so you'll have to leave, see you around!@@"<br>
<br>
Staggering back to your feet you nod in thanks, <<if setup.getItemFromType("plug") != "">>stuffing the <<=setup.getItemName(setup.getItemFromType("plug"))>> back where it belongs and <</if>>fixing your clothes before you stumble out of her office, somehow managing to compose yourself by the time you get back to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office" 600>>]
<<else>>
She's obviously a bit miffed but shrugs it off, sliding past with a parting "@@.npc_futa;you don't know what you're missing... maybe next time.@@"
<br>
A shiver goes through your body as you practically feel her dominant energy and you let out a held breath once she's finally gone leaving you alone in the bathroom.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom" 60>>]
<</if>>
</div>/*#
#desc: already wearing female clothing but just shrugs "what are you gonna do for a job in this economy, y'know?"
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange==true>>
<<setScene>>
<<set _nextDate to setup.setNextDate($now, 6, 0, 0)>>
<<set $randomEvents['work_coffee_shop'].pushUnique({id: 'coworker_sissy_secretary', done: false, date_after: _nextDate})>>
<<set $npc_sissy_secretary.flags.stage = 1>>
<<set $player.inside = true>>
<<if $player.flags.fem_style.name != "" && !$npc_sissy_secretary.flags.reactnamechange>>
<<set $npc_sissy_secretary.flags.reactnamechange = true>>
<</if>>
<<set $player.location = "Men's Toilet on Floor 52">>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png" "./images/characters/npc_sissy_secretary_0.png">>
<div id="invframe" class="scrolltext">
Walking into the bathroom you do a bit of a double take as someone in a skirt, blouse and heels finishes pissing in the urinal. As you watch they drop their skirt back into position and spend a moment a moment "adjusting" themselves before turning to notice your surprised expression.<br>
<br>
"@@.npc_sissy_secretary;Yea, I guess the outfit is a bit confusing to be in the men's room but trust me, I'm all man where it counts!@@"<br>
<br>
What you can now recognise as a dude shrugs.<br>
<br>
"@@.npc_sissy_secretary;Hey, if wearing a dress gets me a job in this economy...@@" Walking over to the sink he continues to chat in a normal male voice.<br>
<br>
"@@.npc_sissy_secretary;The name's <<=setup.getNpcName('npc_sissy_secretary', 'full')>>@@" he states, "@@.npc_sissy_secretary;been working here as a secretary for a little while and, well... found a little trick in the contract in that the pay structure is actually accelerated if you follow the women's portion of the dress code so...@@"<br>
<br>
He gestures towards himself. His frame isn't particularly bulky, so the outfit doesn't look terrible, even if he's lacking in the "curves" department. He hasn't bothered with anything past the clothes and shoes as his lack of makeup, short short fade hair-cut and masculine jawline serve to seemingly purposefully clash with the outfit.<br>
<br>
You nod, introducing yourself in turn
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
noting that you have come to a... similar realization as you gesture towards your outfit.<br>
<br>
He actually looks a little surprised, "@@.npc_sissy_secretary;oh, wow, you pull it off so much better than I do... I think it's the hips, I actually thought you were a girl!@@"<br>
<br>
You both laugh... but inside another bit of your fragile masculinity breaks away forever.
<<case 'unisex'>>
noting that you've noticed something similar as you gesture towards your outfit.<br>
<br>
He nods, "@@.npc_sissy_secretary;yea, you really have the hips for it, you should make the jump to a full skirt, it's so freeing!@@"<br>
<br>
You both laugh, but you can't help but think about his words... certainly <<=setup.getNpcName('npc_manager', 'formal')>> would approve but... do you really want to sacrifice even more of your fragile masculinity?
<<case 'male'>>
as you compliment him on the outfit.<br>
<br>
He grins, "@@.npc_sissy_secretary;thanks but I'm just a dude in a dress, but it's cool, just for the money am I right? You should totally consider the same, I'm telling you I've done further research and there are literally ZERO secretaries working the upper, executive floors that dress like men.@@"
<<default>>
ERROR, unexpected clothing tag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
Finishing washing up he wishes you luck and heads off.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_male" "Men's Bathroom" 60>>]
</div>/*#
#desc: breast enlargement, makeup "well, y'know, I found I kind of like it!"
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set _nextDate to setup.setNextDate($now, 6, 0, 0)>>
<<set $randomEvents['elevator_home'].pushUnique({id: 'coworker_sissy_secretary', done: false, date_after: _nextDate})>>
<<set $npc_sissy_secretary.flags.stage = 2>>
<<if $player.flags.fem_style.name != "" && !$npc_sissy_secretary.flags.reactnamechange>>
<<set $npc_sissy_secretary.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_sissy_secretary_1.png">>
<div id="invframe" class="scrolltext">
Waiting in line you run into <<=setup.getNpcName('npc_sissy_secretary', 'full')>> the ambitious, cross-dressing secretary.<br>
<br>
Well... crossdressing might be understating it a bit at this point. Rather than just wearing women's clothing he has gone the full package, sporting a simple, but clearly feminine, haircut and semi-decent makeup. A pair of small breasts give his outfit a bit of shape and she turns smartly on six centimeter pumps to greet you.<br>
<br>
<<if $scene.namereact>>
"@@.npc_sissy_secretary;Oh, hey <<=$player.original_first_name>>! How you doing? <<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>give any more thought to that tip I gave you?<<else>>I see you've been following my suggestion, you look great!<</if>>@@"<br>
<br>
You thank him for the compliment and quickly correct that you go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_sissy_secretary;Oh damn, really? Well congrats! You really make quite a beautiful woman.@@"
<<else>>
"@@.npc_sissy_secretary;Oh, hey <<=$player.first_name>>! How you doing? <<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>give any more thought to that tip I gave you?<<else>>I see you've been following my suggestion, you look great!<</if>>@@"
<</if>>
<br><br>
You gesture towards <<=ps(setup.getNpcName('npc_sissy_secretary', 'full'))>> full feminine get-up as he smiles.<br>
<br>
"@@.npc_sissy_secretary;Heh, yea, so I got kind of sick of looking like a dude in a dress, and really, I've gotten much better reactions in general since I got my hair lengthened and started putting some actual effort into my appearance. I mean, it's just a work thing, fem for pay, I guess you would say, I'm back to jeans and a t-shirt as soon as I get home.@@" Giving his breasts a quick lift he continues "@@.npc_sissy_secretary;I mean these are totally fake, just a padded bra but it's kind of fun, makes me feel real pretty, y'know? And my boss approves and isn't that what's important?@@"<br>
<br>
You nod, unable to help but notice that <<=setup.getNpcName('npc_sissy_secretary', 'full')>> voice is sounding a bit higher pitched and androgynous since you last saw him. Now at the front of the line it's time to place orders and you wish him luck in his career as he returns with "@@.npc_sissy_secretary;likewise@@" and walks off.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" "Get your order and head back to the office." 360>>]
</div>/*#
#desc: in "club" attire on the way home, "yea, I mean being a woman is so much more fun!"
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set _nextDate to setup.setNextDate($now, 6, 0, 0)>>
<<set $randomEvents['canteen'].pushUnique({id: 'coworker_sissy_secretary', done : false, date_after: _nextDate})>>
<<set $npc_sissy_secretary.flags.stage = 3>>
<<set $npc_sissy_secretary.other_call = "Ms.">>
<<set $npc_sissy_secretary.call = "Ms.">>
<<set $npc_sissy_secretary.first_name = $npc_sissy_secretary.sissy_name>>
<<if $player.flags.fem_style.name != "" && !$npc_sissy_secretary.flags.reactnamechange>>
<<set $npc_sissy_secretary.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png" "./images/characters/npc_sissy_secretary_2.png">>
<div id="invframe" class="scrolltext">
Walking into the elevator to head home you find <<=setup.getNpcName('npc_sissy_secretary', 'full')>>, the cross-dressing secretary wearing something that looks VERY much not work appropriate.<br>
<br>
<<printThought $player 'Or, well... maybe it is, this place is a bit crazy in what is allowed for "women" to wear...'>><br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> is wearing a tight, leather-look "little black dress" a lacy boob window shows off that the knockers underneath are very much NOT just thanks to a bra.<br>
<br>
Looking a little nervous, and not totally steady atop ten centimeter peep-toe stiletto heels <<=setup.getNpcName('npc_sissy_secretary', 'first')>> shifts her small purse to the other hand and reaches out to shake hands.<br>
<br>
<<if $scene.namereact>>
"@@.npc_sissy_secretary;Oh, hi <<=$player.first_name>>, how are you doing?@@"
<<else>>
"@@.npc_sissy_secretary;Oh, hi <<=$player.original_first_name>>, how are you doing?@@"<br>
<br>
You hastily point out that, actually, you go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_sissy_secretary;Oh damn, really? Well congrats! You really are quite a beautiful woman. Anyway, how have you been, dish!@@"
<</if>>
<br><br>
You say you're doing ok before asking what's up with them as you gesture towards their sexy outfit as you notice that, in addition to having improved their makeup game A LOT they have painted their nails - fingers as well at the toes peeking out from their high heel sandals.<br>
<br>
"@@.npc_sissy_secretary;Yea, so I was heading home the other night and a dude on the bus asked me out! Well I dunno what came over me but I said yes and we had just... the best time. It was after that that I realised that being a girl was just so much better than being a guy and I've been living the life 24/7 ever since. Planning on changing my name to <<=setup.getNpcName('npc_sissy_secretary', $npc_sissy_secretary.sissy_name)>> this weekend, which the company is even paying for, how fab, huh? Speaking of fab... what do you think of my new boobs? I JUST got them installed, come on give 'em a squeeze, don't they just feel great?@@"<br>
<br>
Grabbing your hand she presses them into one of her breasts and you give a somewhat awkward squeeze, agreeing that they do feel really nice, and look totally real.<br>
<br>
The bell dings and the elevator door opens out onto the lobby. "@@.npc_sissy_secretary;Well, I gotta go, can't wait to get to the club - I hope you aren't the only one squeezing these puppies tonight!@@"<br>
<br>
Her heels go click, click, click as she minces across the marble floor and you take a few moments to process her transformation.<br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator" 120 "<<set $npc_sissy_secretary.first_name = $npc_sissy_secretary.sissy_name>>">>]
</div>/*#
#desc: slutty makeup, bimbo attire, giggling/chatting up several men VERY flirtatiously
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = 'Canteen'>>
<<if $roomchange==true>>
<<set $npc_sissy_secretary.flags.stage = 4>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_canteen.png" "./images/characters/npc_sissy_secretary_3.png">>
<div id="invframe" class="scrolltext">
You're standing in line for lunch when you hear laughter from a nearby table, glancing over to see <<=setup.getNpcName('npc_sissy_secretary', 'first')>> sitting with close to half a dozen men, laughing and flirting.<br>
<br>
Though not quite as extreme as the "little black dress" she was wearing to the club that time you met her in the elevator it is still very sexy - a short skirt, a thin top with a neckline that plunges down between her large breasts, fishnets and steep stiletto heels. Perfect makeup, nails and hair almost to her waist rounds out the utterly feminine appearance.<br>
<br>
Noticing you <<=setup.getNpcName('npc_sissy_secretary', 'first')>> waves only to be distracted by the guy sitting next to her copping a full grab on her butt. Turning to him in mock surprise she gives him a playful slap before laughing and "accidentally" dropping a chunk of sushi down her cleavage and offering it to him to dig out.<br>
<br>
Forgoing chopsticks he goes in with his face, an expression of mindless bliss passing over her face as the rest of the table laughs.<br>
<br>
You can't help but shake your head as you consider how <<=setup.getNpcName('npc_sissy_secretary', 'first')>> has gone from a dude crossdressing for a shot at a few extra credits to... well, not to put too fine a point on it, but what looks like the office slut.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
You are torn between lust and jealousy and it takes all you've got not to sprint across the room and debase yourself to prove that YOU are the true ultimate SISSY secretary slut.
<<else>>
Seeing her and how she is being treated has you feeling wet, and also jealous, half tempted to walk right over and challenge her to a slut off.
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
Reaching the front of the line you feel a disturbing twinge of jealousy that you quickly attempt to squash by focusing on the order you are here to pick up.
<<else>>
Reaching the front of the line you try to remember what you were here to pick up as you carefully avoid drawing any parallels between her situation and your own.
<</if>>
<</if>>
<br><br>
/* TODOfuture: contest followup? */
[<<moveTo "room_office_lunchbreak_canteen_buyfood" "Place your order" 0>>]
</div>/*#
#desc: hr officer in charge of Employee relations/harassment visits
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.repeat = false>>
<<switch $npc_harassment.flags.stage>>
<<case 0>>
<<set $npc_harassment.flags.stage = 1>>
<<case 1>>
<<if $npc_manager.stage > 1>>
<<set $npc_harassment.flags.stage = 2>>
<<else>>
<<set $scene.repeat = true>>
<</if>>
<<case 2>>
<<if $npc_manager.stage > 2>>
<<set $npc_harassment.flags.stage = 3>>
<<else>>
<<set $scene.repeat = true>>
<</if>>
<<case 3>>
<<case 4>>
<</switch>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $player.work.mode == 2>>
You're head down diligently working
<<elseif $player.work.mode == 0>>
You're lounging around on the job
<<else>>
You're working
<</if>>
when you hear a knock on the door.<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> schedule indicates she has a meeting with <<=setup.getNpcName('npc_harassment', 'formal')>> and you walk over to open the door.<br>
<br>
<<switch $npc_harassment.flags.stage>>
<<case 1>>
Opening the door you find a well-dressed woman in a business suit. Leading her into the office you message your <<=setup.getNpcName('npc_manager', 'title')>> to let her know her appointment has arrived.<br>
<br>
"@@.npc_manager;Send her in.@@"<br>
<br>
The woman smiles as you walk over and hold the inner door for her.<br>
<br>
"@@.npc_harassment;Thanks, cutie.@@" She quips before walking through the door.<br>
<br>
<<printThought $player "Cutie? Wait, what?">><br>
<br>
Half an hour later she finishes her meeting and strides back out. Passing by your desk she flashes you a wink that gives you... feelings before introducing herself as <<=setup.getNpcName('npc_harassment', 'formal')>>, the manager in charge of Employee Relations with a specialization in workplace harassment.<br>
<br>
<<printThought $player "Wait... harassment...?">><br>
<br>
Before you can reply she has shuffled along and out the door, leaving you wondering if you heard her correctly...<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<<case 2>>
Opening the door you find <<=setup.getNpcName('npc_harassment', 'formal')>>, wearing the same no-nonsense suit as always, and with her a cute... Well, you aren't quite certain.<br>
<br>
Slender, smiling and with an adorable pixie cut to top off a slightly too tight salmon shirt, tie and slacks the adorably androgynous person stands obediently next to <<=setup.getNpcName('npc_harassment', 'formal')>> as you blink twice and motion for them to enter.<br>
<br>
Returning your glance the girl? Honestly, though they are cuteness incarnate you find yourself unable to quite pin down a gender with confidence. However they identify they smile in a bashful way that only makes them look more adorable, not moving along until <<=setup.getNpcName('npc_harassment', 'formal')>> reaches back to give a gentle tug on her assistant's tie. You can't help but make a leash connection as they file past.<br>
<br>
The assistants attention seems to linger upon you until the two of them disappear into the inner office. You barely hear your manager comment on <<=setup.getNpcName('npc_harassment', 'formal')>> having brought her "@@.npc_manager;lovely assistant@@" before the door closes on their meeting.<br>
<br>
Half an hour later the two of them emerge, <<=setup.getNpcName('npc_harassment_assist', 'formal')>> once again staring at you until you return their gaze before they bashfully look away. You can't help but glance at their cute, tight bum as they skip along after their boss, only to blush yourself when they glance back at you with a cute lip-bite as the inner door closes behind them.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<<case 3>>
Opening the door you find <<=setup.getNpcName('npc_harassment', 'formal')>>, and her button-cute assistant, <<=setup.getNpcName('npc_harassment_assist', 'first')>>.<br>
<br>
With <<=setup.getNpcName('npc_harassment', 'formal')>> in her business suit, <<=setup.getNpcName('npc_harassment_assist', 'first')>> in an adorable collared shirt and slacks what really catches your attention is the pink leather dog collar around <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> neck, a matching leash finishing off the "tie" facsimile.<br>
<br>
Trying to focus on your duties like a professional you welcome the two of them and lead them to the inner office and turn to go only for <<=setup.getNpcName('npc_manager', 'formal')>> to order you to wait.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_harassment', 'formal')>> and I have some business to discuss, but it really does not concern the two of you. <<=$player.first_name>> would you mind keeping <<=setup.getNpcName('npc_harassment_assist', 'first')>> entertained?@@"<br>
<br>
You do a double take at the assistant, in too-tight clothing and wearing an obvious dog collar.<br>
<br>
"@@.npc_manager;Anyway, we have some business to deal with but I thought you and <<=setup.getNpcName('npc_harassment_assist', 'first')>> might spend the time together? <<=setup.getNpcName('npc_harassment_assist', 'first')>> is a bit shy but has expressed interest in getting to know you better.@@"
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> looks at you with an adorable pixie blush as <<=setup.getNpcName('npc_harassment', 'formal')>> unclips the leash and administers a sharp smack to the assistant's bottom.<br>
<br>
"@@.npc_harassment;Off with the two of you!, and don't get into too much trouble.@@"<br>
<br>
Skipping towards you <<=setup.getNpcName('npc_harassment_assist', 'first')>> grabs you by the wrist and gleefully drags you back out to your office.<br>
<br>
After the initial burst of energy <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> bashfulness returns in full force. Their voice soft yet just as gender ambiguous as their appearance they greet you.<br>
<br>
"@@.npc_harassment_assist;Hi, my name is <<=setup.getNpcName('npc_harassment_assist', 'first')>>... but, I guess you know that already... Is that your work area? What a lovely plaque!@@"<br>
<br>
It's your turn to blush as <<=setup.getNpcName('npc_harassment_assist', 'first')>> runs their fingers over the words "~ <<=$player.first_name>> <<=$player.last_name>> ~ Sissy Secretary" before smiling up at you. Looking back at you with a fresh bashful smile it takes a few moments before <<=setup.getNpcName('npc_harassment_assist', 'first')>> speaks again. "@@.npc_harassment_assist;I... I think you're really pretty.@@"<br>
<br>
You blush at the compliment and think how to respond. <<hint $options "You get the feeling they might be interested in a bit more than just seeing your work area.">><br>
<br>
[<<moveTo "event_work_hr_harrassment_assistant_1" "Keep it professional. Thank them, and then return to your work." 60 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_work_hr_harrassment_assistant_1" "Smile and say you think they're pretty too..." 120 "<<set $scene.accept=true>>">>]
<<case 4>>
You notice that her lovely assistant has not joined her today and she notes your expression of disappointment.<br>
<br>
"@@.npc_harassment;Sorry, my dear. <<=setup.getNpcName('npc_harassment_assist', 'first')>> did want to see you but she is, alas a bit... tied up at the moment.@@"<br>
<br>
She disappears into your <<=ps(setup.getNpcName("npc_manager", "title"))>> office as you are left to reflect if she was speaking literally or figuratively...<br>
<br>
<<printThought $player "At this company, it could really go either way...">><br>
<br>
You resume working as their meeting passes and <<=setup.getNpcName('npc_harassment', 'formal')>> eventually emerges to go on her way.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<<default>>
ERROR unexpected npc harrassment stage: <<=$npc_harassment.flags.stage>>
<</switch>>
</div>/*#
#desc: accept harrassment assistants first attempt to seduce you
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.accept>>
<<set $npc_harassment.flags.stage = 4>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Replying that you think <<=setup.getNpcName('npc_harassment_assist', 'first')>> is very beautiful as well the next thing you know they are inches away from you,
<<if setup.getItemObjFromType('shoes').hasOwnProperty('heels')>>
<<if setup.getItemObjFromType('shoes').heels.difficulty > 5>>
looking sharply up
<<else>>
looking up at you
<</if>>
thanks to your heel-enhanced height
<<else>>
looking you right in the eye
<</if>>. Blinking twice their breath smells like strawberries and sweetness as their lips part seductively. "@@.npc_harassment_assist;May I... may I please kiss you?@@"<br>
<br>
Your knees weak there isn't a power in the world that could stop you from leaning in to accept their offer.<br>
<br>
Their lips are even more delicious than you anticipated, as sweet and intoxicating as strawberry liqueur.<br>
<br>
Tongues entwined, pulling close to rub against each other <<=setup.getNpcName('npc_harassment_assist', 'first')>> guides your hand to the collar, moaning when you pull on it.<br>
<br>
<<if $player.flags.dominantsissy>>
Tightening your grip your dominant side roars to the fore.
<<else>>
Being in the dominant position is a strange feeling but <<=setup.getNpcName('npc_harassment_assist', 'first')>> is just so submissive you find yourself going along with it.
<</if>>
<br><br>
Holding <<=setup.getNpcName('npc_harassment_assist', 'first')>> close with one hand you reach down to start groping their tight butt, squeezing it and kissing their lips possessively as <<=setup.getNpcName('npc_harassment_assist', 'first')>> practically melts into you.<br>
<br>
Losing track of time it is only when you hear a loud throat-clearing "@@.npc_manager;A-hem@@" that the two of you look over to find <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_harassment', 'formal')>> staring at you. Still with a hand on <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> collar and pressed against each other you look with shock as <<=setup.getNpcName('npc_harassment', 'formal')>> snaps a picture with her phone.<br>
<br>
"@@.npc_harassment;Oh, you two are just TOO adorable!@@" Moving closer she reaches past your finger to clip the leash back to <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> collar. "@@.npc_harassment;Sorry <<=$player.first_name>>, but I will be taking my property back now. I'm glad the two of you had a nice time, but my business here is concluded for today but we will see you later.@@"<br>
<br>
Still stunned you stand and stare as the two of them leave the office, <<=setup.getNpcName('npc_harassment_assist', 'first')>> looking back to blow you a kiss.<br>
<br>
You stand still for a few moments more before you sense <<=setup.getNpcName('npc_manager', 'formal')>> standing next to you. "@@.npc_manager;I believe it is time for you to be getting back to work?@@"<br>
<br>
Letting out a yelp you almost jump into the air, quickly hurrying back to your desk and flurrying on the keyboard.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles before returning to her office.<br>
<br>
[<<moveTo $workEventReturn "Return to work." 1200>>]
<<else>>
Thanking <<=setup.getNpcName('npc_harassment_assist', 'formal')>> for the compliment you note that you have some work to do.<br>
<br>
"@@.npc_harassment_assist;Oh, of course! I wouldn't want to... distract you from your hard... work. Do you mind if I just sit and watch?@@"<br>
<br>
Not seeing any better option you nod, returning to your desk as <<=setup.getNpcName('npc_harassment_assist', 'first')>> finds a seat behind you.<br>
<br>
You can see <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> reflection staring at you through your monitor with that same too-cute smile as you try to focus on your work. Settling for looking down at your keyboard so as not to be distracted by the way they are not-so subtly licking of their lips and waggling of their long eyelashes you are taken by surprise when their face appears next to your ear.<br>
<br>
"@@.npc_harassment_assist;You look so hot when you're working... Are you sure you can't take a break? I bet I could help relieve some of your... stress...@@" As they talks their hands explore your chest, before one slides slowly downward...<br>
<br>
[<<moveTo "event_work_hr_harrassment_assistant_2" "Politely pull their hands away and return to your work." 120 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_work_hr_harrassment_assistant_2" "Lean back and enjoy the attention." 120 "<<set $scene.accept=true>>">>]
<</if>>
</div>/*#
#desc: succumb to harrassment assistants second attempt to seduce you
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.accept>>
<<set $player.timebased.horny += 20>>
<<set $npc_harassment.flags.stage = 4>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if setup.getItemFromType("cage") != "">>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> is just too much and you moan as a hand slides down to squeeze your caged <<getWordMyPenis $player>>.<br>
<br>
"@@.npc_harassment_assist;Mmmm, you feel sooo big...@@" <<=setup.getNpcName('npc_harassment_assist', 'first')>> whispers, kissing you just behind the ear.
<<else>>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> is just too much and you moan as the hand slides down to squeeze your growing <<getWordMyPenis $player>>.<br>
<br>
"@@.npc_harassment_assist;Mmmm, you feel sooo hard...@@" <<=setup.getNpcName('npc_harassment_assist', 'formal')>> whispers, kissing you just behind the ear. "@@.npc_harassment_assist;I love hard things...@@"
<</if>>
<br><br>
<<if $player.flags.dominantsissy>>
Something about <<=setup.getNpcName('npc_harassment_assist', 'first')>> has your dominate side roaring into power. Grabbing hold of their collar you pull them in for a rough kiss, hungrily wrapping your lips around theirs, your tongue spearing possessively into their obediently accepting mouth.
<<else>>
Despite your normal well-groomed submissiveness there is just something about <<=setup.getNpcName('npc_harassment_assist', 'first')>> that has you wanting to take charge. You lean back, one hand reaching out to grab their collar to pull them in for a passionate kiss.
<</if>>
<br><br>
Straddling your seated form <<=setup.getNpcName('npc_harassment_assist', 'first')>> moans as the two of you share a passionate kiss. With one hand on their collar, the other squeezes their pert, tight ass as they press submissively into you.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> starts to slink to the floor as you slide to the edge of your seat only to look up and find <<=setup.getNpcName('npc_harassment', 'formal')>> and <<=setup.getNpcName('npc_manager', 'formal')>> staring at you from the doorway to the inner office.<br>
<br>
"@@.npc_manager;Well, well well,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a slight smile. "@@.npc_manager;Sorry to interrupt the... fun, but we have concluded our business and <<=setup.getNpcName('npc_harassment', 'formal')>> needs to get back to her office.@@"<br>
<br>
Rising to their feet <<=setup.getNpcName('npc_harassment_assist', 'first')>> gives you a final peck on the cheek before dashing over and presenting their throat for a leash.<br>
<br>
Following along behind their owner <<=setup.getNpcName('npc_harassment_assist', 'first')>> takes a final moment to blow you a kiss just before the door closes behind them.
<<else>>
Though the hands on your body have you straining <<if setup.getItemFromType("cage") != "">>within your cage <<else>>beneath your clothes<</if>> you carefully extricate yourself from <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> grasp and insist that you need to get back to work.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> pouts a bit before moving away. Several more tense minutes pass before you hear the inner door open and <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_harassment', 'formal')>> emerge from the inner office.<br>
<br>
<<=setup.getNpcName('npc_harassment', 'formal')>> looks slightly surprised as she glances between you and her assistant. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> expression can only be described as enigmatic.<br>
<br>
<<printThought $player "Was this some sort of game?">><br>
<br>
"@@.npc_harassment;Come along, <<=setup.getNpcName('npc_harassment_assist', 'first')>>@@" she calls, clipping the leash back to <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> collar before leading the way out of the office. Just before the door closes <<=setup.getNpcName('npc_harassment_assist', 'first')>> looks back and blows you a kiss before the leash goes taut and <<=setup.getNpcName('npc_harassment_assist', 'first')>> is drug away.
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> graces you with the slightest smile and a knowning nod before returning to her office.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
</div>/*#
#desc: president of nintendolls comes by for a meeting
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.repeat = false>>
<<switch $npc_nintendolls.flags.stage>>
<<case 0>>
<<set $npc_nintendolls.flags.stage = 1>>
<<case 1>>
<<if $npc_manager.stage > 1>>
<<set $npc_nintendolls.flags.stage = 2>>
<<else>>
<<set $scene.repeat = true>>
<</if>>
<<case 2>>
<<if $npc_manager.stage > 2>>
<<set $npc_nintendolls.flags.stage = 3>>
<<else>>
<<set $scene.repeat = true>>
<</if>>
<<case 3>>
<<case 4>>
<<case 5>>
<</switch>>
<<if $npc_manager.stage < 4 && $npc_nintendolls.flags.stage > 4>>
<<set $scene.stage = 4>>
<<else>>
<<set $scene.stage = $npc_nintendolls.flags.stage>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $npc_nintendolls.flags.stage == 1 && !$scene.repeat>>
Greeting some generic executive at the door you escort him into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office for his scheduled meeting.
<<else>>
Once again you greet <<=setup.getNpcName('npc_nintendolls', 'formal')>>, the president of <<=$player.flags.faultcompany>>.
<</if>>
<br><br>
<<switch $scene.stage>>
<<case 1>>
You lead him to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office with no incident as she dismisses you with a nod.<br>
<br>
<<if $scene.repeat>>
You nervously sit as another meeting between your <<=setup.getNpcName('npc_manager', 'title')>> and the president of the company whose data you lost proceeds but it proceeds in private, <<=setup.getNpcName('npc_manager', 'formal')>> not summoning you for anything and eventually <<=setup.getNpcName('npc_nintendolls', 'formal')>> leaves, walking past your desk with no comment... though he does flash you an ominous wink.
<<else>>
Half an hour later, just after he has left <<=setup.getNpcName('npc_manager', 'formal')>> stops beside your desk.<br>
<br>
"@@.npc_manager;You know who that was? That was <<=setup.getNpcName('npc_nintendolls', 'formal')>>, the President of <<=$player.flags.faultcompany>>. You remember them and that messy debacle you caused? Well despite all that it seems they are interested in furthering their corporate partnership with us, apparently they are quite interested in adopting some of our managerial techniques to help improve employee engagement and productivity.@@"<br>
<br>
You gulp as you try to think of what precise techniques <<=setup.getNpcName('npc_manager', 'formal')>> might be referring to. She goes into no further detail, however, merely smiling before returning to her office.
<</if>>
<br><br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<<case 2>>
<<if $scene.repeat>>
Once again <<=setup.getNpcName('npc_nintendolls', 'formal')>>, the President of <<=$player.flags.faultcompany>> appears for a visit with your <<=setup.getNpcName('npc_manager', 'title')>>. Walking past your desk on the way to his office he flashes you a leering grin.<br>
<br>
"@@.npc_nintendolls;Staying safe?@@" He asks, his gaze flitting down between your legs reminding you of how your <<=setup.getNpcName('npc_manager', 'title')>> showed off your caged state in front of him. You blush in embarrassment as he laughs and continues on to his meeting.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<<else>>
Still nervous about your error's cost to his company you almost apologise before chickening out and merely leading him to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office for his scheduled meeting.<br>
<br>
You are about to return to your desk when <<=setup.getNpcName('npc_manager', 'formal')>> stops you short. "@@.npc_manager;Actually, <<=$player.first_name>>, stay for a moment, I think you would be just perfect to help me explain something.@@"<br>
<br>
The man's expression is cold and unreadable as he waits for <<=setup.getNpcName('npc_manager', 'formal')>> to continue.<br>
<br>
"@@.npc_manager;Of course, that was in <<=ps($player.first_name)>> previous role at Cloud Data Services, but you well understand how that sort of mistake resulting from a... distracted employee can cause all manner of harm. As well as being more suited to a position as my secretary <<=$player.first_name>> is kept more focused on performing <<if $player.flags.fem_style.name=="">>his<<else>>her<</if>> duties in many ways. Would you please remove your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>> to show <<=setup.getNpcName('npc_nintendolls', 'formal')>> the device you wear to help keep you behaved?@@"<br>
<br>
[<<moveTo "event_work_nintendolls_president_cage" "Expose yourself as instructed" 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_nintendolls_president_cage" "Refuse" 60 "<<set $scene.obey=false>>">>]
<</if>>
<<case 3>>
Still nervous about your error's cost to his company you quickly lead him to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office for his scheduled meeting.<br>
<br>
You are about to return to your desk when <<=setup.getNpcName('npc_manager', 'formal')>> stops you short. "@@.npc_manager;Hmm, actually, I think today would be a great opportunity for you to "make it up" to <<=setup.getNpcName('npc_nintendolls', 'formal')>> for your... failure in shepherding his company's data.@@"<br>
<br>
"@@.npc_manager;No offense, <<=setup.getNpcName('npc_nintendolls', 'formal')>> but you are looking a bit more stressed than usual, how would you like for my assistant to help... relieve you a bit before our meeting?@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at you. "@@.npc_manager;Now, then, sissy. How about you crawl over and put those cute lips to work showing our guest some proper hospitality.@@"<br>
<br>
As you look from <<=setup.getNpcName('npc_manager', 'formal')>> to <<=setup.getNpcName('npc_nintendolls', 'formal')>> he sits down, spreading his legs to expose the sizable bulge in his pants.<br>
<br>
[<<moveTo "event_work_nintendolls_president_oral" "Drop to your hands and knees and obey" 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_nintendolls_president_oral" "Refuse." 60 "<<set $scene.obey=false>>">>]
<<case 4>>
Glancing at the time you note that he is several minutes early. Wordlessly he stops in the middle of the room and turns towards you to nod in the direction of his crotch.<br>
<br>
<<printThought $player 'Does he expect me to "make it up" to him every time he visits?'>><br>
<br>
[<<moveTo "event_work_nintendolls_president_pre_oral" "Drop to your knees" 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_work_nintendolls_president_pre_oral" "Refuse his command" 60 "<<set $scene.accept=false>>">>]
<<case 5>>
Rising from your seat to welcome <<=setup.getNpcName('npc_nintendolls', 'formal')>> for another in what seems like an endless series of meetings with your <<=setup.getNpcName('npc_manager', 'title')>> you are surprised when he is not alone as he strides through the door. Even more shocking, or at least, shocking for one unaccustomed to things up here on <<=$player.work.floorNumber>> is the person who follows at his heels, a leather leash running from her throat to his hand.<br>
<br>
Bound severely his "assistant" walks atop steep ballet heels, her skirt so short as to let her caged sissy clitty peek out below, legs hobbled at ankle and thigh and you know without even looking that a thick plug is filling her bum. Her arms are pulled back in a strict elbow-to-elbow armbinder, thrusting her chest forward to draw further attention to a pair of large breasts, each nipple pierced and ringed, the perfect globes perched precariously atop the corset that has crushed her into a stunning hourglass figure.<br>
<br>
Through a combination of an intensely steep rigid posture collar and peripheral-vision robbing blinkers she is unable to look anywhere save straight ahead, her lips spread wide around a massive ball gag, and yet her eyes twinkle with lust.<br>
<br>
Looking back at you as you stare at the girl <<=setup.getNpcName('npc_nintendolls', 'formal')>> grins wide.<br>
<br>
"@@.npc_nintendolls;You like? With your Manager's help I have been making aggressive changes to all levels of my organisation - this lovely thing here is a true treasure, she was once a quite cantankerous board member but thanks to our new policies well... she seems so much more lovely and happy now, don't you think?@@"<br>
<br>
Despite her precarious stance and rigid bondage the girl manages to curtsey, her eyes fluttering with obvious lust as she looks up at him.<br>
<br>
"@@.npc_nintendolls;Lovely, you know often she is not this well behaved but it seems the new dosage is working quite well, either way, she will learn, in time. Well, we had best get to our meeting! I cannot wait to show <<=setup.getNpcName('npc_manager', 'other')>> the monumental success her advice has brought, and to thank her for recommending me to the board of SISSI!, In a way your foolish loss of data was one of the best things that happened, it really has opened so many doors...@@" <br>
<br>
You stare as the two of them head into the inner office, simultaneously scared, aroused and... jealous? Of his cute pet.<br>
<br>
Some time later as the two of them depart - the girl as securely bound, and seemingly just as happy, as she was before, even winking at you in the brief moment she is facing you coming out of the inner office.<br>
<br>
Stopping next to your desk <<=setup.getNpcName('npc_manager', 'formal')>> stares wistfully after them. You once again feel a twinge of jealousy, until she looks down upon you, her smile and the lusty look in her eye making it wordlessly clear how much you mean to her.<br>
<br>
"@@.npc_manager;It is so lovely when a project comes together, don't you agree?@@" She states enigmatically. "@@.npc_manager;Well, I shall not keep you from your work any longer, have a lovely day.@@"<br>
<br>
You remain sitting in stunned silence as she walks away, simultaneously wanting to call after her yet knowing that nothing you could say could improve on the near perfect moment.<br>
<br>
The door to the inner office shuts behind her and you turn back to your work.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<</switch>>
</div>/*#
#desc: show/forced to show off your chastity cage to president of nintendolls
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.obey>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
<<printThought $player "Am I really doing this?">><br>
<br>
Whatever your misgivings you find yourself obeying the command, removing your clothes to expose your caged <<getWordMyPenis $player>>. Even more embarrassing is that, you are swelled within your prison, as if in excitement.<br>
<br>
<<if setup.getTotalValue("humiliation") < 5>>
<<printThought $player "This can't be turning me on! What is wrong with me!">>
<<else>>
<<switch $player.flags.humiliationStyle>>
<<case "brazen">>
You feel the familiar burst of pleasure at exposing yourself, just another fun event in your life as a brazen slut.
<<case "bashful">>
You feel the familiar burst of pleasure at exposing yourself, yet another humiliation in your life of nigh-perpetual embarrassment.
<<default>>
<<printThought $player "Why does being humiliated turn me on so much?">>
<</switch>>
<</if>>
<br><br>
Walking around her desk to stand next to you <<=setup.getNpcName('npc_manager', 'formal')>> grabs hold of your cage, her warm grasp only having you strain even more painfully within it.<br>
<br>
"@@.npc_manager;The undisciplined male mind, as you well know, is prone to all manner of... distractions. This is an obvious issue in tech as it can lead to anything from errors, missed deadlines or interpersonal conflicts. We have found that an employee who is locked and controlled is far more docile, obedient, and productive on nearly every metric.@@"<br>
<br>
"@@.npc_nintendolls;I see, I see, and it opens up additional avenues of reward in the case of good behaviour as well.@@"<br>
<br>
"@@.npc_manager;Precisely!@@" She states with a smile. "@@.npc_manager;Speaking of rewards, let me return to our previous discussion on the utility of punishment as a tool to enhance employee motivation.@@"<br>
<br>
Her hand still grasping your cage she drags you to the desk and bends you over. A quick yank on your clothing has your bottom exposed.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
"@@.npc_nintendolls;Is the plug part of employee discipline as well, or is your secretary just a depraved pervert?@@"<br>
<br>
"@@.npc_manager;A little of both, actually.@@" She states, using a finger to wiggle the plug against your prostate. "@@.npc_manager;It serves a dual purpose as a reward to make up for the inability to receive conventional stimulation, as well as a reminder of how utterly controlled they are. Worn continuously, and with additional reinforcement, it does an excellent job of re-orienting the wearers thoughts and desires.@@"<br>
<br>
You can't help but moan, as humiliated as you are the pressure against your prostate feels so good...<br>
<br>
She withdraws her hand leaving you trembling with want. "@@.npc_manager;Anyway, enough with that distraction, I had something else I wished to show you.@@"<br>
<br>
<</if>>
"@@.npc_manager;You know, given all that this one cost your company, it seems only fair that you have the opportunity to administer a punishment personally. Why not use your belt? We have found that quite effective when an impromptu punishment is in order.@@"<br>
<br>
Standing beside you <<=ps(setup.getNpcName('npc_manager', 'formal'))>> hand gently, but firmly, holds you in place as you listen to the THWIP of his removing his belt.
<<else>>
<<printThought $player "This is crazy! No way am I exposing myself!">><br>
<br>
You're trying to compose a verbal rejection to the bizarre request as <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows.<br>
<br>
"@@.npc_manager;Hmm, looks like we will be demonstrating things a bit out of my planned sequence.@@"<br>
<br>
You do not have time to consider what that could mean when she is suddenly in front of you. Meeting your gaze with a stern glance she grabs your cage right through your clothing and pulls you over to her desk. Bent over and held down with one hand she uses the other to pull down your clothes and exposed your bare bottom.<br>
<br>
"@@.npc_manager;It seems this one has forgotten their training, no matter, it is a good opportunity to demonstrate some of the principles of punishment we had discussed previously. How about you take off your belt and administer some... remediation for the errors that lost all of that test data?@@"<br>
<br>
You tense in anticipation as you hear approaching footsteps combined with the THWIP of a belt being removed.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
You can sense him standing behind you when he pauses, seeming to notice the <<=setup.getItemName(setup.getItemFromType("plug"))>> occupying your bottom.<br>
<br>
"@@.npc_nintendolls;Hmm, is this part of training, or is this one just a depraved pervert?@@"<br>
<br>
"@@.npc_manager;A little of both, actually.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states, using a finger to wiggle the plug against your prostate. "@@.npc_manager;It serves a dual purpose as a reward to make up for the inability to receive conventional stimulation, as well as a reminder of how utterly controlled they are. Worn continuously, and with additional reinforcement, it does an excellent job of re-orienting the wearers thoughts and desires.@@"<br>
<br>
You can't help but moan, as humiliated as you are the pressure against your prostate feels so good...<br>
<br>
<<switch $player.flags.humiliationStyle>>
<<case "brazen">>
You feel the familiar burst of pleasure at your exposed situation, just another fun event in your life as a brazen slut.
<<case "bashful">>
You feel the familiar burst of pleasure at your exposed situation, yet another humiliation in your life of nigh-perpetual embarrassment.
<<default>>
<<printThought $player "Why does being humiliated turn me on so much?">>
<</switch>>
<br><br>
She withdraws her hand from your plug, leaving you trembling with want. "@@.npc_manager;Anyway, this is supposed to be a punishment, so how about you show this cute bum who is boss?@@"<br>
<br>
<</if>>
<</if>>
<br><br>
*THWACK!*<br>
<br>
You cry out in pain at the hard impact of leather against your exposed bottom.<br>
<br>
"@@.npc_manager;As well as serving to help a recalcitrant employee re-focus on their duties to the company we find that this sort of... personal treatment helps with team cohesion, as well as reinforcing subordinate/superior hierarchical relationships.@@"<br>
<br>
*THWACK!* *THWACK!*<br>
<br>
You cry out in pain at the repeated hard slaps. Less precise than <<=setup.getNpcName('npc_manager', 'formal')>> is with her paddle he makes up for it with brute power, grunting in exertion with each hard slap.<br>
<br>
"@@.npc_nintendolls;I understand. I can think of more than a few members of the board that could do with being brought in line like this!@@"<br>
<br>
"@@.npc_manager;As I have told you before. These are all very useful techniques, how you apply them is up to the individual needs of an organisation.@@"<br>
<br>
Several more hard slaps have you whimpering in pain and were it not for <<=setup.getNpcName('npc_manager', 'formal')>> holding you up you would have slid to the ground and curled into a ball.<br>
<br>
"@@.npc_manager;Hmmm, I believe that will be enough for now. As with anything moderation is key, and my cute secretary here still has to sit down for the rest of the day.@@"<br>
<br>
Pulling up your clothes she gives your cage a gentle squeeze before helping you back to your feet. "@@.npc_manager;Back to work, my dear.@@"
<br>
Somehow thinking to drop into a curtsy you quickly retreat from the inner office, taking a seat at your desk with a wince of pain.<br>
<br>
Focused on your duties you barely even notice when <<=setup.getNpcName('npc_nintendolls', 'formal')>> departs some time later.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
</div>/*#
#desc: administer/forced to give blowjob to president of nintendolls
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.obey>>
<<applyExperience 'humiliation' 12 'slightly' $SEEN_FRIEND>>
<<elseif $fetish.get_raped>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<if $scene.obey || $fetish.get_raped>>
<<set $npc_nintendolls.flags.stage = 4>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
With a final glance at <<=setup.getNpcName('npc_manager', 'formal')>> you slide to the floor, crawling towards <<=setup.getNpcName('npc_nintendolls', 'formal')>> as he sits dispassionately, looming above you.<br>
<br>
Crawling between his legs you place your hands gently on the edge of his chair, your face inches from his bulging manhood. Your voice soft you look up at him and blink twice before asking if you might free his cock so as to serve it.<br>
<br>
He nods and you continue to look seductively upwards as you unfasten his pants, his thick manhood springing up with such force as to almost smack you in the face.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
As big as he is you've trained on bigger and you easily slide his cock down your throat. You feel him stiffen further, clearly surprised that one as dainty as yourself could so easily accept him in one go.
<<else>>
He may be big, but no larger than you are experienced with. Opening wide you slide him down your throat, letting out but a single, soft cough in the process of burying your nose against his belly.
<</if>>
<br><br>
Tongue and lips and throat working together you bob up and down with long, sucking strokes, zeroing in on his most sensitive bits as you softly caress his balls with your free hand.<br>
<br>
Under your expert attention you can feel his pulse race, his cock stiffening even further as his breaths come faster.<br>
<br>
With a final gasp he explodes, filling your mouth with rich, creamy cum.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
Strong and thick and delicious you eagerly slurp him dry of every drop.
<<else>>
Strong and thick and a little bitter you know well enough than to spit it out, forcing yourself to choking it all down without objection.
<</if>>
<br><br>
Sitting back you smile up at him before carefully tucking his wilting cock away and zipping him back up.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
He is far too big for you to even attempt to deepthroat so you focus on kissing and licking and sucking up and down his length, your tongue dancing around his glans and through his slit as you seek out where he is the most sensitive.
<<else>>
As huge as he is intimidating you decide to focus on his cock-head, barely wrapping your lips around his tip to suck and tornado lick in a manner you hope he finds pleasurable.
<</if>>
<br><br>
In spite of your lack of experience he seems to quite enjoy your efforts, though he does end up taking charge towards the end, grabing your head with both hands and slamming against the back of your mouth. With a grunt he cums directly down your throat, a thick, spurting jet that almost completely bypasses your tongue to shoot down into your stomach.<br>
<br>
Gasping and coughing you flail a bit as he finishes off, finally pulling away trailing drool and panting for air.<br>
<br>
"@@.npc_nintendolls;Heh, looks like your slut could do with a bit of training!@@"<br>
<br>
"@@.npc_manager;Hmm, it would appear so, at least if she is to properly accommodate one of your magnificence.@@"<br>
<br>
The way they're speaking of you has you feeling humiliated, more object that person... and yet you feel your <<getWordMyPenis $player>> straining within its cage...<br>
<br>
You're still trying to catch your breath as he tucks his wilting member back into his pants.
<</if>>
<br><br>
Looking a little flush from his orgasm he tries to maintain his composure. "@@.npc_nintendolls;Hmm, it's a start, I suppose.@@"<br>
<br>
"@@.npc_manager;Of course, of course. As good of a cocksucker as my sweet sissy may be no one blowjob could make up for the monetary damage her silly mistake incurred. Do feel free to avail yourself of her skills any time in the future. She can always use the practice!@@"<br>
<br>
"@@.npc_nintendolls;Hmm, I believe I will be doing just that...@@" He says with a grin that has you blushing.<br>
<br>
Rising to your feet you glance towards <<=setup.getNpcName('npc_manager', 'formal')>> for approval, she nods in dismissal and you head back to your desk.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<<else>>
You shake your head in refusal and <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows in an intimidatingly familiar way.<br>
<br>
<<printThought $player "Uh-oh...">><br>
<br>
<<if $fetish.get_raped>>
Springing forward like a panther she is on you before you can even move, one hand grabbing you by the hair and dragging you over to where <<=setup.getNpcName('npc_nintendolls', 'formal')>> is seated.<br>
<br>
Forcing you to your knees she presses your face against his bulging pants before apologizing. "@@.npc_manager;I am very sorry for my foolish sissy's disobedience, would you be so kind as to rape it out of her throat?@@"<br>
<br>
She tilts your head back so that you can watch his face split into an evil grin, whispering in your ear as he makes a show of unfastening his pants to reveal his large, hard member.<br>
<br>
"@@.npc_manager;If you bite him I will make your life a living hell. Do you understand, sissy?@@"<br>
<br>
Nigh petrified you nod and a moment later she forces you face first onto his cock.<br>
<br>
You aren't sure when the grasp on your head switches from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> one handed hair-grab to <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> two-handed vice-like hold but the result is the same either way: your face being skull-fucked like a living onahole.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Fortunately you have trained with far larger cocks than his, reflexively relaxing your throat and accepting all of him into your gullet with an aroused moan.
<<else>>
Though near your limit his size is within your trained capacity as you reflexively relax your throat to hilt him with a gasp.
<</if>>
<br><br>
"@@.npc_nintendolls;Shit, not many girls can take me on the first attempt, why was she so reluctant?@@"<br>
<br>
"@@.npc_manager;Just a stubborn, bratty slut, I suppose.@@" Your <<=setup.getNpcName('npc_manager', 'title')>> replies, as your are pounded up and down his cock.<br>
<br>
You're so much of a mouth fuck-hole this brutal treatment only serves to turn you on and you cannot help but let out a moan as you are face-fucked hard.<br>
<br>
Putting your tongue and lips to work sucking with each stroke it isn't long before the man explodes, your face shoved all the way down with both hands as he shoots a thick jet of cum straight into your belly.<br>
<br>
Well trained in this sort of thing you hold your breath until his grip finally slips, sliding off his softening cock with a slurp before reflexively licking your lips and catching your breath.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You may have some experience as a cocksucker but in speed, size and girth this is far beyond what you can handle.
<<else>>
His large cock would be a challenge in any scenario given your barely existent skills but being forcibly face-fucked is on a whole other level.
<</if>>
You gasp and pant, shedding drool and tears as he pounds against the back of your throat. Never getting more than half his length past your lips you feel ready to retch, your flailing arms held out of the way by <<=ps(setup.getNpcName('npc_manager', 'formal'))>> firm grasp as your helpless throat-rape continues.<br>
<br>
To your "fortune" it seems that he is really getting off on the brutal treatment as it is not long before he slams to a fresh depth, his tip barely penetrating into your throat as he spurts thick cum directly down your gullet.<br>
<br>
His hold relaxed you slide off, your mouth wide trailing drool and cum as you cough and pant and attempt to recover.
<</if>>
<br><br>
Looking a little flush from his orgasm he tries to regain his composure after the aggressive face-rape. "Hmm, it's a start, I suppose." <br>
<br>
"@@.npc_manager;Of course, of course. As good of a cocksucker as my sweet sissy may be no one blowjob could make up for the monetary damage her silly mistake incurred. Do feel free to avail yourself of her skills any time in the future. She can always use the practice!@@"<br>
<br>
"@@.npc_nintendolls;Hmm, I believe I will be doing just that...@@" He says with a leer that has you blushing.<br>
<br>
Staggering to your feet you glance towards <<=setup.getNpcName('npc_manager', 'formal')>> for approval, she nods in dismissal and you head back to your desk.
<<else>>
Her gaze narrows at your refusal but then softens as she re-addresses <<=setup.getNpcName('npc_nintendolls', 'formal')>> "@@.npc_manager;I am sorry, but it appears my assistant is a bit out of sorts today, perhaps she will be feeling more... participatory at some other time.@@"<br>
<br>
With a gesture she dismisses you from the room and you hurry back to your desk, thankful that nothing bad happened.
<</if>>
<br><br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<</if>>
</div>/*#
#desc: president of nintendolls tries to get a blowjob from you before his meeting with your manager
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<if $scene.accept>>
<<applyExperience 'cum' 11 'slightly' $SEEN_STRANGER>>
<<applyExperience 'whoring' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'normal' $SEEN_STRANGER>>
<<set $npc_nintendolls.flags.stage = 5>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
At his wordless command you slide to your knees, smiling seductively up as you reach for his belt and free his half-hard cock.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Several long, sensuous licks is all it takes to bring him to full hardness and you eagerly dive throat-first down his length.
<<if setup.getTotalValue("oral") > 15>>
Showing off your consummate skill you place your hands behind your back, bobbing up and down as you throat-fuck yourself until you sense he is on the verge of orgasm.
<<else>>
Sucking hard and deep you blink up at him at full depth until your vision starts to flicker, only then pulling back and resuming a more "standard" throat-fuck.
<</if>>
<br><br>
Wrapping one hand around his shaft you focus on his sensitive upper half, licking and sucking and moaning in approval until he starts to pulse. With exquisite timing you pull back to your lips and open wide to give him a view of his cum splashing against the back of your throat.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
His <<getWordPenis $player>> may be massive and intimidating but you do your best, sucking and licking his glans, stroking with both hands and running your tongue along the underside of his shaft as you deploy every trick you know to bring him closer to climax.
<<else>>
Doing much more than sucking on his fat tip is far beyond your abilities but you do your best, stroking with both hands as you suck and lick and slurp.
<</if>>
<br><br>
Fortunately he seems to prove the truism that "the bigger they are, the faster they cum" .... or something to that effect. It isn't long until his balls tighten and he grunts as you quickly shove him past your lips as he paints the inside of your mouth with thick wads of cum.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") >= 10>>
Strong and smoky like an aged scotch you let his seed percolate in your mouth for a few moments, showing off how much his virile balls have produced before showily gulping it down.
<<else>>
Strong and bitter his thick cum takes a bit of effort to choke down but you manage it without spilling, making a show of smiling back up at him.
<</if>>
<br><br>
"@@.npc_nintendolls;Not bad. Until next time, slut.@@" He states, zipping up and turning away, the inner office door slamming behind as he proceeds to his scheduled meeting.<br>
<br>
Rising to your feet you return to your workstation.<br>
<br>
<<printThought $player "How many more times until he considers my mistake paid for?.... Probably a lot">><br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<<else>>
When you don't immediately drop to your knees his gaze narrows. Lunging towards you his large, open hand swings towards your face.
<<if setup.getTotalValue("martial_arts") > 10>>
On reflex you reverse his attack, twisting his arm up behind his back with both hands before pushing him away. As you release you look across to meet <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze as she stands in the doorway to her inner office, taking in the scene. Lips thin she slowly shakes her head before smiling and walking towards <<=setup.getNpcName('npc_nintendolls', 'formal')>>.<br>
<br>
"@@.npc_manager;Do not worry, I will attend to her... punishment later, ignore the stupid sissy for now, we have much business to attend to.@@"<br>
<br>
Looking at you with a mix of confusion and anger he walks away, massaging his shoulder as he follows <<=setup.getNpcName('npc_manager', 'formal')>> into her inner office.<br>
<br>
Some time later you get a message from <<=setup.getNpcName('npc_manager', 'formal')>> ordering you into her office.<br>
<br>
Nervously gulping, and reflecting on your earlier action you find yourself walking to the inner door, stepping inside before you can consider doing anything else.<br>
<br>
Sitting and staring silently the man waits as <<=setup.getNpcName('npc_manager', 'formal')>> addresses you.<br>
<br>
"@@.npc_manager;So, we have been discussing what occurred earlier and, well, I do believe that an apology is in order.@@"<br>
<br>
You start to open your mouth only for <<=setup.getNpcName('npc_nintendolls', 'formal')>> to speak first.<br>
<br>
"@@.npc_nintendolls;I am sorry for attempting to strike you. While you are yet indebted to me for your mistakes it was quite improper of me to consider striking another's property. I ask that you forgive my error and forget that it happened.@@"<br>
<br>
You are quite dumbstruck, mouth agape as you try to think of how to respond.<br>
<br>
"@@.npc_manager;That will be all, <<=$player.first_name>>. You may return to work and, perhaps, show more considerate hospitality to my guests in the future.@@"<br>
<br>
As if in a daze you merely nod and turn. The inner door closing behind you still cannot quite figure out what happened, you had expected a nigh biblical punishment and are almost... disappointed? You shake your head, it is all far too confusing and you resolve to focus on your work and put it out of mind.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200>>]
<<else>>
Bracing for the strike you close your eyes only for the blow to fail to land. A heartbeat passes, so loud as to drown out everything else, then another before you finally open your eyes to behold quite a sight.<br>
<br>
Barely half the size of <<=setup.getNpcName('npc_nintendolls', 'formal')>> <<=setup.getNpcName('npc_manager', 'formal')>> nonetheless restrains him by the wrist with a single hand, his blow halted in mid-swing.<br>
<br>
Her voice is cold, icy enough to fill the room with chill. "@@.npc_manager;I gave you permission to use my secretary so as to afford her the opportunity to make up for her prior transgressions, that does not include striking her.@@" She releases her grasp on the man's wrist. He winces and massages it with his other hand. "@@.npc_manager;I believe you should be going now, we will meet to discuss business at a later date.@@"<br>
<br>
You stand in confused silence as the man glances between you and <<=setup.getNpcName('npc_manager', 'formal')>> before swiftly hurrying off out of the office.<br>
<br>
Stepping closer she reaches out to cup your chin, her touch gentle and yet somehow bearing just as much strength as when she held him immobile.<br>
<br>
"@@.npc_manager;Do not mistake things, I am quite... disappointed in your failure, but you. are. mine. and I will not abide or allow any to would harm my property.@@"<br>
<br>
You are uncertain how to feel, or respond, still trembling as surging adrenaline and your racing heart slowly calm.<br>
<br>
Withdrawing her hand <<=setup.getNpcName('npc_manager', 'formal')>> smiles slightly and then turns. "@@.npc_manager;You may return to work, now.@@" She states as she walks into the inner office, the door swinging shut without her ever looking back.<br>
<br>
<<printThought $player "What... How?">><br>
<br>
[<<moveTo $workEventReturn "Continue working." 600>>]
<</if>>
<</if>>
</div>
/% manager of employee discipline - long leather coat, gloves and boots over dominatrix attire
initial: manager_employee_discipline1.jpg
phase2: manager_employee_discipline2.jpg
phase4: manager_employee_discipline3.jpg
note: her "assistant" is a different girl/"girl" each time
%//*#
#desc: manager of hr discipline department visits for a meeting
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
/* Note: she is very punctual, only arrives at the top of the hour */
<<if $now.getUTCHours() < 11 || ( $now.getUTCHours() > 12 && $now.getUTCHours() < $player.work.time_evening.hour-1)>>
<<set $scene.generic = false>>
<<set _topofhour = setup.setNextDate($now, 0, window.getUTCHours($now)+1, 0)>>
<<set _tmpSeconds = setup.secondstoDate($now,_topofhour)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<set $scene.stage = Math.min($npc_manager.stage, $npc_discipline.flags.stage)>>
<<switch $scene.stage>>
<<case 0>>
<<set $npc_discipline.flags.stage = 1>>
<<case 1>>
<<set $npc_discipline.flags.stage = 2>>
<<case 2>>
<<set $npc_discipline.flags.stage = 3>>
<<case 3>>
<<if $npc_discipline.flags.stage >= 4>>
<<set $npc_discipline.flags.stage = 5>>
<<else>>
<<set $npc_discipline.other_call = "Mistress">>
<<set $npc_discipline.call = "Mistress">>
<<set $npc_discipline.flags.stage = 4>>
<</if>>
<<case 4>>
<</switch>>
<<if $npc_manager.stage < 4 && $npc_discipline.flags.stage > 2>>
<<set $scene.stage = 2>>
<<else>>
<<set $scene.stage = $npc_discipline.flags.stage>>
<</if>>
<<else>>
<<set $scene.generic = true>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.generic>>
You hear a knock on the door, some random corporate dude you don't recognise nodding on the way past before entering your <<=ps(setup.getNpcName('npc_manager', 'title'))>> office.<br>
<br>
Whatever the meeting is it doesn't last for more than about ten minutes, the man walking out stepping a bit gingerly as he adjusts his tie on the way past your desk, looking very flushed as he avoids making eye contact with you.<br>
<br>
<<printThought $player "Huh, I wonder what that was about?">><br>
<br>
<<if $npc_manager.stage > 3>>
As he walks out the door while re-tucking his shirt you can't help but notice a pink thong peeking up past the top of his pants.<br>
<br>
<</if>>
[<<moveTo $workEventReturn "Continue working." 1200 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
Sharply on the hour you hear a knock on the door, your <<=ps(setup.getNpcName('npc_manager', 'title'))>> schedule listing a meeting with <<=setup.getNpcName('npc_discipline', 'formal')>>, HR Manager in charge of Employee Discipline.<br>
<br>
<<switch $scene.stage>>
<<case 1>>
You open the door to find a tall, severe woman in a long leather coat. In her mid forties but in perfect shape her hair is pulled back. Expertly applied but harsh makeup gives her an overly formal look to compliment her striking figure. Steep leather heels and leather gloves peek out from the obscuring garment and she nods without smiling in acknowledgement of your greeting as you offer to take her coat. She shakes her head, never even speaking a word to you as she moves past to the door to the inner office.<br>
<br>
Hurrying ahead you hold the door, the woman walking past without a second glance. <<=setup.getNpcName('npc_manager', 'formal')>> dismisses you with a wave and you return to your desk as the two women commence their meeting.<br>
<br>
Half an hour later, precisely, the woman emerges, her coat just as tight as when she went in, and just as dismissive of you as you hold the door for her exit.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1800 "<<set $player.cutscene.lockinventory = false>>">>]
<<case 2>>
You open the door to find <<=setup.getNpcName('npc_discipline', 'formal')>> dressed in her same tight and obscuring ensemble of leather coat, gloves and boots. At her side is another woman, this one wearing a long, narrow skirt and a long, shiny poncho that completely conceals her from neck to waist. Both women reject your offer to take their coats, four sharp stiletto heels clicking across the room before they disappear into your <<=ps(setup.getNpcName('npc_manager', 'title'))>> inner office.<br>
<br>
Though you <<=ps(setup.getNpcName('npc_manager', 'formal'))>> door is thick you could swear you hear the occasional sound from the inner office during the course of the meeting, something that sounds like a sharp crack and, once, a muffled high-pitched cry.<br>
<br>
Half an hour on the nose the two women emerge. <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> assistant is a bit unsteady, wincing slightly with each step, her face quite flushed and her previously perfect makeup slightly streaked as if she had been crying.<br>
<br>
Neither woman acknowledges you as they depart the office, your <<=setup.getNpcName('npc_manager', 'title')>> watching them go before smiling in your direction and nodding for you to return to work.<br>
<br>
You find yourself even more puzzled by the mysterious <<=setup.getNpcName('npc_manager', 'formal')>> as you resume your work.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1800 "<<set $player.cutscene.lockinventory = false>>">>]
<<case 3>>
Once again welcoming <<=setup.getNpcName('npc_discipline', 'formal')>> and todays assistant, her body concealed by a long poncho and matching skirt. The assistant is <<if $npc_discipline.flags.stage >= 4>> pushing a large wheeled box<<else>>carrying a large briefcase<</if>> and you lead them into the inner office only for <<=setup.getNpcName('npc_manager', 'formal')>> to order you to stay.<br>
<br>
You catch a quick glance from the assistant, wide innocent eyes that communicate a touch of fear and... a bit of comforting concern? You are quickly distracted by other things as <<=setup.getNpcName('npc_discipline', 'formal')>> opens her jacket to reveal a leather teddy underneath, her jacket arrayed behind her like a cape, a flogger hanging from one hip as she smiles at you in a somewhat concerning manner.<br>
<br>
<<if $npc_discipline.flags.stage > 4>>
"@@.npc_manager;So, one of the rules for working in the discipline department is that you must first gain an... intimate familiarity with the various techniques you will be required to employee in keeping other employees in line. Towards that end <<=setup.getNpcName('npc_discipline', 'other')>> has brought one of her trainees to work on a particular specialized technique that is used for when two employees are found to have been conspiring together in a manner contrary policy.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> smiles at you as her "assistant" wheels up the crate before moving to stand next to you, shedding her poncho and skirt to reveal that she is completely naked underneath.<br>
<br>
"@@.npc_discipline;Now, since you have volunteered to help, you can choose your "role" as it were - would you like to assume the position of the "ringleader," or that of the foolish girl who went along with the naughty plan?@@"<br>
<br>
[<<moveTo "event_work_hr_discipline_pair_1" "Say you see yourself as more of a leader." 360 "<<set $scene.leader=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_pair_1" "Say you would have definitely been the follower." 360 "<<set $scene.leader=false>>">>]
<<else>>
/% assistant bondage: discipline_assistant.jpg %/
"@@.npc_manager;I suppose a formal introduction should be in order - <<=setup.getNpcName('npc_discipline', 'other')>> leads the HR subdivision tasked with employee discipline. Today she has a new technique that she wanted to present to me for refinement and possible adoption and she asked if she could make use of you as a sort of A/B comparison point to show how its effects vary between its first application and repeated deployment.@@"<br>
<br>
The expression on the assistant's face suddenly makes sense and as her poncho and skirt are removed to reveal that she is naked save for a rope harness, intricate shibari covering wrapping her torso and breasts as well as holding her arms in a tight box tie behind her back. Your heart starts racing as you wonder what this "new technique" could involve.<br>
<br>
"@@.npc_manager;Please strip so that she can get started.@@"<br>
<br>
[<<moveTo "event_work_hr_discipline_demo_1" "Strip as instructed." 360>>]
<</if>>
<<case 4 5>>
<<if $npc_discipline.flags.stage <= 5 || random(5) < 2>>
"@@.npc_manager;So, one of the rules for working in the discipline department is that you must first gain an... intimate familiarity with the various techniques you will be required to employee in keeping other employees in line. Towards that end <<=setup.getNpcName('npc_discipline', 'other')>> has brought one of her trainees that to work on a particular specialized technique that is used for when two employees are found to have been conspiring together in a manner against policy.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> smiles at you as her "assistant" wheels up the crate before moving to stand next to you, shedding her poncho and skirt to reveal that she is completely naked underneath.<br>
<br>
"@@.npc_discipline;Now, since you have volunteered to help, you can choose your "role" as it were - would you like to assume the position of the "ringleader," or that of the foolish girl who went along with the naughty plan?@@"<br>
<br>
[<<moveTo "event_work_hr_discipline_pair_1" "Say you see yourself as more of a leader." 120 "<<set $scene.leader=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_pair_1" "Say you would have definitely been the follower." 120 "<<set $scene.leader=false>>">>]
<<else>>
<<if $player.flags.dominantsissy>>
/* discipline_assistant_steel + gag */
Walking into the office with her assistant in tow there has been no attempt to hide the girl's submissive sex-slave status. Of course, here on <<=$player.work.floorNumber>>, why would there be a need to?<br>
<br>
A steel collar locked around her throat denotes the girl as "owned" <<if $player.flags.collar.owner != "">>the same as yourself<</if>> but that is but the start of her steel bondage. Literally every piece of her "clothing" is composed of bondage gear; mirror-polished cuffs at her wrists, thighs and ankles linked with hobble chains along with matching chastity belt and bra. The ankle cuffs connect to a pair of steel high heels with a metallic ball gag strapped around her face to finish things off.<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> smiles as you stare at the very thorough bondage.<br>
<br>
"@@.npc_discipline;<<=setup.getNpcName('npc_manager', 'other')>> informed me that you have been begining to develop your skills as a domina. This one has been quite naughty of late so I offered to bring her by to give you some practice whilst we have our meeting. Don't pay attention to her feigned innocence, she is due for a nice, hard spanking at a minimum or, well, whatever creative punishment you can come up with, but know that she NEEDS to be disciplined.@@"<br>
<br>
Heading for the inner office <<=setup.getNpcName('npc_discipline', 'formal')>> winks at you. "@@.npc_discipline;Have fun!@@"<br>
<br>
Nervously staring back at you the bound girl waits for you to make your move.<br>
<br>
[<<moveTo "event_work_hr_discipline_dom" "Bend her over for a basic spanking." 120 "<<set $scene.creative=false>>">>]<br>
[<<moveTo "event_work_hr_discipline_dom" "Get creative before you paddle her ass." 120 "<<set $scene.creative=true>>">>]
<<else>>
Striding into the office single file <<=setup.getNpcName('npc_discipline', 'formal')>> and her assistant are dressed in identical leather coats.<br>
<br>
Seeing the two women stare down at you from atop their high heels boots has you feeling submissively tingly. "@@.npc_discipline;So, my assistant is getting ready to "pass out" as a fully credentialed chief with a specialization in employee discipline. <<=setup.getNpcName('npc_manager', 'other')>> volunteered you for her to get in a bit of extra... practice while the two of us meet. Have fun girls!@@"
<br>
With a flourish the assistant opens her coat to reveal the full height of her thigh-high boots the tight, sexy leather teddy that is her only other clothing. A thick transparent strapon dildo draws your gaze as it pops up from where it had lurked between her legs.<br>
<br>
"So, are you going to be a good girl... or do you need... discipline?" She states with a slight smile, menacingly stroking her artificial cock... and in so doing drawing attention to the fact that within the oversized clear dildo is what looks like her actual cock, hard but steel-bound at the centre of the transparent prison.<br>
<br>
[<<moveTo "event_work_hr_discipline_sub" "Submit willingly to her control." 120 "<<set $scene.obedient=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_sub" "See what she's got and be a bad girl." 120 "<<set $scene.obedient=false>>">>]
<</if>>
<</if>>
<<default>>
ERROR: unknown stage! <<=$scene.stage>><br>
[<<moveTo $workEventReturn "Continue working." 1200 "<<set $player.cutscene.lockinventory = false>>">>]
<</switch>>
<</if>>
</div>/*#
#desc: manager of hr discipline demonstrates remote controlling nipple clamps
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<useClothSetPush 'hr_discipline'>>
<<removeEverything $player $now>>
<<addItem "ball_gag_red">>
<<wearItem $player $now "ball_gag_red" true>>
<<addItem "rope_harness">>
<<wearItem $player $now "rope_harness" true>>
<<applyExperience 'bdsm' 14 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 10 'almost' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Opening the briefcase and retrieving a hank of rope she efficiently binds you identical to her assistant, the tight rope digging into your soft flesh and holding your bound arms <<if $player.body.breastsize[0] > 0>>and breasts<</if>> tight with just enough give so as not to cut off circulation.<br>
<br>
Next she produces a pair of ball-gags, first silencing her assistant before holding the matching ruby orb in front of your lips. A quick glance at your <<=setup.getNpcName('npc_manager', 'formal')>> and you obediently open your mouth, the gag pulled deep and cinched tight.<br>
<br>
Returning to the briefcase <<=setup.getNpcName('npc_discipline', 'formal')>> returns with two pairs of fat nipple clamps linked by chain. She flicks your nipples a couple times to make them swell and stiffen before tightening them down until you wince.<br>
<br>
<<if $scene.plug != "">>
Reaching behind she removes the <<=setup.getItemName($scene.plug)>> from your rear and then massages in a fresh blob of lube.
<<else>>
Moving behind she squirts a thick blob of lube into your empty rear.
<</if>>
You brace yourself for something new to penetrate and fill you but she walks away leaving your rear feeling slick and sensitive but frustratingly empty.<br>
<br>
Heart beating faster you wonder what else the briefcase contains but, to your surprise, <<=setup.getNpcName('npc_discipline', 'formal')>> instead steps to one side and pulls out her phone.<br>
<br>
"@@.npc_discipline;As you can see, minimal setup and the app has two modes, move and park. In park,@@" she taps her screen "@@.npc_discipline;tilt monitors trigger punishment when movement is detected. Step forward, both of you.@@"<br>
<br>
You step forward only to be drawn up short by a harsh, painful shock emanating from the nipple clamps. Your gaze flits towards your fellow "test subject" who has remained still, and thus un-punished.<br>
<br>
"@@.npc_discipline;As you can see, the prior experience has left its lesson. Of course disobeying instructions is its own failure.@@" She taps her phone and your compatriot crys out into her gag shuddering as electricity courses through her nipples for a couple of seconds. Your turning to watch is apparently enough movement to re-trigger your own clamps and you yelp as well as a fresh burst of pain blossoms on your chest.<br>
<br>
It takes a few moments for the two of you to recover, both now taking great care to stand as still as possible.<br>
<br>
"@@.npc_discipline;So, this feature is obviously quite useful for teaching patience, or just being certain that your property will remain where you left it on those occasions you do not have the time or supplies for more conventional security measures.@@"<br>
<br>
"@@.npc_manager;Convenient, but you said there was a second mode?@@"<br>
<br>
"@@.npc_discipline;Yes!, This is the really fun one - essentially you can wirelessly control your property, either directly like with a drone or, in a known enviroment, with a pathfinding algorithm - so you can, for example, issue a summons command, or send them on an errand without worrying about them getting lost. Here, watch.@@" She taps a few commands into the phone after which you feel a mild, but persistent jolt in your right nipple.<br>
<br>
The pain starts to increase until, watching your compatriot, you realise you are supposed to turn in that direction. Once you are facing the door there is a short pause, followed by a quick jolt in both nipples.<br>
<br>
Stepping forward you walk straight ahead, a few steps behind the more experienced girl until there is another jolt that you realise means "stop." <br>
<br>
<<if $player.work.floorNumber == 52>>
"@@.npc_discipline;Woops, almost forgot that this isn't quite appropriate attire for walking the halls... at least on this floor!@@"<br>
<br>
<<printThought $player "Wait... there's a floor that wearing nothing but rope and a gag WOULD be appropriate... Oh no, she's going to send me outside the office!">>
<<else>>
"@@.npc_discipline;Hmm, I don't want to have our lovely test subject waylaid on their journey, so probably best to cover up a bit.@@"
<</if>>
<br><br>
A long cloak is pulled around your body, complete with a hood to conceal your face. You'll look a bit odd, for certain, but you'll technically be concealed. Your nipples light up once again and you step forward behind your similarly-attired compatriot.<br>
<br>
"@@.npc_discipline;Off you go my dears!@@"<br>
<br>
Your heart races as you step out of the office, but the embarrassment of being seen in the halls exposed as you are loses out to the pain of disobedience. Sure you may be technically covered but you're quite helpless, and have no idea where your nipple clamps are going to lead you...<br>
<br>
In the hallway you divert from your partner as you turn right and her left as you steadily get the hang of following the simple commands. One nipple means turn in that direction, a quick jolt in both nipples indicating either start or stop walking. The system is remarkably precise, guiding you through the hallways until reaching a conference room on the far side of the floor. Though the door is shut you can hear some sort of small meeting going on within.<br>
<br>
Anticipating a return trip you start to turn only to be swiftly reprimanded. Facing the closed conference room door you realise it wants you to head inside. The door is cracked just enough for you to hear that there are people inside as the pain in your nipples rises insistently and you stumble forward, knocking the door open.<br>
<br>
Stepping into the room you find a woman giving a presentation to two men, she smiles at your arrival. "Ah, lovely, the entertainment, why don't we take that break and relax a bit while you take some time to mull over my plan." <br>
<br>
The two men smile in your direction, reaching to unzip their pants. Gagged and restrained either a hand or blowjob is pretty much off the table. You suddenly understand why <<=setup.getNpcName('npc_discipline', 'formal')>> lubed up your ass, as you seem presented with the prospect of bending over the table to take it from behind.<br>
<br>
[<<moveTo "event_work_hr_discipline_demo_2" "Spread your legs and bend over the table." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_demo_2" "Ignore the pain and flee back to the office." 60 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: fucked in a conference room or painfully flee
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $EXPOSED>>
<<if $scene.obey>>
<<applyExperience 'anal' 10 'very' $EXPOSED>>
<<applyExperience 'submission' 7 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Conference Room of Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conferenceroom.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You don't need the nipple clamps to tell you what to do as you walk up to the small table at the centre of the room and bend over, wiggling your ass invitingly.<br>
<br>
The woman smirks down at you as the men waste no time, the first placing a hand on your bare bottom as he lines up his cock with your wet hole.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
You grunt into your gag in acknowledgement as he slides easily into you. He feels about average size and you commence to deploy your back-door skills, squeezing and milking his cock as it slides in and your of your trained ass.<br>
<br>
His pace quickening it isn't long before he lets out a moan, grinding his hips against you as he deposits his load.<br>
<br>
Letting out a sigh at the fact that he finished so quickly you feel him slide out and the other man steps up.<br>
<br>
From the first you recognise a difference in size and temperament. A thick cock presses against your hole as he grabs firm hold of your rope harness to pull you into him. Slamming back and forth as he pounds you with his large cock you slide back and forth on the table, moaning in pleasure as he grunts in approval.<br>
<br>
Though he takes a little longer you soon earn your second shot of <<getWordCum $player>>, the man pulling you up to your feet as you look over at the grinning woman.<br>
<br>
Phone in hand she taps and then gives you a little wave, your nipple clamps sprinting to life to order you to turn back around towards the door.
<<else>>
Heart racing you are quite glad for his modest size, as well as the copious lube, as he penetrates your rear and begins fucking your ass. Gasping and moaning through your gag you are starting to enjoy the stimulation when he presses close and shudders, depositing a load of cum in your ass as his weight pushes you into the table.<br>
<br>
"Not bad," he finally gasps after finishing, sliding out and stepping out of the way as the second man approaches you from behind.<br>
<br>
Far less gentle than your first partner the man grabs you by the rope harness, pressing the thick tip of his cock against your slick and used rear. Eyes wide as you feel how large he is a long moan escapes your gag as he forces his way into your ass. Rising off the table as he pounds hard and deep you pant and gasp, feeling ready to split in two with each pounding thrust.<br>
<br>
Trembling you stare at the smirking woman, locking eyes as she stares back in amusement and takes a photo with her phone just as the man cums with a grunt deep in your ass. Pulling out he drops you to the floor where you stagger slightly, the woman taps on her phone and your nipple clamps come back to life ordering you to turn.<br>
<br>
"Thanks for the visit! Ta-ta!" She states with a wave as you wobble towards the door.
<</if>>
<br><br>
[<<moveTo "event_work_hr_discipline_demo_3" "Head back." 360>>]
<<else>>
Heart pounding you yelp through your gag and spin on your heels.<br>
<br>
Bumping into the door frame you almost fall without the help of your arms for stability but somehow manage to stagger forward, sprinting away up the hallway.<br>
<br>
Nipples afire with electric shocks you're too amped up on adrenaline to care, trying to remember your route as your race through hallways on your way back to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo "event_work_hr_discipline_demo_3" "Continue." 360>>]
<</if>>
</div>/*#
#desc: return from remote controlled nipple clamp "demo"
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<removeItem $player $now "ball_gag_red" true>>
<<deleteItem $player $now "ball_gag_red">>
<<removeItem $player $now "rope_harness" true>>
<<deleteItem $player $now "rope_harness">>
<<useClothSetPop 'hr_discipline' $player $now>>
<<if !$scene.obey>>
<<applyExperience 'humiliation' 15 'unbelievable' $EXPOSED>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
It's a good thing you have the painful nipple clamps to guide you as, in your slightly dazed, post-fucked state, you don't know if you could have navigated the route back to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
Arriving you find your compatriot waiting along with <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_discipline', 'formal')>>.<br>
<br>
"@@.npc_discipline;Aaand she's back!@@" She notes holding up the phone which presumably had been displaying your progress.<br>
<br>
"@@.npc_manager;An interesting demo, indeed, let me know when you have finished incorporating my feedback.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> smiles and gives a slight bow before helping you out of your restraints and back into your clothes. You wince in pain as the blood rushes back into your sore nipples<<if $scene.plug != "">> and a slight gasp as she slides the <<=setup.getItemName($scene.plug)>> back into your still-slippery rear<</if>>.<br>
<br>
Still bound the assistant is helped back into her skirt and poncho before obediently following <<=setup.getNpcName('npc_discipline', 'formal')>> out of the office.
<<else>>
By some miracle you manage to arrive back in front of the familiar door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. Stumbling in you find the door to the inner office open, <<=setup.getNpcName('npc_discipline', 'formal')>> looking up from her phone as you stumble forwards, the pain in your nipples finally ceasing.<br>
<br>
"@@.npc_discipline;Hmf, good time, but I suppose that's a bit of a demonstration failure given that the punishment failed to dissuade her disobedience.@@"<br>
<br>
"@@.npc_manager;True, perhaps it would be best use in a less... sprung-upon manner.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> nods and approaches you to begin removing your restraints.<br>
<br>
Wincing as the nipple clamps are removed you slowly catch your breath, just finishing up getting dressed up<<if $scene.plug != "">> and re-plugged<</if>> when her assistant comes striding back in, her breasts freshly stained with cum.<br>
<br>
"@@.npc_discipline;Good to see SOMEONE managed to please her target.@@" She states, the assistant straightening with pride while they both flash you the side-eye.<br>
<br>
"@@.npc_manager;Indeed, which would support my thesis that this tool is more appropriately used with an explanation rather than fully blind. Still, it is certainly an interesting tool and I look forward to seeing the next version once you have incorporated some of my suggestions.@@"<br>
<br>
"@@.npc_discipline;Of course!@@" She states with a bow, helping her still-bound assistant back into her concealing poncho and skirt before leading the way out of the office.
<</if>>
<br><br>
Walking around her desk to her chair <<=setup.getNpcName('npc_manager', 'formal')>> thanks you for your assistance in the demonstration and dismisses you back to resume your duties.<br>
<br>
[<<moveTo $workEventReturn "Return to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: dominate an hr discipline applicant
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.creative>>
/* discipline_assistant_bondage.jpg */
Adopting a devious smile you walk towards the nervous bound girl. Taking hold of her collar you lean in close.<br>
<br>
Savoring the look of nervous, aroused fear in her eyes you taunt her by asking if she has an excuse for her misbehaviour. Gagged as she is her response is, of course, unintelligible. Teasing her further you explain that if she is going to remain so recalcitrant you will just have to whip it out of her.<br>
<br>
Bending her forward you switch grips, pulling her wrists together behind her back. A bit of rope, a rigid rod and a hook mounted to the ceiling soon combine to have her "properly" bound and exposed - her legs spread as far as her hobbles allow and her arms pulled up high in a strappado so that her head is almost lower than her hips.<br>
<br>
Making a slow circuit around her your hands roam over her exposed flesh, taunting her by groping her steel bra and "panties" as she whines in frustration at the chastity belt and bra efficiently keeping her from feeling anything but psychological torture.<br>
<br>
Finishing up standing behind her you dive into the punishment proper, spanking her hard until her bottom is two red pillows framed by the gleaming steel bands of her chastity belt.<br>
<br>
The combination of the sharp punishment and challenging position has her panting, gasping and moaning through her gag and you take some time to admonish her for the drool that is rapidly pooling below her face... as well as the wetness creeping past her belt and down her thighs.<br>
<br>
Moving back around you give her a "reward" of humping her while simultaneously teasing and tickling her sides and exposed armpits, leading her to rock and thrash against her bonds even as your grinding against her rear does naught but accentuate the lingering pain of her spanking.
<<else>>
Staring with lust at her full ass peeking out from between the steel bands of her chastity belt you soon have her bent over your knee, your first *SMACK* landing square and perfect and loud, the sound of skin on skin echoing through the room as a gasping moan escapes her gag.<br>
<br>
Smiling with dominant glee you swiftly follow up with another trio of blows "balancing" things out to bring a pleasant red hue to both of her cheeks. She moans.<br>
<br>
Grabbing her by the hair you chide her for getting aroused by her punishment. A bit of additional verbal degradation, and a dozen more spanks, and she starts leaking out from under her chastity belt.<br>
<br>
Running a hand between her damp thighs you force her to smell herself before punishing her some more for her debauchery, groping and clawing her red bottom while talking about how she needs to be locked in chastity.
<</if>>
<br><br>
Thoroughly enjoying yourself as you continue to punish your charge <<=setup.getNpcName('npc_discipline', 'formal')>> emerges from her meeting all too soon. She congratulates you on your efforts after inspecting her work, finally ordering her bound girl to bow and curtsey in thanks for your "help" with her training.<br>
<br>
The girl walking a bit gingerly behind <<=setup.getNpcName('npc_discipline', 'formal')>> the pair of them depart, leaving you to resume your normal duties.<br>
<br>
[<<moveTo $workEventReturn "Return to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: be dominated by an hr discipline applicant
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.obedient>>
<<applyExperience 'submission' 10 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'penis' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bdsm' 10 'terrible' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<if setup.getTotalValue("foot") > 0>>
<<applyExperience 'foot' 11 'very' $SEEN_STRANGER>>
<<else>>
<<setThreshold 'foot' 'foot_massages' 'other_help' true>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.obedient>>
You have well learned your role and you naturally slide to your knees before the so-called "assistant" before promising her that you will be a "very good girl." <br>
<br>
"My, my," she replies, reaching down to caress your cheek as you reflexively nuzzle into her hand. "Aren't you the obedient one. Of course anyone can SAY that they are a good girl but proving it..." She grins. "How about you put those lovely lips to better use and show me what kind of well-trained obedient slave you are." <br>
<br>
<<if setup.getTotalValue("oral") > 10>>
You need no further instruction as to what she means, obediently opening your mouth wide that her artificially enhanced cock may enter your throat.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
She may be large but your throat is nigh bottomless. You hilt in one go, maintaining eye contact the whole time as you show her how "good" of a sex slave you are.
<<else>>
You open wide, managing to take her substantial length and girth as your throat bulges. A trickle of drool escapes your lips as you pull back for air before resuming a more reasonable bobbing rhythm.
<</if>>
<br><br>
"My my, you ARE a good girl." She states in approval... "or at least, one of your holes is. Turn around, slut, let's see if your rear entryway is just as adept as this lovely throat."
<<else>>
With the addition of her clear sheath she is too big for you to really handle
<<if setup.getTotalValue("oral") > 5>>
but you do your best, sucking her tip and showering her length with kisses.
<<else>>
and you are a bit at a loss, attempting to suck her tip only to almost immediately gag at the merest hint of her thrusting forward.
<</if>>
<br><br>
"Disappointing. I would have expected a slut of your calibre to have no problem swallowing the full length of my sceptre. How about we test your other hole to see if your sissy bum is any less disappointing."
<</if>>
<br><br>
You cannot imagine she can be feeling much inside the hard shell encasing her cock but she is clearly turned on, almost appearing even larger as you get a final glimpse of the clear-encased member before you turn around and bend over.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
Casually removing the <<=setup.getItemName(setup.getItemFromType("plug"))>> plug from your ass she replaces it with her thick cock, thrusting hard and deep into you.
<<else>>
Taking hold of you by the hips she thrusts deeply into you.
<</if>>
<<else>>
Adopting a bratty grin you cross your arms over your chest as if daring her to make the first move.<br>
<br>
Unperturbed by your defiance she grins, her leer far from comforting as she produces a crop from the holster in one of her boots, running it up your chest before stopping just under your chin.<br>
<br>
"Feeling defiant, are we? No matter, I am more than trained to handle a simple SISSY secretary..." <br>
<br>
In a burst of speed she has you bent over your desk, pressing your face into the hard tabletop with one hand as she exposes your rear with the other and begins raining plows down on your buttocks and thighs.<br>
<br>
You yelp in pain but she merely laughs. "Oh you are a delight to paddle, your bottom is turning just the most adorable shade of red! And those sounds!" You cry out even louder as she continues the punishment, a few perfectly-aimed blows hooking down below to tag your tender testicles as she seems to make an effort to turn your entire rear a nice ruby before she again pauses.<br>
<br>
"So, my slut, are you ready to obey?" She asks.<br>
<br>
Butt afire you nod in between gasps.<br>
<br>
"What's that? I can't hear you, do I need to upgrade to a flogger to really beat this into your silly head?" <br>
<br>
"N-n-no Mistress." You reply nervously.<br>
<br>
"Much better." She states, gently caressing your sore rear. "Keep that attitude and we're going to get along just fine. Now spending all this time tenderizing this lovely ass has me in the mood for a nice hard fucking, would you like that, slut?" <br>
<br>
You hesitate until her massaging hand pulls back for a quick sharp slap that is like a fresh fire lit upon your tender bum.<br>
<br>
"Y-yes Mistress, please use my ass." <br>
<br>
"Straight to begging for anal without any sucky-sucky foreplay? You really are a slut. No matter, I am more than happy to oblige your request." <br>
<br>
Stepping behind she squares up, on hand holding each of your hips as she <<if setup.getItemFromType("plug") != "">>removes your plug and <</if>>presses the blunt tip of her sheathed member against your hole.<br>
<br>
With no further prologue or warning she thrusts into you.
<</if>>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
This is the sort of thing you were "born and bred" to do and you work your hips, taking her all the way to the root with each thrust as you wiggle and clench so as to maximise her pleasure.
<<else>>
You take her like the depraved butt-slut you are, moaning with joy as she slams into your hard and deep.
<</if>>
<br><br>
"That's a good slut; tight, yet welcoming. This is a real grade-A booty." <br>
<br>
The compliment turning you on you reach back to spread your cheeks wider in hopes of further showing off and taking her even deeper. Unfortunately she chooses the same moment to slam her hips into you and you lose your balance, stumbling half a step and then face-planting as her cock springs out of you with a pop.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
She is big, a bit TOO big for one of your experience but she forces her way into your ass regardless.
<<else>>
She is far too large for your novice rear and you cry out in pain.
<</if>>
Both hands on your hips she jack-hammers deeper, forcing your organs out of the way as your stimulated prostate tries to cover for the pain of your stretched hole.<br>
<br>
"Hmmf, and you said you were a good girl. Good girls are tight, but inviting. If I did not know better I would swear your were practically a virgin. How embarrassing." <br>
<br>
Suppressing tears you can do little more than pant as she continues to slam into you, her cock administering a harsh lesson indeed as you take an anal pounding far beyond your skills.<br>
<br>
With a final powerful thrust she knocks you forward and you lose balance, sliding off her member and flopping onto the ground in a heap.
<</if>>
<br><br>
Lording over you she grins down, broadsword in one hand as she nods. You look up just as her boss, and your own, walk into the room, looking between the two of you and giving small nods of approval.<br>
<br>
"@@.npc_discipline;Very good, it seems you have done quite a good job at cowing this lovely SISSY secretary. Not the hardest challenge, it is true, but one that you appear to have excelled at to match what would be expected of one with your training.@@"<br>
<br>
Addressing you with a grin your <<=setup.getNpcName('npc_manager', 'title')>> adds her two creds. "@@.npc_manager;Well, sissy? How do you show appreciation for this time this Domina-to-be has spent with you?@@"<br>
<br>
You tremble reflexively. The assistant may have dominated you, but it is nothing compared to the utter controling ownership <<=setup.getNpcName('npc_manager', 'formal')>> invokes with a word. Hurriedly you crawl across the floor to the assistant's feet, showering her steep heels with kisses as you whisper thanks for her time.<br>
<br>
"@@.npc_manager;Good girl.@@" She states, her words sending sparks of submissive joy through your body as the two visitors express their thanks for the use of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> property before going on their way.<br>
<br>
Once the other two women are departed <<=setup.getNpcName('npc_manager', 'formal')>> squats down next to you with a gentle smile. Gracing you with an appreciative head-pat before rising and returning to her office.<br>
<br>
Taking a moment further to recover you fix your clothes <<if setup.getItemFromType("plug") != "">>stuff the plug back into your ass where it belongs <</if>>and sit back down at your desk.<br>
<br>
[<<moveTo $workEventReturn "Return to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>
/* discipline_assistant_pair_bondage.jpg *//*#
#desc: predicament bondage with an hr discipline assistant
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<useClothSetPush 'hr_discipline'>>
<<removeEverything $player $now>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
An odd contraption made mostly of pipe and padded surfaces is swiftly assembled in the middle of the floor while you strip out of your clothes. You don't have a chance to quite puzzle out how it all works before <<=setup.getNpcName('npc_discipline', 'formal')>> is taking charge, grabbing you and her assistant of the day and quickly binding you into your respective positions.<br>
<br>
<<if $scene.leader>>
You are placed in a kneeling position, stradling a sybian-like device that has a dildo penetrating your ass and a lumpy protrusion pressing against your cage.<br>
<br>
With your arms bound wide in a T configuration she finishes up by bringing a double-dildo gag to your face, tightening the many straps to hold the smaller internal one inside your mouth with its larger sibling protruding in front of you.<br>
<br>
Immobilized save for your head you watch as your compatriot is bound in front of you, her legs pulled back until her ankles are behind her head as she looks directly up at you, her exposed holes raised up towards you as she is securely bound in the strenuous pretzel-like position. Your gag-mounted dildo is guided into her cunt, the girl letting out a slight moan as you slide into her wet and ready hole.<br>
<br>
A pair of headphones are placed over your ears, blocking all sound as your "partner" is given an explanation with you unable to hear, then the headphones are switched and <<=setup.getNpcName('npc_discipline', 'formal')>> for you to get your personalized orders.<br>
<br>
"@@.npc_discipline;Alright my poor, misguided slut, here's how this is going to work - the both of you are going to stay bound up like this until you make your erstwhile leader cum... Of course, to make it interesting, she thinks that if she cums before you do you'll both be locked in chastity and put on restrictions for the next month!@@"<br>
<br>
Headphones removed <<=setup.getNpcName('npc_discipline', 'formal')>> steps away. "@@.npc_discipline;Aaand go!@@"<br>
<br>
Springing into action you start bobbing your head to "fuck" your partner as she begs you to stop.<br>
<br>
"Please, don't! It's too much!" <br>
<br>
<<if $player.flags.dominantsissy>>
Despite your own bound position hearing her cute, submissive voice begging only spurs you forward.<br>
<br>
<</if>>
Her initial request failing you suddenly shudder as a powerful shock slams through your prostate.<br>
<br>
"I said stop," she notes, replacing the painful electrics with dual buzzing vibrations in your rear and against your cage. "If you just relax like a good girl I'll keep it like this, but if you disobey and go back to fucking me without permission..." <br>
<br>
<<printThought $player 'So this is how the game is going to work - I either follow instructions and get punished by my otherwise uninformed "partner" or I have to endure her trying to stop me...'>><br>
<br>
[<<moveTo "event_work_hr_discipline_pair_2_top" "Ignore her objections and resume fucking her as originally instructed." 120 "<<set $scene.fuck=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_pair_2_top" "Resume fucking her as you were ordered and try to survive her response." 120 "<<set $scene.fuck=false>>">>]
<<else>>
Whereas your compatriot is placed in a relatively "normal" position on her knees resting on a double-dildo equipped sybian you find yourself folded like a pretzel, your legs behind your shoulders, bound on a raised portion of the device such that you are folded in half, your ass raised and exposed as you look past it<<if setup.getItemFromType("cage") != "">> and your caged<<else>>and your rapidly-stiffening<</if>> <<getWordMyPenis $player>> to look at your partner's face.<br>
<br>
As you watch a double-dildo panel gag is securely buckled around the face looming over your bum, the long exterior dildo lubricated and pressed into your rear hole. With their arms bound in a T shape stretched out in either direction their only way to "interact" with you will be by bobbing their head and thus fucking your ass with the dildo attached to their face.<br>
<br>
A pair of headphones are placed onto your partners head as a controller of some type is pressed into your hands and you are given your briefing.<br>
<br>
"@@.npc_discipline;Alright my aspiring supervillain. All you have to do is convince your partner in crime NOT to give you an orgasm in the next twenty minutes. The controller in your hands can either reward or punish your friend... you'll just have to figure out which function is which. If you hold out you both go free having demonstrated self control, if you fail... well good luck!@@"<br>
<br>
Headphones removed and placed over your own ears you watch as your partner is given an explanation with you unable to hear.<br>
<br>
Headphones discarded completely <<=setup.getNpcName('npc_discipline', 'formal')>> winks at you. "@@.npc_discipline;Alright, girls, you have your marching orders, get to it!@@"<br>
<br>
Your partner immediately starts bobbing her head back and forth, thrusting the dildo into your ass and rubbing against your prostate. Folded up as you are you can't get away and it feels good... really good.<br>
<br>
[<<moveTo "event_work_hr_discipline_pair_2_bottom" "Ignore instructions and give in to the oncoming orgasm." 120 "<<set $scene.cum=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_pair_2_bottom" "Do whatever you can to slow her down." 120 "<<set $scene.cum=false>>">>]
<</if>>
</div>/*#
#desc: predicament bondage scene with hr discipline applicant, you on the "bottom"
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if setup.getItemFromType("cage") == "" && $scene.cum>>
<<applyExperience 'cum' 8 'slightly' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<if $scene.cum>>
<<set $player.timebased.horny = 10>>
<<else>>
<<set $player.timebased.horny = 90>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
Being bound so at to be looking up at the lovely woman frantically gag-fucking your ass all it takes is a minor surrender of control and you are cumming, hard.<br>
<br>
<<if setup.getItemFromType("cage") == "">>
Folded up as you are you are almost looking down the barrel of your <<getWordMyPenis $player>> and you end up spurting right into your own face, a few drops shooting right between your moaning lips onto your tongue.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
It tastes even better than normal, the humiliation of being forcibly milked adding a sweet tang that has you probing with your tongue to gather every drop you can.
<<else>>
Your juices are as tasty as they are humiliating, the flavour inescapable as a few more drops trickle down your face and past your lips.
<</if>>
<<else>>
Though your <<getWordMyPenis $player>> may be tightly locked away you spurt and leak in sweet analgasm.
<</if>>
<br><br>
Panting and catching your breath you blush as <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_discipline', 'formal')>> shake their heads at your disappointing effort as <<=setup.getNpcName('npc_discipline', 'formal')>> sets about freeing you and your partner.<br>
<br>
"@@.npc_manager;An interesting scenario, but it would seem a few tweaks may be in order to ensure a proper competition.@@"<br>
<br>
"@@.npc_discipline;As you say, well, I had best be off, thank you, again, for the use of your sissy.@@"<br>
<br>
Bundled up in her poncho and skirt the assistant follows behind as <<=setup.getNpcName('npc_discipline', 'formal')>> departs. <<=setup.getNpcName('npc_manager', 'formal')>> motions for you to get dressed and return to your work.
<<else>>
Focusing your attention you clench down with your ass to slow the thrusts against your prostate. You start by ordering your partner to stop, explaining that if you cum you will both be punished. She ignores you, in fact doubling her efforts even as you beg for her to show you mercy.<br>
<br>
Unable to see the remote in your hands you start mashing buttons at random, finally drawing a reaction from your partner as she first moans in pleasure and then jolts at what must have been a painful shock.<br>
<br>
You explain that, if she will only leave you be, you'll leave it on the pleasure setting but she pushes forward, her pace erratic but steadily increasing as she becomes accustomed to the constant electrocution.<br>
<br>
Increasingly desperate you switch tactics, alternating between distracting her with pleasure and then breaking her rhythm with pain, the both of you panting and gasping and crying as she tries to push forward and you desperately try to hold by your oncoming orgasm.<br>
<br>
"@@.npc_discipline;Aaand, time!@@" she states, your remote suddenly stopping working. "@@.npc_discipline;Not bad, that looked like a real close one!@@"<br>
<br>
You groan as you finally cum, a painful, ruined orgasm spurred on by your interrupted concentration.<br>
<br>
Hanging loose in your bonds you merely lay there as your partner is freed and then you, too are helped to your feet.<br>
<br>
Thanking you once again for your assistance <<=setup.getNpcName('npc_discipline', 'formal')>> accepts praise from your <<=setup.getNpcName('npc_manager', 'title')>> for the "@@.npc_manager;impressive display@@" before she and her assistant depart.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> complements your control before telling you to get dressed and return to your work.
<</if>>
<br><br>
[<<moveTo $workEventReturn "Get dressed and return to work." 600 "<<set $player.cutscene.lockinventory = false>><<useClothSetPop 'hr_discipline' $player $now>>">>]
</div>/*#
#desc: predicament bondage scene with hr discipline applicant, you on the "top"
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'anal' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_FRIEND>>
<<if !$scene.fuck>>
<<applyExperience 'submission' 10 'very' $SEEN_FRIEND>>
<<else>>
<<set $npc_manager.affection += 1>>
<</if>>
<<if $scene.cum>>
<<set $player.timebased.horny = 10>>
<<else>>
<<set $player.timebased.horny = 90>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.fuck>>
Figuring that <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> direct instructions probably outweigh whatever your current partner is saying you ignore the painful shock and resume bobbing your head to plunge the gag-mounted dildo in and out of her cunt.<br>
<br>
"STOP!" she orders louder, but this time you are ready for the punishing shock, barely even breaking rhythm, merely tensing your neck as you continue to move back and forth.<br>
<br>
She answers with powerful buzzing deep in your rear and rumbling out through your cage to form a different sort of distraction but you remain focused on your task, even as her requests get increasingly frantic as she alternates attempts to beg, punish or cajole you into stopping the inexorable march towards her orgasm.<br>
<br>
She cums, crying out as you make a final, deep lunge forward, your whole body tightening up as she tenses and "rewards" you with an intertwined mix of shocks and vibrations.<br>
<br>
Moaning load her orgasm draws out for almost thirty seconds, leaving her limp and panting when it is finally over.<br>
<br>
Gasping through your gag you welcome the feel of strong hands as <<=setup.getNpcName('npc_discipline', 'formal')>> releases you from your restraints and helps you to your feet.<br>
<br>
"@@.npc_manager;Well done, the interplay between the two positions is quite fun to watch. Do continue running more tests, I will be interested in seeing how effective it is once the techniques are fully refined.@@"<br>
<br>
The assistant freed the girl wobbles slightly as she rises to her feet, standing glassy-eyed as her concealing poncho and skirt are returned and she departs along with <<=setup.getNpcName('npc_discipline', 'formal')>>.<br>
<br>
Alone with you <<=setup.getNpcName('npc_manager', 'formal')>> smiles, gently brushing your cheek before noding for you to get dressed.<br>
<br>
"@@.npc_manager;You did a good job today, an accounting you should feel proud of as you return to your more... mundane responsibilities.@@"<br>
<br>
Throwing on your clothes you give a curtsey of thanks before shuffling back to your desk.
<<else>>
Wide-eyed in pain from the shock you pull back as far as you can and attempt to remain as still as possible in obedience to the woman bound before you.<br>
<br>
Good to her word she rewards you with vibrations than penetrate deep into your ass as well as shuddering through your chastity prison. Trembling in your bonds your head starts to shake only for her to bring you back to reality with a quick shock.<br>
<br>
"Careful! Your fun stops if you try to get me off!" <br>
<br>
You start to nod only to get shocked again for your foolishness as the movement pushes your face-mounted dildo further into her hole. Leaning back as best you can you try to enjoy the vibrations, losing track of time until you are interrupted by <<=setup.getNpcName('npc_discipline', 'formal')>> calling "@@.npc_discipline;time.@@" before deactivating the vibrators and setting to work releasing you from your bonds.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head in disappointment as you stagger back to your feet and get dressed.<br>
<br>
"@@.npc_manager;An interesting challenge, it would seem my subordinate needs some more practice in... prioritizing her obedience.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_discipline', 'formal'))>> assistant dressed, though looking a bit tired and stiff from her challenging position. With a parting nod of acknowledgement <<=setup.getNpcName('npc_discipline', 'formal')>> and her assistant depart.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> dismisses you with a gesture as she returns to her desk.
<</if>>
<br><br>
[<<moveTo $workEventReturn "Return to work." 600 "<<set $player.cutscene.lockinventory = false>><<useClothSetPop 'hr_discipline' $player $now>>">>]
</div>/*#
#desc: manager of hr retention department visits for a meeting
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.stage = Math.min($npc_manager.stage, $npc_retention.flags.stage)>>
<<switch $scene.stage>>
<<case 0>>
<<set $npc_retention.flags.stage = 1>>
<<case 1>>
<<set $npc_retention.flags.stage = 2>>
<<case 2>>
<<set $npc_retention.flags.stage = 3>>
<<case 3>>
<<set $npc_retention.flags.stage = 4>>
<<case 4>>
<</switch>>
<<if $npc_manager.stage < 4 && $npc_retention.flags.stage > 3>>
<<set $scene.stage = 2>>
<<else>>
<<set $scene.stage = $npc_retention.flags.stage>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_retention.png">>
<div id="invframe" class="scrolltext">
You hear a knock on the door, your <<=ps(setup.getNpcName('npc_manager', 'title'))>> schedule listing a meeting with <<=setup.getNpcName('npc_retention', 'formal')>>, HR Manager in charge of Employee Retention.<br>
<br>
<<switch $scene.stage>>
<<case 1>>
A muscular, though not nearly as large as <<=setup.getNpcName('npc_admin', 'first')>>, <<=setup.getNpcName('npc_retention', 'formal')>> acknowledges you with a stern-faced nod. He wears a slightly too tight shirt, spit-shined boots and fitted trousers that has a uniform-like edge to it, complete with a somewhat ominous stun gun on his hip. Escorting him to the inner office <<=setup.getNpcName('npc_manager', 'formal')>> calls out "@@.npc_manager;one minute.@@"<br>
<br>
Falling naturally into a parade rest position he glances down at you.<br>
<br>
"@@.npc_retention;Work going well? Remember my team is always available to help keep you here if you are considering moving on from the company.@@"<br>
<br>
<<printThought $player "That's a... weird way to phrase that...">><br>
<br>
You do not get a chance to reply before <<=setup.getNpcName('npc_manager', 'formal')>> appears, opening the door in greeting. "@@.npc_manager;Ah, welcome, just had to wrap up a phone call, come in!@@"<br>
<br>
The two of them advance into the inner office and close the door as you return to your desk.<br>
<br>
Some time later <<=setup.getNpcName('npc_retention', 'formal')>> re-emerges. As he passes your desk he gives you a look as if to say "I'm keeping an eye on you..." you shiver slightly and re-focus on your work.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200 "<<set $player.cutscene.lockinventory = false>>">>]
<<case 2>>
Arriving for his meeting <<=setup.getNpcName('npc_retention', 'formal')>> strides into the office with his usual military precision. At his heel is another man who, despite a similarity in look and uniform, strikes an overall completely different demeanour.<br>
<br>
Though both men look in perfect shape, physique accentuated by fitted attire, <<=ps(setup.getNpcName('npc_retention', 'formal'))>> younger assistant comes off as completely deferential to <<=setup.getNpcName('npc_retention', 'formal')>> own rigid authority.
<<if $player.flags.fem_style.chastity != "">>
For some reason you find yourself checking him out, feeling an odd kinship, especially when you notice a slightly familiar bulge in his pants.<br>
<br>
<<printThought $player "Wait... is that a chastity cage?">>
<<else>>
For some reason you find yourself checking him out, trying not to gawk at the noticeable, tho somehow strangely shaped, bulge in his pants.<br>
<br>
<<printThought $player "What is that? Is he wearing an athletic protector or something?">>
<</if>>
<br><br>
Moving at a brisk pace the two men swiftly disappear into the inner office for whatever meeting <<=setup.getNpcName('npc_manager', 'formal')>> had scheduled.<br>
<br>
Thirty minutes later and they re-emerge, heading directly past your desk and out the door without comment save to give you a lovely view of their tight rears, though there is something odd in betwixt the assistant's cheeks...<br>
<br>
<<if setup.getItemFromType("plug") != "">>
<<printThought $player "His assistant is totally wearing a buttplug, just like me!">>
<<elseif setup.checkItemOwned("analplug_beginner") || setup.checkItemOwned("analplug_medium_ems") || setup.checkItemOwned("remote_control_plug") || setup.checkItemOwned("dice_anal_plug")>>
<<printThought $player "Was that... was that a butt plug in his assistant's rear?">>
<<else>>
<<printThought $player "Huh, there's an odd bump in between his assistant's buttcheeks...">>
<</if>>
<br><br>
[<<moveTo $workEventReturn "Continue working." 1800 "<<set $player.cutscene.lockinventory = false>>">>]
<<case 3>>
Carrying a briefcase <<=setup.getNpcName('npc_retention', 'formal')>> nods to you in acknowledgement before heading into the inner office.<br>
<br>
Plugging away at your desk about ten minutes pass when <<=setup.getNpcName('npc_retention', 'formal')>> and <<=setup.getNpcName('npc_manager', 'title')>> emerge from her office.<br>
<br>
Walking directly towards your desk <<=setup.getNpcName('npc_manager', 'title')>> motions for your attention before nodding towards her guest.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_retention', 'formal')>> has some new items he wanted to demonstrate and I thought you could help us see them "in action," as it were.@@"<br>
<br>
You start to rise only for a strong, firm hand on your shoulder to guide you back down onto your chair. "@@.npc_retention;Nope, stay seated..@@"<br>
<br>
Sitting down something is brought in front of your face. You recognise a ball gag in the brief moment before it disappears out of view and is pressed past your lips, buckled tight and around and over your head as well as under your chin. A bit startled you try to lean forward and look around only to discover that you are somehow attached to your chair! Next your right hand is cuffed and attached to your armrest, the feat repeated on the other side before you are spun around exposing your ankles to be cuffed together with a short chain. Straps around your chest and over each thigh finish things off to keep you from shifting in your seat.<br>
<br>
From start to finish it took but a few minutes and, though you are still quite comfortable, you find yourself quite securely silenced and restrained, able to easily reach your keyboard and turn in your chair but little else.<br>
<br>
"@@.npc_retention;As you can see she remains able to type and even move around a bit in her chair to greet guests or the like, but securely prevented from wandering off or wasting her day away chatting on the phone.@@"<br>
<br>
"@@.npc_manager;Very neat, quite perfect for our more technical staff but a bit inconvenient for a secretary who needs to coordinate meetings and such.@@"<br>
<br>
"@@.npc_retention;Ah, well you see that is all handled, the locks are all remote controlled and with the security of the head harness you can...@@" he taps a button and you feel the gag loosen, able to spit the ball out to dangle from the side of your face. "@@.npc_retention;By default it synchronised with her phone, but her controller can work a manual release as well. Her arm restraints have just enough slack to put it back into position and it will re-lock once the strap is pulled across her face.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods "@@.npc_manager;Go ahead, dear.@@"<br>
<br>
It's right on the edge of your cuffed reach but you manage to bring the gag back up and wrap your lips around it before pressing the strap to a snap on the side of the harness. Clicking closed it pulled tight into your mouth leaving you once again silenced.<br>
<br>
"@@.npc_manager;Very nice, I am sure that will be quite useful once it is rolled out to keep certain... problem employees in line.@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> nods and leans over to start removing your restraints.<br>
<br>
<<if setup.getTotalValue("submission") > setup.getTotalValue("submission") && setup.getTotalValue("bondage") > setup.getTotalValue("bondage")>>
<<printThought $player "Mmmm, but this is so much more comfortable than working unrestrained...">><br>
<br>
<</if>>
/%TODOfuture [<<moveTo "event_work_hr_retention_restaints" "Shake your head and try to remain restrained." 60 "<<set $scene.restrained=true>>">>]<br>%/
[<<moveTo "event_work_hr_retention_restaints" "Sit quietly as you are freed." 120 "<<set $scene.restrained=false>>">>]
<<case 4 5>>
<<if $fetish.pet_play>>
<<=setup.getNpcName('npc_retention', 'formal')>> walks into the office holding a leash with his "assistant" crawling behind.<br>
<br>
His hands in paw-like mitts, head encased in a puppy mask and with a tail plug perking up from his rear from the look
<<if $fetish.bestiality_soft>>
of the hard cock dangling between his legs
<<else>>
of the hard cock inside a clear canine sheath hanging between his legs
<</if>>
he is quite happy.<br>
<br>
Leaning over to unclip the leash from his assistant's collar <<=setup.getNpcName('npc_discipline', 'formal')>> nods towards his pet. "@@.npc_discipline;I've got a meeting now, so you be a good boy and stay here with the nice sissy.@@"<br>
<br>
Looking up at you he smiles. "@@.npc_discipline;He should be fine while I'm in there, but feel free to play with him if you want.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> heads into the inner office, leaving you staring down at the cute pup, his eyes peeking out from his mask to smile up at you.<br>
<br>
[<<moveTo "event_work_hr_retention_pup_1" 'Have some fun with the cute human pup.' 120 "<<set $scene.pup=true>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_1" "Focus on your work." 120 "<<set $scene.pup=false>>">>]
<<else>>
<<=setup.getNpcName('npc_retention', 'formal')>> arrives for another meeting with your manager, disappearing into her office for half an hour before leaving once again.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1800 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<default>>
ERROR: unknown stage! <<=$scene.stage>><br>
[<<moveTo $workEventReturn "Continue working." 1200 "<<set $player.cutscene.lockinventory = false>>">>]
<</switch>>
</div>/*#
#desc: option of removing work restraints
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.work.work_restraints_available = true>>
<<if $scene.restrained>>
<<applyExperience 'bondage' 9 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<set $player.work.work_restrained = true>>
<<else>>
<<applyExperience 'bondage' 8 'almost' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.restrained>>
<<=setup.getNpcName('npc_retention', 'formal')>> reaches for your harness gag but you quickly shake your head, shooting a pleading glance towards your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;Hmm, looks like she really likes this new arrangement, go ahead and leave them in place.@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> nods, packing up the rest of his things and departing.<br>
<br>
Once the two of you are alone <<=setup.getNpcName('npc_manager', 'formal')>> walks over and brushes your cheek. "@@.npc_manager;You really are such a wonderful SISSY secretary.@@"<br>
<br>
<<if $npc_manager.affection > 4>>
Leaning in she kisses you on the forehead, her warm lips making you tingle and swoon.<br>
<br>
<</if>>
"@@.npc_manager;Enjoy the rest of your day!@@"
<<else>>
<<if $npc_manager.anger > 4>>
<<=setup.getNpcName('npc_retention', 'formal')>> reaches for your harness gag but is brought up short by your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;No, I think she would benefit from remaining more... focused for the remainder of the day.@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> nods, packing up the rest of his things and departing.
<<else>>
<<=setup.getNpcName('npc_retention', 'formal')>> removes your harness and restraints and starts to put them back into his briefcase before <<=setup.getNpcName('npc_manager', 'formal')>> stops him. "@@.npc_manager;Go ahead and leave those. <<=$player.first_name>> has been good recently but... just in case.@@"<br>
<br>
The man grins down at you and nods, leaving the wrist cuffs hanging from your chair and placing the rest in one of your desk drawers.<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> departs and <<=setup.getNpcName('npc_manager', 'formal')>> returns to her inner office leaving you to resume your work.
<</if>>
<</if>>
<br><br>
[<<moveTo $workEventReturn "Continue working." 1200 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: play with human pup while npc_retention has a meeting
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'bondage' 5 'very' $SEEN_STRANGER>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.pup>>
Leaning over you scratch the cute human pup behind his collar asking "who's a good boy?" <br>
<br>
Nuzzling into you he soon rolls over, spreading his legs to present his
<<if $fetish.bestiality_soft>>
a hard, glistening cock.
<<else>>
a hard sheathed dog cock.
<</if>>
<br><br>
Rubbing his belly you work your way down until he's panting through his gag, humping the air as he wordlessly begs for you to do something more.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
[<<moveTo "event_work_hr_retention_pup_2" 'Remove your plug and bend over for him.' 600 "<<set $scene.pup_sex='anal'>>">>]<br>
<<else>>
[<<moveTo "event_work_hr_retention_pup_2" 'Get down on the floor and bend over for him.' 600 "<<set $scene.pup_sex='anal'>>">>]<br>
<</if>>
[<<moveTo "event_work_hr_retention_pup_2" "Reach down and jerk him off." 600 "<<set $scene.pup_sex='hand'>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_2" "Lean over and suck him off." 600 "<<set $scene.pup_sex='oral'>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_1" "Leave him wanting and get back to work." 600 "<<set $scene.pup=false>>">>]
<<else>>
Turning back to your workstation you get back to work. After a few minutes you feel the pup staring at you. Looking over you see him lustfully looking up before placing his paws on your thighs and nuzzling your crotch.<br>
<br>
Looking down you can see his
<<if $fetish.bestiality_soft>>
hard, glistening cock
<<else>>
hard sheathed dog cock
<</if>>
bobbing excitedly.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
[<<moveTo "event_work_hr_retention_pup_2" 'Remove your plug and bend over for him.' 600 "<<set $scene.pup_sex='anal'>>">>]<br>
<<else>>
[<<moveTo "event_work_hr_retention_pup_2" 'Get down on the floor and bend over for him.' 600 "<<set $scene.pup_sex='anal'>>">>]<br>
<</if>>
[<<moveTo "event_work_hr_retention_pup_2" "Reach down and jerk him off." 600 "<<set $scene.pup_sex='hand'>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_2" "Lean over and suck him off." 600 "<<set $scene.pup_sex='oral'>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_2" "Shake your head and get back to work." 600 "<<set $scene.pup_sex='refuse'>>">>]
<</if>>
</div>/*#
#desc: sex with npc_discipline's human pup pet
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<switch $scene.pup_sex>>
<<case 'anal'>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 9 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'almost' $SEEN_FRIEND>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_FRIEND>>
<</if>>
<<case 'oral'>>
<<applyExperience 'oral' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 8 'little' $SEEN_FRIEND>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_FRIEND>>
<</if>>
<<case 'hand'>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_FRIEND>>
<</if>>
<<case 'refuse'>>
<<if setup.getTotalValue("strength") < 10 && $fetish.get_raped>>
<<applyExperience 'anal' 10 'terrible' $SEEN_FRIEND>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<</switch>>
<<set $npc_retention.flags.stage = 5>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<switch $scene.pup_sex>>
<<case 'anal'>>
Excitedly you crawl out of your chair and get down on all fours, wiggling your butt and removing your clothes to expose your
<<if setup.getItemFromType("plug") == "">>
eager rear hole.
<<else>>
plugged bum. Reaching back you slide the <<=setup.getItemName(setup.getItemFromType("plug"))>> out of your ass with a gasp, clearing the path for the pup to have his way with you.
<</if>>
<br><br>
The puppy boy wastes no time in mounting you. Hopping up to place his paw-mitt covered arms on either side of you his thick cock slides into your waiting hole.<br>
<br>
<<if $fetish.bestiality_soft>>
Large and animalistic thanks to the added girth of his canine sheath he humps you hard, working his way deeper and deeper until your arms give out and you collapse onto the ground as his thick knot finally pops into place.<br>
<br>
Grunting and growling and humping he rocks inside of you for several minutes as you have no choice but to enjoy being his bitch. You sense more than feel his final orgasm as he pants and collapses to lay on top of you.
<<else>>
Long and hard he pounds his cock into you with quick, powerful thrusts. Forced forward your arms collapse until you are sprawled out on the floor, moaning along as he has his way with you.<br>
<br>
He takes his time, his leather mask coming close as if to lick or kiss the side of your face as he humps away until, finally, he cums deep in your rear. Though you feel him soften slightly he remains inside of you, his weight dropping as he rests while still holding you down and occupying your rear.
<</if>>
<br><br>
Pinned under his weight it isn't until a pair of heavy boots appear out of the corner of your eye and pull your doggy friend off that you finally manage to push yourself back up off the ground.<br>
<br>
"@@.npc_retention;Well! It looks like someone had some fun! Though you really need to remember to let your playthings up when you're done.@@"<br>
<br>
Back to your hands and knees you look over as <<=setup.getNpcName('npc_retention', 'formal')>> clips a leash to his pet's collar and scratches behind the pup's ears.<br>
<br>
"@@.npc_retention;He wasn't too hard with you, was he?@@"<br>
<br>
"@@.npc_manager;Oh she is fine. Just taking the opportunity to lounge around a bit!@@" She chides, <<if $npc_manager.satisfaction>$npc_manager.anger>>tho her smile tells you she's joking<</if>> "@@.npc_manager;come on, sissy, get up!, back to work!@@"<br>
<br>
Fixing your clothes <<if setup.getItemFromType("plug") != "">>and shoving the <<=setup.getItemName(setup.getItemFromType("plug"))>> back into your still-gaping rear<</if>> you flop onto your chair and try to focus back on your work, barely noticing as <<=setup.getNpcName('npc_discipline', 'formal')>> and his pet depart and <<=setup.getNpcName('npc_manager', 'formal')>> returns to her inner sanctum.
<<case 'oral'>>
<<if $fetish.bestiality_soft>>
Sliding to the floor you gently remove his canine-shaped penis sheath to wrap your lips around his large, hard cock.
<<else>>
Sliding to the floor you move between his knees and lean over to take his hard cock between your lips.
<</if>>
<br><br>
<<if setup.getTotalValue("oral") > 10>>
Eagerly you slide your mouth over and down his member, humming and licking in delight at his strong flavour.
<<else>>
He's a bit intimidatingly large but you do your best, licking up and down his thick, hard shaft.
<</if>>
He thrashes about in excitement but you hold him still with both hands, sucking and licking as he pants and yips through his gag.<br>
<br>
You take your time, sucking his tip and running up and down his length until you feel his large balls tighten and his hips buck a final time as he sprays a fountains worth of cum up at you.<br>
<br>
At the thick semen splashes over your face you hear laughing, glancing up in surprise to see <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_discipline', 'formal')>> looking on as a final spurt of cum hits you in the cheek.<br>
<br>
"@@.npc_manager;Well well, it seems they did have a fun time whilst we were meeting. Though it seems like they made a bit of a mess.@@"<br>
<br>
<<if setup.getTotalValue("cum") < 10>>
You start to reach for a tissue to wipe off your face only for <<=setup.getNpcName('npc_manager', 'formal')>> to shake her head.<br>
<br>
"@@.npc_manager;Come now, you are not thinking of throwing away the tasty offering your new friend made? Be a good sissy and lick it all up.@@"<br>
<br>
Blushing you use your fingers to wipe yourself off as <<=setup.getNpcName('npc_retention', 'formal')>> calls his pet over and clips a leash to the pup's collar. You have just finished licking up every strong, fragrant morsel of cum by the time <<=setup.getNpcName('npc_retention', 'formal')>> waves goodbye, his pet wiggling its tail in your direction as he crawls behind his master.
<<else>>
Licking all that you can reach with your tongue you use your fingers to deliver the remaining drops of the strong, fragrant cum to your mouth, savoring every drop.<br>
<br>
Crawling back to its master the pet waits obediently until <<=setup.getNpcName('npc_retention', 'formal')>> clips a leash to its collar and leads the way out of the room.<br>
<br>
You are just finishing up the last drop of cum as the cut pup wiggles its tail in your direction and disappears out of sight into the hallway.
<</if>>
<br><br>
"@@.npc_manager;Well I hope you enjoyed your little snack, back to work now!@@"<br>
<br>
Nodding obediently you sit back down in your chair and turn towards your computer.
<<case 'hand'>>
<<if $fetish.bestiality_soft>>
Your hand looks small as you barely wrap your fingers around his canine-sheathed cock. Though its thick walls certainly desensitise him you can see him hard and eager as you begin to stroke. Panting and yapping through his gag he wiggles on the floor and humps your hand as you stroke and jerk him off.<br>
<br>
It takes a few minutes, as well as some tender ball squeezes and wiggles of his tail, but he finally cums, exploding inside his clear sheath, the frothy cum near filling the hollow tip.
<<else>>
A big smile on your face you reach down to grab the cute puppy boy's hard cock and start stroking. Panting and yapping through his gag he wiggles on the floor and humps your hand as you stroke and jerk him off.<br>
<br>
His large, full balls twitching it isn't long before he cums, spurting all over his chest with a gag-muffled, but still loud, howl.
<</if>>
<br><br>
As he wilts in satisfaction you hear clapping, looking up to find <<=setup.getNpcName('npc_retention', 'formal')>> and <<=setup.getNpcName('npc_manager', 'formal')>> in the doorway. Both smiling they politely applaud as they watch the pair of you and the pup.<br>
<br>
"@@.npc_manager;Very sweet, but I think it would be only polite if you cleaned up your cute friend before we send him on his way.@@"<br>
<br>
<<if $fetish.bestiality_soft>>
Thanks to his canine sheath the pup hasn't actually spilled anything, though the cum filling the hollow tip looks frothy and distracting.<br>
<br>
Carefully detaching the sheath you tilt it back, letting the potent mix of dick-sweat and cum drip into your mouth before leaning over to clean up the remainder.
<<else>>
Bending down your tongue traces the thin trails of cum pooping between his hard abs and firm chest. Finishing off you lick the final drops from his leather puppy mask as he bobs his head to mimic licking you in gratitude.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") >= 10>>
His cum is strong, fragrant and oh-so-tasty and you eagerly slurp up every drop.
<<else>>
His cum is strong and fragrant and you have to force yourself to swallow it, but you know better than to do otherwise with both your <<=setup.getNpcName('npc_manager', 'title')>> and the pup's owner looking on.
<</if>>
<br><br>
Clipping a leash back to his pup's collar <<=setup.getNpcName('npc_discipline', 'formal')>> thanks you for keeping his pet entertained before departing. Your <<=setup.getNpcName('npc_manager', 'title')>> flashes you a prideful smile before returning to her inner office and leaving you to resume your work.
<<case 'refuse'>>
You try to turn back to your work but
<<if setup.getTotalValue("strength") > 10 || !$fetish.get_raped>>
he is quite insistent, even attempting to pull you out of your chair. Using a firm hand you push him away, giving him a gentle, but firm, rap on the snout of his mask as you shake your head.<br>
<br>
"No!" you state firmly before explaining that you have work to do and he had best curl up and leave you alone lest you summon his master.<br>
<br>
Obviously disappointed he crawls away, turning in a circle before curling up on the floor for a nap.<br>
<br>
Some time later <<=setup.getNpcName('npc_discipline', 'formal')>> re-emerges. Though looking a bit surprised he nonetheless summons his pet and, leash attached once more, departs with a wave.
<<else>>
he drags you to the floor. Despite his paw-mitts limiting the use of his hands he is MUCH stronger than you, pulling you off the chair and flipping you over to mount you.<br>
<br>
Holding you down with one paw he works at your clothes, exposing your ass and then jumping on top of you to hump you with his hard cock.<br>
<br>
<<if setup.getItemFromType("plug") == "">>
His thick <<if $fetish.bestiality_soft>>dog-cock<<else>>cock<</if>> slides into your as, violating you deeper with each hard thrust. Pinned to the ground by his forepaws you cry out but have no choice but to submit to being his bitch.
<<else>>
Stymied by your plug he holds you down with his fore-paws while he slides his cock up and down between your cheeks. Moaning and growling through his mask he takes his time, really driving home how helpless you are beneath him as he makes you his bitch without ever technically penetrating you.
<</if>>
<br><br>
Too overwhelmed you don't notice the door open until you hear voices.<br>
<br>
"@@.npc_manager;What is your pet doing to my secretary?!@@"<br>
<br>
"@@.npc_discipline;Stop that! Boy! Get over here!@@"<br>
<br>
<<if $fetish.bestiality_soft>>
He gives a final, powerful thrust and howls.<br>
<br>
As he slides off and crawls away you look up to see his sheath filled with his happiness.
<<else>>
With a final thrust he cums <<if setup.getItemFromType("plug") == "">>flooding your ass with his seed<<else>>spraying his excitement all over your back.<</if>>
<</if>>
<br><br>
Chagrined he crawls back to his master as <<=setup.getNpcName('npc_manager', 'formal')>> walks over to look down at you.<br>
<br>
"@@.npc_discipline;I am quite sorry about this, he is usually quite well behaved but...@@"<br>
<br>
"@@.npc_manager;I understand, this one can be quite... irresistible. Go ahead and be off and attend to your pet.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> hurry out of the office as crouches down and fixes your clothes.<br>
<br>
"@@.npc_manager;I suppose I ought to have anticipated something like this... still, what is done is done, no more laying down on the job, you still have work to do!@@"<br>
<br>
Groaning you push yourself up onto your hands, crawling up onto your seat. <<=setup.getNpcName('npc_manager', 'formal')>> as you try to catch your breath, walking back into her office as you attempt to focus back on your work.
<</if>>
<</switch>>
<br><br>
[<<moveTo $workEventReturn "Resume working." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager of hr employee development department visits for a meeting
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.stage = Math.min($npc_manager.stage, $npc_development.flags.stage)>>
<<switch $npc_development.flags.stage>>
<<case 0>>
<<set $npc_development.flags.stage = 1>>
<<case 1>>
<<set $npc_development.flags.stage = 2>>
<<case 2>>
<<set $npc_development.flags.stage = 3>>
<</switch>>
<<if $npc_manager.stage < 4 && $npc_development.flags.stage >= 3>>
<<set $scene.stage = 3>>
<<else>>
<<set $scene.stage = $npc_development.flags.stage>>
<</if>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Sharply on the hour you hear a knock on the door, your <<=ps(setup.getNpcName('npc_manager', 'title'))>> schedule listing a meeting with <<=setup.getNpcName('npc_development', 'formal')>>, HR Manager in charge of Employee Development.<br>
<br>
<<switch $scene.stage>>
<<case 1>>
You open the door to find yourself eye to eye with some of the largest breasts you've ever seen in person. Stepping back to welcome <<=setup.getNpcName('npc_development', 'formal')>> your eyes trace up and down her body, the woman the distillation of every fantasy you ever had about a sexy schoolteacher or hot librarian. The mere fact that she isn't exploding out of her top a constant miracle she combines it with an hourglass figure, sexy hips and all of all perched atop steep, sexy heels. <br>
<br>
"@@.npc_development;Oh! It looks like I'm a few minutes early so... how are you doing? Adjusting to your new position?@@"<br>
<br>
Quickly sitting down to conceal your body's excited reaction to her intense presence you nod, trying not to stare up as she sits on your desk, looming over you with her huge, perfect breasts.<br>
<br>
She asks you a few questions about your work, if there are any responsibilities you find yourself untrained for, you mumble responses as she nods in understanding.<br>
<br>
"@@.npc_development;Lovely, lovely. Well if you ever find yourself struggling to fit in or handle your new position you should keep in mind that my department is always here to help with employee training and development. I'm sure you are quite busy just learning the basics but maybe someday <<=setup.getNpcName('npc_manager', 'first')>> will let me have you for a class or two...@@"<br>
<br>
The way she peers over her glasses and winks at you has your heart fluttering as you wonder what exactly her "class" might entail. You do not get the opportunity to ask, however as she quickly returns to feet and heads into the inner office for her meeting.<br>
<br>
Without her distracting presence you are able to calm down and return to your work, doing your best to stay heads-down when she comes back out, though you are unable to resist taking a peek, to confirm that your memory is accurate as to her anime-esque figure.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200 "<<set $player.cutscene.lockinventory = false>>">>]
<<case 2>>
You open the door to greet the buxom <<=setup.getNpcName('npc_development', 'formal')>>. She smiles at you as she walks past while her cute assistant, dressed in a too-small schoolgirl outfit complete with skirt, stockings top and heels follows after.<br>
<br>
"@@.npc_development;Hello, <<=$player.first_name>>, still haven't managed to make it into a class yet? Well, someday soon, I hope.@@" She nods towards her assistant. "@@.npc_development;This lovely thing is on a bit of a learning field trip - she's practicing taking notes for important meetings.@@"<br>
<br>
You nod at the two of them as the schoolgirl blushes and smiles back at you.<br>
<br>
<<if setup.getTotalValue("feminization") > 15>>
<<printThought $player "Would I have to dress like that for class, too? I hope so!">>
<<else>>
<<printThought $player "Would I have to dress like that for class, too? That would be humiliating!">>
<</if>>
<br><br>
Heading in for their meeting you close the door and return to work, some time later the two of them emerge, the schoolgirl assistant in the process of fixing her skirt as they walk past your desk and out of the office.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 1200 "<<set $player.cutscene.lockinventory = false>>">>]
<<case 3>>
<<=setup.getNpcName('npc_development', 'formal')>> strides into the office, looking as ready to explode out of her top as always, a cutie in a skimpy schoolgirl outfit following obediently at her heels.<br>
<br>
Opening the door to the inner office you motion them in for their meeting, <<if $player.work.school > 0>>your fellow student winking at you on the way past <</if>>and return to your desk.<br>
<br>
Plugging away at your work you come to a form that requires <<=ps(setup.getNpcName('npc_manager', 'formal'))>> signature. Not even thinking about the meeting you've stepped into the inner office before remembering that <<=setup.getNpcName('npc_development', 'formal')>> is still here.<br>
<br>
They pause their discussion to look over as you realise that you can't see <<=ps(setup.getNpcName('npc_development', 'formal'))>> "assistant" anywhere. <<=setup.getNpcName('npc_manager', 'formal')>> waves you in and you walk up to her desk to hand over the form.<br>
<br>
Rising from her seat gives you a glimpse of the missing assistant - the top of her head bobbing up into sight on the far side of the desk, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> hiked up skirt and missing panties making it clear what the assistant was up to betwixt your <<=ps(setup.getNpcName('npc_manager', 'title'))>> legs.<br>
<br>
You can't help but feel a twinge of envy at the sight, which <<=setup.getNpcName('npc_development', 'formal')>> seems to instantly latch onto.<br>
<br>
"@@.npc_development;Aww! Don't be like that, a good secretary needs to be versatile in all manner of oral presentation and it wouldn't be professional for us to sign off on a graduate without <<=setup.getNpcName('npc_manager', 'formal')>> personally verifying a student's bona-fides. Here, why don't you kneel down with me, your lips would be far happier wrapped around my diddle stick than curved into that ugly jealous frown.@@"<br>
<br>
[<<moveTo "event_work_hr_development_oral" "Accept her offer." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_work_hr_development_oral" "Reply that you have too much work to do and politely decline." 120 "<<set $scene.accept=false>>">>]
<<case 4 5>>
<<if $npc_development.flags.stage >= 5>>
Greeting you with a smile <<=setup.getNpcName('npc_development', 'formal')>> continues on into the inner office, finishing her meeting without disturbing you, emerging some time later to continue off on her way.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<=setup.getNpcName('npc_development', 'formal')>> strides into the office with one of her students following behind on a leash. Your jaw almost drops at the sight of the student's outfit.<br>
<br>
High heel Mary Jane's are paired with thigh-high creamy white stockings but it is starting just above there where things take a REAL turn. Her short skirt stops well above her mid thigh it is completely open in front, revealing her exposed cunt, a piercing through her clit at the end of a thin leash held by <<=setup.getNpcName('npc_development', 'formal')>>. Even more lewd is the fact that her front hole is spread and open by a wide, hollow plug, dripping slightly as she remains effectively gaped and ready for any who might wish to use her.<br>
<br>
Above the skimpy skirt her torso is bare save for a short sleeved "top" that is little more than a collar and sleeves, failing to cover her breasts in the slightest as they hang on full display, both pierced nipples hard and perky with her school id hanging from her left piercing. A leather collar is buckled under her shirt collar - a large, pink dildo hanging from the front to hang between her breasts like a bizarre, perverted tie.<br>
<br>
As she walks past you catch a view of her backside, a small, cute backpack high on her back, her skirt just as revealing behind as it is cut to display her ass, a thong buckled between her cheeks ending at the hollow plug gaping her ass.<br>
<br>
They are about to walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office when <<=setup.getNpcName('npc_development', 'formal')>> looks back at you with a grin. "@@.npc_development;Well? Stop staring and come along, I am going to need your help in a few minutes.@@"<br>
<br>
[<<moveTo "event_work_hr_development_uniform_1" "Follow them in as instructed." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_hr_development_uniform_1" "Say you have work to do and remain at your desk." 120 "<<set $scene.obey=false>>">>]
<</if>>
<<default>>
ERROR: unknown stage! <<=$scene.stage>><br>
[<<moveTo $workEventReturn "Continue working." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</switch>>
</div>/*#
#desc: perform oral (or not) on npc_development whilst she meets with your manager
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.accept>>
<<set $npc_development.flags.stage = 4>>
<<applyExperience 'oral' $npc_development.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Obediently sliding to your knees you crawl up in between <<=ps(setup.getNpcName('npc_development', 'formal'))>> spread legs. Under her skirt her large, thick cock strains against its surprisingly sturdy panties, springing up with enough force to slap you in the cheek once the lace undergarments are pulled aside. Her lack of balls results in a smooth look as fascinating as it is enticing.<br>
<br>
<<if $player.flags.special_skills.blowjob_training>>
Mindful of your lessons you blink up at <<=setup.getNpcName('npc_development', 'formal')>> while holding her cock gently with both hands. Waiting until she nods her permission you maintain eye-contact and lean forward, gently kissing her tip before running your tongue over and under her delicious foreskin.<br>
<br>
Her smooth lack of balls means that your entire focus remains on her shaft and you stroke her perineum with one hand as you begin to slowly deepthroat her cock, making sure every moment is sensuous rather than aggressive worshipping her magnificence as you stare longingly up at her face.<br>
<br>
Smiling down a final time she turns back towards your <<=ps(setup.getNpcName('npc_manager', 'formal'))>> as they resume their meeting. Utterly focusing on your "dicktaking" duties you continue to suck and lick and love until you feel her gentle hand on the back of your head indicating it is time for you to finish.<br>
<br>
Shifting gears you quicken your pace, stroking and sucking until she discharges her unique payload, your mouth filling with thin bursts of pseudo-cum.<br>
<br>
Leaning back you look up and open your mouth to show off her special load, waiting until she nods to gulp it down and beam back with a wide smile.<br>
<br>
Rising to your feet you glance over at your compatriot standing up from under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desk and licking her lips.<br>
<br>
"@@.npc_manager;Very good, dear, you may return to work.@@" She states as you give a final curtsey and scurry back to your desk.
<<else>>
<<if setup.getTotalValue("oral") > 15>>
You devour her cock with all of your consummate skill, sucking her deep into your throat while deploying tongue and lips to flutter up and down her length, reacting to her every gasp or moan to push her higher and higher until you are rewarded with a mouthful of her
<<elseif setup.getTotalValue("oral") > 10>>
Though she is large you are more than up to the occasion, sucking and slurping passionately, using tongue and fingers and throat in concert until she rewards you with her
<<elseif setup.getTotalValue("oral") > 5>>
Her cock is long and thick but you do what you can, showering it with kisses and licks, passionately sucking her tip and stroking her shaft until your efforts are rewarded with her
<<else>>
You are more than a little intimidated by her massive cock but you do your best, licking and sucking and stroking and throwing every technique you know or can think of at her until, eventually, she unleashes, flooding your mouth with her
<</if>>
<<if setup.getTotalValue("cum") > 15>>heavenly<<elseif setup.getTotalValue("cum") >= 10>>delicious<<elseif setup.getTotalValue("cum") > 5>>yummy<<else>>surprisingly mild<</if>> cum.<br>
<br>
After she has filled your belly with <<getWordCum $player>> <<=setup.getNpcName('npc_development', 'formal')>> looks down at you analytically.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
"@@.npc_development;Your technique is quite advanced, but your style... it is my belief that a proper blowjob is an art, not to be hurried, but to be enjoyed, savoured...@@"
<<elseif setup.getTotalValue("oral") > 10>>
"@@.npc_development;Hmm, you are obviously quite skilled, but your style... it is my belief that a proper blowjob is an art, not to be hurried, but to be enjoyed, savoured...@@"
<<elseif setup.getTotalValue("oral") > 5>>
"@@.npc_development;Hmm, your skills are barely adequate but really, for one in your position you should be striving for excellence, don't you agree?@@"
<<else>>
"@@.npc_development;Have you ever tasted a cock before? Your technique is clumsy and amateurish, at best, far below what would be considered acceptable for one of your position.@@"
<</if>>
<br><br>
She looks across at your <<=setup.getNpcName('npc_manager', 'title')>>. "@@.npc_development;You really ought to enroll her in my Oral Relations Advanced Lecture, it would do her well to... sharpen her skills.@@"<br>
<br>
"@@.npc_manager;I will take it under advisement, but for now, if you are finished with her mouth, she probably has other work to return to.@@"<br>
<br>
Dismissed you curtsey towards each woman in turn and hurry back to your desk.
<</if>>
<br><br>
[<<moveTo $workEventReturn "Return to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You reach for the signed paper and start to excuse yourself only for <<=setup.getNpcName('npc_manager', 'formal')>> to reach out and press the paper against the desk.<br>
<br>
"@@.npc_manager;What is this? While a committment to your job is admirable one of your primary duties is to support me by entertaining my guests. Now, get down on your knees unless you would rather she bend you over and take her pleasure another way?@@"<br>
<br>
[<<moveTo "event_work_hr_development_oral" "Kneel down as instructed." 360 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_work_hr_development_anal" "Suggest that she might find your rear hole even more enjoyable." 360 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_work_hr_development_anal" "State firmly that you really do need to return to work." 60 "<<set $scene.accept=false>>">>]<br>
<</if>>
</div>/*#
#desc: npc_development fucks your ass whilst she meets with your manager
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if $scene.accept || $fetish.get_raped>>
<<set $npc_development.flags.stage = 4>>
<<applyExperience 'anal' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<if !$scene.accept>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept || $fetish.get_raped>>
<<if !$scene.accept>>
You objections fall on deaf ears as your manager nods with permission and soon <<=setup.getNpcName('npc_development', 'formal')>> has you bent over the desk, your clothes pulled down to expose yourself even as you beg for mercy.<br>
<br>
"@@.npc_manager;Really you are embarrassing me quite enough.@@" your <<=setup.getNpcName('npc_manager', 'title')>> states in annoyance. "@@.npc_manager;Now quiet and do your duty while we attend to work.@@"<br>
<br>
<<if setup.getItemFromType("plug") != "">>
<<=setup.getNpcName('npc_development', 'formal')>> does not wait, swiftly shoving her cock into you.
<<else>>
Your plug is swiftly removed from your rear and then she is pressing her cock into you.
<</if>>
<<else>>
Explaining that you feel that you could better server her with your ass you wait for approval from both <<=setup.getNpcName('npc_development', 'formal')>> and <<=setup.getNpcName('npc_manager', 'formal')>> before bending over the desk and presenting your rear.<br>
<br>
<<if setup.getItemFromType("plug") == "">>
Removing your clothes you wiggle your rear in invitation, an invitation she does not hesitate but to accept as she steps up behind you, her cock already out and hard.
<<else>>
First removing your clothes you let out a little gasp as you slide the <<=setup.getItemName(setup.getItemFromType("plug"))>> out of your rear, placing it carefully to one side before spreading yourself in invitation. <<=setup.getNpcName('npc_development', 'formal')>> does not hesitate, stepping close, her own cock already out and hard.
<</if>>
<</if>>
<br><br>
Grabbing you by the rear with one hand she saws her cock up and down between your cheeks, dribbling lube down over herself and rubbing it in before finally shifting her angle to press her tip against your waiting hole.<br>
<br>
<<if $player.flags.special_skills.anal_training>>
You moan in irresistible appreciation of her pressing against your body arching your back and looking back over your shoulder as you silently beg her to enter you.<br>
<br>
She soon obliges, her thick, hard cock sliding into your eager hole. Focusing on technique you relax until she is deep inside you and then set to work, clenching and milking and grinding so that even without her even moving her cock is getting the pompoir-inspired stimulation of a lifetime.<br>
<br>
"@@.npc_development;Good girl...@@" she coos in breathless appreciation, her approval only motivate you to do even better.<br>
<br>
Leaving you to it she remains deep inside your ass, leaving everything to your skilled hole as she casually resumes her meeting. Focused on your duties as sensuous rear hole you barely pay attention to the conversation passing above you, instead focusing everything on keeping her hard cock entertained.<br>
<br>
Eventually you recognise the indicators that the meeting is wrapping up, and she begins to shift, thrusting back and forth with short strokes as you redouble your efforts to aid her approaching climax. Your heart beating fast you pant and gasp, your pleasure only heightened by her approving sounds from behind, and the fact that if you look up you are presented with the glorious, grinning face of your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
Finally <<=setup.getNpcName('npc_discipline', 'formal')>> cums, pumping her cum hard and deep into you and leaving you to clamp down tight lest a single drop leak out as pulls back and slides out of your rear.<br>
<br>
Immediately you thank her for the offering and she pats your rear in approval.<br>
<br>
"@@.npc_development;Ah, what a natural butt-slut, I told you sending her to my class would pay off, and my did it!@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, sliding back from her desk so that the student long ensconced between her legs can finally rise.<br>
<br>
"@@.npc_manager;The success of the student always reflects back on their teacher, thank you again for dropping by, it is always good to pound these things out beforehand.@@"<br>
<br>
<<if setup.getItemFromType("plug") == "">>
"@@.npc_development;Yes, a good pounding is always in order.@@" She gives your butt a nice squeeze as you set about fixing your clothes.
<<else>>
You have just finished sliding the <<=setup.getItemName(setup.getItemFromType("plug"))>> back in place to seal up your cum-filled rear when <<=setup.getNpcName('npc_discipline', 'formal')>> gives your rear a friendly squeeze. "@@.npc_development;Yes, a good pounding is always in order.@@"<br>
<br>
You suppress a moan and focus on fixing your clothing.
<</if>>
<br><br>
Walking around the desk to rejoin her instructor you can still smell <<=setup.getNpcName('npc_manager', 'formal')>> on the student, the scent of your <<=ps(setup.getNpcName('npc_manager', 'title'))>> sex serving to make you more aroused.<br>
<br>
With a final nod and curtsey, respectively, <<=setup.getNpcName('npc_discipline', 'formal')>> and her assistant depart <<=setup.getNpcName('npc_manager', 'formal')>> smiles at you in approval.<br>
<br>
<<if $scene.accept>>
"@@.npc_manager;Wonderfully handled, offering up your ass like that... now that is the sort of creative thinking that sets a proper secretary apart from a mere servant. Thank you again for your contribution and I wish you a pleasant remainder of the day.@@"
<<else>>
"@@.npc_manager;good to see you got into it after that initial reluctance. Do try to show more enthusiasm in the future, I do not find reticence to be an appealing trait in a SISSY secretary.@@"
<</if>>
<br><br>
With a parting curtsey of your own you hurry back to your desk with a prideful spring in your step.
<<else>>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
You reflexively push back eagerly as her thick cock enters you, moaning with lust as she easily hilts in your versatile hole, grinding back against her as she begins to thrust.
<<else>>
You moan as she easily slides into you, her cock wonderfully spreading you in a way few penises are capable.
<</if>>
<br><br>
She is an expert at anal, her cock scraping ecstatically over your prostate, leaving you gasping and moaning and desperate for more when she swiftly floods your ass with cum. Three hard pumps make sure to spread her seed deep inside you before she slides out with a pop.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
You gasp and pant as she slowly works into you, her massive member spreading you beyond your limits as she is forced to settle with getting a mere half of herself into your ass.
<<else>>
You think you are about to be split in two as she forces her way into your barely used hole. Just her tip is more than you can handle and you gasp and flail until she pulls out with a pop that leaves you feeling gaped, empty and ashamed.
<</if>>
<br><br>
"@@.npc_development;Disappointing, I really would have thought your secretary would be more... adept in such matters.@@"
<</if>>
<br><br>
"@@.npc_development;You should really consider enrolling her in my class. As beautiful as her ass is it really ought to feel just as good within, and I would love nothing more than to drill some proper pompoir skills into her. Mmm, the addition of a bit of flutteriness and muscle control to her already delightful hole... She'd have men, and blessed women, lining up around the block!@@"<br>
<br>
"@@.npc_manager;A tempting offer, I shall take it under advisement. For now, however, I think it would be best if our lovely secretary returned to her desk that the two of us might attend to my work.@@"<br>
<br>
<<if setup.getItemFromType("plug") != "">>
<<=setup.getNpcName('npc_development', 'formal')>> helpfully stuffs the <<=setup.getItemName(setup.getItemFromType("plug"))>> back into your gaping and used hole, giving you a friendly slap on the ass before fixing your clothes and sending you on your way.
<</if>>
<br><br>
Pushing yourself to your feet you drop into a curtsey and then hurry back to your desk.
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> pauses as you again attempt to excuse yourself. Finally she turns towards her guest. "@@.npc_manager;It would quite seem that my assistant does need some additional... training... let me know when your next remedial course is starting and I may well have an enrollee for you.@@"<br>
<br>
You gulp in fear but take advantage of the dismissal to hurry back to your desk.
<</if>>
<br><br>
[<<moveTo $workEventReturn "Return to work." 0 "<<set $player.cutscene.lockinventory = false>>">>]
</div>
/* outfits inspired by school_uniform_2_front.jpg and school_uniform_2_rear.jpg *//*#
#desc: npc_development has you strip to show off new "school uniforms"
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_development.flags.stage = 5>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<useClothSetPush 'hr_development'>>
<<removeEverything $player $now>>
<<addItem "school_top">>
<<wearItem $player $now "school_top" true>>
<<addItem "school_skirt">>
<<wearItem $player $now "school_skirt" true>>
<<addItem "school_heels">>
<<wearItem $player $now "school_heels" true>>
<<addItem "school_plug">>
<<wearItem $player $now "school_plug" true>>
<<addItem "school_stockings">>
<<wearItem $player $now "school_stockings" true>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Unable to avoid staring at the student's cute, exposed rear you follow behind as <<=setup.getNpcName('npc_development', 'formal')>> leads the way into the inner office.<br>
<br>
Motioning for the two of you to stand on either side of her <<=setup.getNpcName('npc_development', 'formal')>> before greeting <<=setup.getNpcName('npc_manager', 'formal')>>. <<=setup.getNpcName('npc_development', 'formal')>> turns to you "@@.npc_development;Strip.@@"<br>
<br>
You glance up at <<=setup.getNpcName('npc_manager', 'formal')>> for permission and she nods, a small, but eager, smile on her face.
<<else>>
<<=setup.getNpcName('npc_development', 'formal')>> frowns before stepping into the inner office. A moment later you receive a message from <<=setup.getNpcName('npc_manager', 'formal')>>. "@@.npc_manager;Please join us in the inner office, and next time? Do try to remember your duties of hospitality to my guests...@@" Quickly you head into the inner office where you find the three women waiting patiently as you are ordered to strip.<br>
<</if>>
<br><br>
As you remove your clothing <<=setup.getNpcName('npc_development', 'formal')>> explains the situation. "@@.npc_development;So, on my right you can see the female version of the new uniform that I have designed for our advanced students, I brought your lovely secretary in to aid in demonstrating what the modified sissy version looks like.@@"<br>
<br>
Shimmying out of your clothes with practiced efficiency <<=setup.getNpcName('npc_development', 'formal')>> has you strip down until only your cage <<if setup.getItemFromType("choker") != "">>and collar remain<<else>>remains<</if>> in place <<if setup.getItemFromType("plug")>>, even ordering you to extract your plug<</if>>.<br>
<br>
By the time you have stripped your fellow "student" has removed her backpack and begins handing you skimpy items from within. Heels, stockings and top and skirt are the same, complete with a hollow plug to leave you gaping behind, your caged <<getWordMyPenis $player>> on full display.<br>
<br>
<<if $player.body.breastsize[0] > 0>>
Turning to your breasts <<=setup.getNpcName('npc_development', 'formal')>> gives you a friendly grope before attaching an ID to your left nipple<<if $player.piercings.nipples>>ring<<else>>by way of a painful clamp<</if>>.
<<else>>
Though you lack breasts <<=setup.getNpcName('npc_development', 'formal')>> still tweaks your nipples until hard, attaching an ID to your left nipple<<if $player.piercings.nipples>>ring<<else>>by way of a painful clamp<</if>>.
<</if>>
<br><br>
You feel even more exposed than you did whence you were naked, shifting from one foot to the other nervously as she <<if setup.getItemFromType("choker") != "">>arranges your slave collar underneath that of your top<<else>>buckles a pink leather collar around your throat beneath the collar of your top<</if>> and hanging a pink dildo from the front.<br>
<br>
Finally she attaches a heavy metal weight around your testicles, pulling them down and away from your caged sissy clitty, finishing off by removing the leash from the other girl's clit ring and showing how it can just as well attach to your stretched balls.<br>
<br>
[<<moveTo "event_work_hr_development_uniform_2" "Continue." 0>>]
</div>/*#
#desc: you pose in new school uniforms for manager + npc_development
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
"@@.npc_development;Ta-da! So, what do you think?@@"<br>
<br>
Giving a motion of her hand <<=setup.getNpcName('npc_development', 'formal')>> has you and the other girl turn in small circles to show off from all sides as <<=setup.getNpcName('npc_manager', 'formal')>> looks on intently.<br>
<br>
"@@.npc_development;As you can see this new style checks all the boxes - it is cute, easy to move in, and it has the student available for swift administration of rewards or punishments alike.@@" Punctuating this explanation she plucks the dildo from the other student's collar and slides it into her exposed cunt. The girl gasps only for it to turn into a yelp of pain as <<=setup.getNpcName('npc_development', 'formal')>> lands a loud slap on the girl's exposed rear.<br>
<br>
"@@.npc_manager;Lovely, yes, I think that is nearly perfect only... what about students who are more chronically misbehaving? You cannot be constantly interrupting class to spank them.@@"<br>
<br>
"@@.npc_development;Quite so, and something that we have taken into account.@@" Reaching into the backpack she retrieves a pair of cuffs, locking them around your compatriots wrists and then attaching them by short chains to her nipples before finishing off by stuffing a gag into the girl's mouth.<br>
<br>
"@@.npc_development;Just enough range of motion to write in her notebook if she leans over carefully, while keeping her properly silenced, alert and out of trouble.@@"
<<else>>
"@@.npc_development;Now, given that your secretary was a bit... hesitant to obey I thought I might take this moment to demonstrate the addition restraints that can be swiftly applied to recalcitrant students.@@"<br>
<br>
In moments you have a pair of cuffs locked around your wrists, short chains linking them to <<if $player.piercings.nipples>>your nipple rings<<else>>the front of your collar<</if>>. A ball gag finishes things off, leaving you mute with a very reduced range of motion.<br>
<br>
"@@.npc_development;There we go - just enough range of motion to take notes if she leans over carefully, but no more talking out of turn and the student will be very... aware of the consequences of her misbehaviour.@@"<br>
<br>
Giving a motion of her hand <<=setup.getNpcName('npc_development', 'formal')>> has you and the other girl turn in small circles to show yourselves off from all sides as <<=setup.getNpcName('npc_manager', 'formal')>> looks on intently.<br>
<br>
"@@.npc_development;As you can see this new style checks all the boxes - it is cute, easy to move in, and it has the student available for swift administration of rewards or punishments.@@" Punctuating this explanation she plucks the dildo from your collar shoves it into your exposed ass, pushing it deep until it seems to seat in place leaving you wide-eyed and taking quick, short gasps through your gag. You have little chance to adjust to this new, fuller situation when she gives your bare bottom a sharp slap that echoes through the room.
<</if>>
<br><br>
"@@.npc_manager;Wonderful, well I think I have seen enough, go ahead and roll them out at the soonest convenience, I would not wish for your students to be denied for a moment longer.@@"<br>
<br>
All three of you - <<=setup.getNpcName('npc_development', 'formal')>>, the other "student" and yourself curtsey in gratitude.<br>
<br>
Turning back towards you <<=setup.getNpcName('npc_development', 'formal')>> smiles sheepishly. "@@.npc_development;Sorry, my dear, but I only have the one prototype. Though I hope to see you like this again in class someday.@@"<br>
<br>
Changing back into your "normal" clothes you give another curtsey as <<=setup.getNpcName('npc_development', 'formal')>> packs things back up into the small backpack and you escort them out, waiting until they have left the office to return to your desk.<br>
<br>
[<<moveTo $workEventReturn "Return to work." 0 "<<set $player.cutscene.lockinventory = false>><<removeItem $player $now 'school_top' true>><<deleteItem $player $now 'school_top'>><<removeItem $player $now 'school_skirt' true>><<deleteItem $player $now 'school_skirt'>><<removeItem $player $now 'school_heels' true>><<deleteItem $player $now 'school_heels'>><<removeItem $player $now 'school_plug' true>><<deleteItem $player $now 'school_plug'>><<removeItem $player $now 'school_stockings' true>><<deleteItem $player $now 'school_stockings'>><<useClothSetPop 'hr_development' $player $now>>">>]
</div>/*#
#desc: company movers foreshadowing in morning elevator
#status: WRITTEN 0.7.0.0
#*/
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png">>
<div id="invframe" class="scrolltext">
Stepping into the elevator you are surprised to find another occupant already inside - what looks like a professional mover standing next to a box even taller than he is.<br>
<br>
The mover nods to you in acknowledgement as you find a safe place to stand next to the large crate you wait for your floor.<br>
<br>
Partway up you swear you hear a feminine moan coming from inside the box. Glancing over you are a bit surprised to notice what looks like air holes punched into the upper part of the box amidst the "THIS END UP" signage, though they are far too high up for you to peer inside. The mover doesn't seem to have noticed anything, not so much as glancing in your direction and you listen closer, this time certain you hear another moan. A very... sexual moan... You almost jump as the elevator ding's for your floor.<br>
<br>
When you don't hop off immediately the mover glances at you with a raised eyebrow, as it to remind you that he has a shipment to deliver. Blushing in embarrassment you hop off the elevator as the mover and his strange package continue on up.<br>
<br>
[<<moveTo "room_office_sissy_secretary" 'Head for <<=ps(setup.getNpcName("npc_manager", "formal"))>> office.' 30>>]
</div>/*#
#desc: random events in work bathroom
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.outfitTag = setup.analyzeWornTags(['female','male','unisex'])>>
<<if $scene.outfitTag == "female">>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Men's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.outfitTag>>
<<case 'unisex'>>
You're washing your hands when another man walks in and suddenly stops.<br>
<br>
"Shouldn't you be in the other-" <br>
<br>
You look up at him and he quickly blushes "sorry, didn't mean to offend but your hips... well... you looked like a woman from behind..." <br>
<br>
He quickly looks away and awkwardly continues past to the closest urinal.<br>
<br>
<<printThought $player "I thought this outfit was supposed to be unisex, does it really make me look like a girl?">>
<<case 'female'>>
You're washing your hands when a man walks in and suddenly stops.<br>
<br>
"Shouldn't you be in the other-" <br>
<br>
You look up and he leers at you.<br>
<br>
"Yup, you DEFINITELY belong in the womens' bathroom. Best be more careful in the future, you never know what might befall a cutie like yourself in a den of testosterone like this." <br>
<br>
He laughs as he walks past towards one of the urinals.<br>
<br>
<<printThought $player "Maybe I should be using the other restrooms...">>
<<case 'male'>>
You're washing your hands alone in the bathroom when another man walks in and heads for the urinal without giving you a second glance.
<<default>>
ERROR: unexpected outfit tag: <<=$scene.outfitTag>>
<</switch>>
<br><br>
<<if setup.getTotalValue("piss") >= 10>>
<<if setup.getItemFromType('plug') != "" && setup.getItemObjFromType('plug').tags.includes('hollow')>>
You think about the hollow plug currently gaping your ass.<br>
<br>
[<<moveTo "event_random_work_bathroom_male_piss_butt" "Ask him to pee in your butt." 60>>]<br>
<<else>>
[@@.link_locked;You consider having him piss in your butt, but you aren't really wearing the proper type of plug for it.@@]<br>
<</if>>
[<<moveTo "event_random_work_bathroom_male_piss" 'Offer to "help him out."' 60>>]<br>
<</if>>
<<if setup.getTotalValue("oral") >= 5>>
<<if $player.blowvirgin>>
[@@.link_locked;You couldn't possible suck a cock in the work bathroom!@@]<br>
<<else>>
[<<moveTo "event_random_work_bathroom_male_oral" 'Flutter your eyelashes and ask if seeing you maybe has him feeling a bit... hard...' 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;No way are you going to suck some random cock in the work bathroom!@@]<br>
<</if>>
<<if setup.getTotalValue("anal") > 5>>
<<if $player.analvirgin>>
[@@.link_locked;You couldn't possible give up your anal virginity to a random dude in the work bathroom!@@]<br>
<<else>>
[<<moveTo "event_random_work_bathroom_male_anal" 'Wiggle your ass and ask if he might "help you out."' 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;No way are you enough into anal to fuck some rando in the work bathroom!@@]<br>
<</if>>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: drink piss in male bathroom
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'piss' 12 'normal' $SEEN_STRANGER>>
<<if setup.getTotalValue("piss") == 0 && !setup.hasThreshold('piss', 'general_piss', 'work_piss')>>
<<setThreshold 'piss' 'general_piss' 'work_piss' true>>
<</if>>
<<set $player.work.bathroom_events.male.piss += 1>>
<<set $player.money.total += 25>>
<</if>>
<<set $player.location to "Men's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Hand on his zipper the man stops and looks in your direction as you make your offer.<br>
<br>
"Wow, I thought only executives got this type of service! Hell yea you can help me out!" <br>
<br>
He steps into the handicap stall and you follow behind, dropping to your knees as he whips out his cock. "Now don't make a mess, we both have to get back to work still!" <br>
<br>
You nod as you wrap your lips tightly around his flaccid cock. He lets out a sigh and the nectar begins to flow.<br>
<br>
It isn't the best you've ever taken, tinged with a bitterness from too much coffee, but you gulp it down nonetheless, licking him clean of every drop before leaning back with a smile.<br>
<br>
"Damn, but that just made my day! Here, call it a tip." He states, passing you some credits.<br>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: work male bathroom, piss in your butt
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'piss' 10 'normal' $SEEN_STRANGER>>
<<if setup.getTotalValue("piss") == 0 && !setup.hasThreshold('piss', 'general_piss', 'work_piss_butt')>>
<<setThreshold 'piss' 'general_piss' 'work_piss_butt' true>>
<</if>>
<<set $player.work.bathroom_events.male.piss_butt += 1>>
<<set $player.money.total += 20>>
<</if>>
<<set $player.location to "Men's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You make your offer as the man starts to unzip his fly and he pauses. Glancing over as if to check if you're serious he finally smiles. "Yea, that sounds just great!" <br>
<br>
You follow him into the handicap stall before he closes it behind you like a gentleman.<br>
<br>
Bending over you stick your ass in the air and <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flip up your skirt<<else>>pull down your pants<</if>> to expose your plugged, gaping ass.<br>
<br>
"Well, well, talk about prepared!" He states with a smile, removing the inner plug before sliding his flaccid cock into the exposed hole.<br>
<br>
"Aaaahhhh" he groans as you feel the trickle of <<getWordPiss $player>> flowing into your bowels.<br>
<br>
<<printThought $player "Wow, I really am a human urinal...">><br>
<br>
Perched in your awkward, head-down position you wait as you feel his hot <<getWordPiss $player>> flow into you, waiting quietly until the flow trails off and he gives a few shakes that turn into humping thrusts that almost knock you onto your face. Jamming the "cork" back into your plug he gives your ass a congratulatory slap that has your insides sloshing around.<br>
<br>
"Damn, but that was fine, you really made my day, honey, here, for your troubles." <br>
<br>
You give a curtsey in thanks for the credits he hands you, fixing your clothes as he departs.<br>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: work male bathroom, anal sex
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' 8 'little' $SEEN_FRIEND>>
<<set $player.timebased.horny += 20>>
<<set $player.work.bathroom_events.male.anal += 1>>
<</if>>
<<set $player.location to "Men's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
From the moment the man's eyes drift to your ass you know you have him. Pants bulging, all thoughts of his original reason for visiting the restroom are gone as he grins and leads the way into the large handicap stall, even holding the door like a gentleman.<br>
<br>
He may be a gentleman but you are a randy slut, immediately bending over and bracing your hands on the toilet as you <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flip up your skirt<<else>>pull down your pants<</if>>.<br>
<br>
<<if setup.getItemFromType('plug') == "">>
"Come on, shove it in, I'm sooo horny" you moan.
<<else>>
Sliding the <<=setup.getItemName(setup.getItemFromType('plug'))>> out of your ass you let out a little moan. "Hurry up, I hate feeling empty..."
<</if>>
<br><br>
He doesn't leave you waiting, almost knocking you forward as he slams his cock into your ass. You gasp and push back, forcing him all the way deep until his balls are slapping against you.<br>
<br>
"Damn, slut! You fucking love this! I don't know what it says on your payslip but you are a total anal whore aren't you? Say it, say it you slut!" <br>
<br>
He punctuates his command with long hard thrusts and there is no way you can resist, moaning and gasping as you cry out "I'm an anal whore!" <br>
<br>
He cums with a shout, almost crushing you as he collapses onto your back.<br>
<br>
"Now that is what I call grade A ass, good job, slut!" <br>
<br>
<<if setup.getItemFromType('plug') == "">>
"Come on, shove it back in, I need it" you moan.
<<else>>
Locating you <<=setup.getItemName(setup.getItemFromType('plug'))>> he roughly shoves it back into your hole. "There, so you don't lose any of my present." Laughing at his joke he stuffs a few credits into your clothes before walking away.
<</if>>
<br><br>
Waiting until he has left you stagger back to your feet and fix your clothes.<br>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: work male bathroom, suck cock
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 8 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<set $player.money.total += 25>>
<<setThreshold 'oral' 'anonymous_oral' 'work' true>>
<<set $player.work.bathroom_events.male.blowjob += 1>>
<</if>>
<<set $player.location to "Men's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
The man grins at your offer and you flick your eyes in the direction of one of the stalls and make the fist, tongue and cheek combo universal blowjob gesture.<br>
<br>
Running like a schoolboy he's through the door and has his pants down to his ankles before you can even drop to your knees.<br>
<br>
His cock relatively unremarkable the fact that you're about to suck someone off in the work bathroom "makes up for it" and you grab it with both hands and open your lips wide.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
You've barely started to deploy your considerable skill when he gasps and explodes.
<<else>>
You start in on your basic, but practiced, routine but you've barely gotten beyond a bit of lick and suck when he cums with a moan.
<</if>>
Your eyes flash with disappointment as you look up at him but he doesn't even notice, merely groaning as you suck every drop of man-filling out of his member.<br>
<br>
<<printThought $player "Huh, guess he's a bit of a hair trigger.">><br>
<br>
"Hot damn, you're an angel!" He congratulates. "I, uh... better get back to work" he quickly adds, as if suddenly realizing where he is and the fact that he forgot to even close the door to the stall behind you. He drops a few credits into your hands before zipping up and hurrying away.<br>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>
/* TODO: colour the two men's text differently for easier reading *//*#
#desc: work male bathroom, overhear people talking
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.stage = setup.calcProgressiveScene($player.work.bathroom_comments.female, $player, $npc_manager)>>
<<if $scene.stage != 'generic'>>
<<set $player.work.bathroom_comments.male[$scene.stage] = true>>
<</if>>
<</if>>
<<set $player.location to "Men's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You're sitting in a private stall doing your business when you overhear a pair of men chatting.<br>
<br>
<<switch $scene.stage>>
<<case 'start'>>
"So, you see <<=ps(setup.getNpcName('npc_manager', 'other'))>> got a new secretary?" <br>
<br>
<<printThought $player "Wait, they're talking about me!">><br>
<br>
"Yea, I'm really going to miss seeing <<=setup.getNpcName('npc_secretary', 'first')>> around, wonder how long this new guy will last?" <br>
<br>
"Never know, though I gotta say, he has some nice hips!" <br>
<br>
"He?" They both laugh as it was some hilarious inside joke, their voices fading as they leave the restroom and you finish up.
<<case 'unisex'>>
"You catch the new outfit <<=ps(setup.getNpcName('npc_manager', 'other'))>> girl is wearing?" <br>
<br>
"Girl? I mean, sure, from behind but he needs more than just some tight clothes." <br>
<br>
"True, true, well give it time, I suppose." <br>
<br>
Their voices fade as they leave the bathroom and you are left alone.<br>
<br>
<<printThought $player "Give it time? What's the deal with this job?">>
<<case 'female'>>
"How about that new girl, eh? Lookin' pretty good!" <br>
<br>
"I suppose, I mean you're an ass man so I understand but me... if I can't wrap my hands around a nice set of tits..." <br>
<br>
"Two hands full, amirite?" <br>
<br>
Their laughter fades as they walk out of the restroom.<br>
<br>
<<printThought $player "Wait... were they talking about me?">>
<<case 'pink'>>
"Did you see? <<=setup.getNpcName('npc_manager', 'other')>> looks to have finally set some proper uniform requirements." <br>
<br>
"Really? I'll have to keep an eye out. It's about time though, it just seems wrong for her secretary not to be all cute and pink." <br>
<br>
"Yup, yup, wish I had that level of authority over my admin, you believe she only wears two inch heels?" <br>
<br>
"Women these days, barely even trying." <br>
<br>
Their voices fade as you finish up your business.
<<case 'breastssmall' 'breastsmed' 'breastslarge' 'breastsmassive'>>
"Hey, you see the slut finally got some work done?" <br>
<br>
<<switch setup.calcBreastSize($player)>>
<<case 'massive'>>
"Did she! Whew, she looked about ready to fall over when I saw her walking down the hall! Fucking beautiful."
<<case 'large'>>
"Yup, and a nice large pair, too, perfect size to slide you cock between!" <br>
<br>
"You cad! You know she's claimed property." <br>
<br>
"Hey, can't blame a guy from fantasizing, right?"
<<case 'medium'>>
"Yea, not bad, could be a little bigger though." <br>
<br>
"Of course you'd say that - if it was up to you no girl would have tits smaller than her head!" <br>
<br>
"Come on! Saying something like that in the middle of the day! Fuck, I'm going to be sitting funny for an hour if I can't find someone for relief, you know if Sharron's free?" <br>
<br>
"I think she was booked for some meeting over in conference room 3 all day..." <br>
<br>
"Damn, lucky slut..." <br>
<br>
<<printThought $player "What are they talking about?">>
<<case 'small'>>
"I mean, sure, technically, hardly even counts, I mean I bet they wouldn't even fill her cute hands, much less mine!" <br>
<br>
"True, true, but still, baby steps, those procedures take time to get everything to look natural." <br>
<br>
"Natural, smatcheral, just bolt a pair of soccer balls to the slut's chest, that'll do her!" <br>
<br>
"Hah, you reprobate!"
<</switch>>
<br><br>
Their voices fade as you are left to contemplate their words.
<<case 'generic'>>
<<switch random(4)>>
<<case 1>>
"So, what's the story with the contract, you think we'll close it this quarter?" <br>
<br>
"Lord I hope so, the point of contact has been fucking my assistant enough!" <br>
<br>
"I hear that..."
<<case 2>>
"You catch the game last night?" <br>
<br>
"Yea, fucking refs!" <br>
<br>
"Seriously! I swear, sometimes I wish they'd do a more serious solution. Sometimes I wonder what would happen if they went all out and had valkyries enforce the rules on the field!" <br>
<br>
"Well THAT would certainly give a new meaning to play review!" <br>
<br>
They laugh.
<<case 3>>
"You coming to the poker game this week?" <br>
<br>
"Sure, if you promise not to clean me out again!" <br>
<br>
"Hey, not my fault you're so easily distracted! Focus on the action on the table, not under it!" <br>
<br>
"Hah, easy for you to say! How much longer are you locked up, again?" <br>
<br>
"Don't remind me..."
<<default>>
Whatever they're saying is too full of corporate jargon for you to understand, or care.
<</switch>>
<br><br>
Their voices fade as you finish up your business.
<<default>>
<</switch>>
<br><br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: random events in work female bathroom
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.penis = (random(22) <= setup.getTotalValue("penis"))>>
<<set $scene.manager_interrupt = (random(10) <= $npc_manager.stage)>>
<</if>>
<<set $player.location to "Woman's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Having finished doing your business you fix your clothes and exit the stall just as a businesswoman walks in. Prim and proper in a double breasted suit and a knee-length pencil skirt she has the look of a lawyer. <<if $scene.penis>>Your gaze drifts lower... is that a bulge between her legs?<</if>><br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>
Seeing you she stops in her tracks, the fact that there is a male in the women's bathroom seeming to have caught her off-guard.<br>
<br>
"Are you lost?" She asks before continuing past on her way towards an empty stall.
<<else>>
Giving you a mere nod she move past you towards an empty stall.
<</if>>
<br><br>
<<if setup.getTotalValue("piss") >= 10>>
<<if setup.getItemFromType('plug') != "" && setup.getItemObjFromType('plug').tags.includes('hollow')>>
You think about the hollow plug currently gaping your ass.<br>
<br>
[<<moveTo "event_random_work_bathroom_female_piss_butt" "Ask her to pee in your butt." 60>>]<br>
<<else>>
[@@.link_locked;You consider asking her to piss in your butt, but you aren't really wearing the proper type of plug for it.@@]<br>
<</if>>
[<<moveTo "event_random_work_bathroom_female_piss" 'Offer to "help her out."' 60>>]<br>
<</if>>
<<if setup.getTotalValue("oral") >= 5>>
<<if $player.cunnilingusvirgin == "">>
<<if $player.blowvirgininty != "">>
[@@.link_locked;Despite having sucked cock you can't bring yourself to have your first experience of cunnilingus be offering oral sex to a random woman in the work bathroom.@@]<br>
<<else>>
[@@.link_locked;You couldn't possible offer oral sex to a random woman in the work bathroom!@@]<br>
<</if>>
<<else>>
[<<moveTo "event_random_work_bathroom_female_oral" 'Flutter your eyelashes and ask if you could lend her your tongue...' 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;No way are you going to ask to eat out some random woman in the work bathroom!@@]<br>
<</if>>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: work female bathroom drink pee
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'piss' 11 'normal' $SEEN_STRANGER>>
<<if setup.getTotalValue("piss") == 0 && !setup.hasThreshold('piss', 'general_piss', 'work_piss')>>
<<setThreshold 'piss' 'general_piss' 'work_piss' true>>
<</if>>
<<set $scene.successChance = 1 + setup.checkVisibleClothingTag('slutty')/10>>
<<if setup.getCurrentMakeup($player) != "" && $player.makeup.messed > 50>>
<<set $scene.successChance += 1>>
<</if>>
<<set $scene.success = (random(10) < $scene.successChance)>>
<<set $player.work.bathroom_events.female.piss += 1>>
<</if>>
<<set $player.location to "Woman's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You hurriedly ask if you could have the privilege of drinking the woman's pee.<br>
<br>
She pauses with one hand on the stall door, slowly looking you up and down with a neutral expression.<br>
<br>
<<printThought $player "Wow, I feel like a piece of meat being graded for use...">><br>
<br>
<<if $scene.success>>
"Hmm, yes, that sounds... agreeable." She states.<br>
<br>
<<if $scene.penis>>
You quickly file after her into the spacious stall as she hikes up her skirt to reveal... a penis.<br>
<br>
<<if setup.getTotalValue("penis") > 10>><<printThought $player "Yum!">><<else>><<printThought $player "Another one? how common are these?">><</if>><br>
<br>
On your knees you obediently open your mouth for her soft girl-cock, gently sealing your lips around the oh-so-tasty member.
<<else>>
Filing after her into the spacious stall she pulls her skirt down to her knees to reveal a smooth puss.<br>
<br>
"Come on, kiss it." She commands and you lean in, wrapping your lips tight so as not to let any dribble down your chin.
<</if>>
She lets out a sigh and unleashes her flow.<br>
<br>
You gulp as swiftly as you can, her <<getWordPiss $player>> tasty, though you have little chance to enjoy it as you must drink quickly to keep up. <br>
<br>
"Ahhh," she says with relief as she finishes. You give her a few licks to clean everything up but she places a hand on your head to push you away. "Sorry, cutie, but I don't have time for that right now, thanks for the help!" <br>
<br>
<<if (getUTCHours($now)>12 || getUTCMinutes($now) > 30) && $npc_manager.stage > 1>>
Rising to her feet she opens the stall door only to come face to face with <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;And just what, EXACTLY, where you doing with my secretary?@@"<br>
<br>
The woman's prior playful confidence goes right out the window under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> withering gaze. "I, um, she offered, I mean, I was just, uh, I'msosorrypleasedon'tfireme." <br>
<br>
Your <<=setup.getNpcName('npc_manager', 'title')>> lets the woman squirm under her withering gaze for a few more moments before nodding. "@@.npc_manager;Next time think before you make use of someone else's property - or you might become property yourself.@@"<br>
<br>
"Yes, of course, I really didn't, I, just-" <br>
<br>
"@@.npc_manager_dom;Out.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states, cutting the woman off as she points towards the door and redirects her full attention towards you. Bowing as she quickly backs away the woman rushes out of the bathroom.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, <<=$player.first_name>>, <<=$player.first_name>>... my sweet, sissy... Here it is, after your lunch break is over and you are nowhere to be seen! And then I come in here and... well...@@" She shakes her head. "@@.npc_manager;If you were thirsty you really should have mentioned it, but, since we are here, how about you give me some relief.@@"<br>
<br>
Without even looking she reaches back to close the stall door.<br>
<br>
[<<moveTo "event_random_work_bathroom_female_piss_manager" "Have another drink." 60>>]
<<else>>
Fixing her clothes she walks around you and heads off.
<</if>>
<<else>>
"No, I think not. Run along, now, <<if setup.analyzeWornTags(['female','male','unisex'])== 'male'>>boy<<else>>girl<</if>>." <br>
<br>
<<printThought $player "Hmm, I wonder what she was looking for? Maybe if I looked more slutty and trashy?">><br>
<br>
She steps into the stall, latching the door behind her.
<</if>>
<br><br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: manager has you drink her piss after catching you in the bathroom after the end of your lunchbreak
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'piss' 8 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("piss") == 0 && !setup.hasThreshold('piss', 'general_piss', 'work_piss_manager')>>
<<setThreshold 'piss' 'general_piss' 'work_piss_manager' true>>
<</if>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<set $player.work.bathroom_events.female.piss_manager = true>>
<</if>>
<<set $player.location to "Woman's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You haven't even risen from your knees since <<=setup.getNpcName('npc_manager', 'formal')>> barged in and now you find yourself quickly shuffling in between her legs as she exposes herself.<br>
<br>
Pressing your lips against hers you feel her relax, her crystal clear draught flowing down your throat, tingling as it passes over your tongue.<br>
<br>
She says not a word the whole time, merely staring down into your up-turned eyes as you gulp and swallow.<br>
<br>
The flow tapers off to nothing and you start to lean back only for her to grab the back of your head and hold you in place, as irresistible as a vice.<br>
<br>
"@@.npc_manager;No, I think you need to do a bit more down there... unless you would rather I punish you for your tardiness?@@"<br>
<br>
"No miff-treff" You reply, your words muffled against her groin.<br>
<br>
"@@.npc_manager;Good, now show me how your sissy oral skills are developing.@@"<br>
<br>
Running your tongue between her folds in search of her lovely clit the mild taste of her urine is soon overpowered by her strong, deep womanly flavour. Sucking with your lips your tongue dances a merry jig, making spiraling around her sensitive clit before sprinting up and down over it.<br>
<br>
You feel her shudder slightly, though she suppresses all but the barest gasp to signal you effectiveness. Her hold on your head tightens and she grinds against your face before finally letting out a satisfied sigh and relaxing her grasp.<br>
<br>
"@@.npc_manager;Not bad, we still need to spend time working on your stamina but... not bad.@@"<br>
<br>
Turning she opens the stall door only to glance back at you, still kneeling on the floor.<br>
<br>
"@@.npc_manager;Well come on. You have work to do! You cannot just spend the rest of the day HERE as a human urinal.@@"<br>
<br>
<<printThought $player "Wait... does that mean I could spend the day as a urinal somewhere else?">><br>
<br>
You rise to your feet and quickly follow after her.<br>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: work female bathroom pee in your butt
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'piss' 10 'normal' $SEEN_STRANGER>>
<<if setup.getTotalValue("piss") == 0 && !setup.hasThreshold('piss', 'general_piss', 'work_piss_butt')>>
<<setThreshold 'piss' 'general_piss' 'work_piss_butt' true>>
<</if>>
<<set $scene.successChance = 1 + setup.checkVisibleClothingTag('slutty')/10>>
<<if setup.getCurrentMakeup($player) != "" && $player.makeup.messed > 50>>
<<set $scene.successChance += 1>>
<</if>>
<<set $scene.success = $scene.penis && (random(10) < $scene.successChance)>>
<<set $player.work.bathroom_events.female.piss_butt += 1>>
<</if>>
<<set $player.location to "Woman's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
"In your butt? Oh... that sounds fun!" She bites her lip as she ducks into the stall and you quickly follow.<br>
<br>
Closing the door you turn around to find her already ready, her skirt hiked up and her cock in hand. "Come on now, sissy!" She says with a smile. "Let's see that ass so I can fill you up!" <br>
<br>
You do as you're told, turning around and bending over before revealing your plugged hole.<br>
<br>
"Ah, all stopped up, lovely, we wouldn't want you leaking any of what I gift you now, would we?" <br>
<br>
"N-n-no, Mistress" you reply as she removes the inner plug and grabs you by the hips to slide her cock into your hollow gaping hole.<br>
<br>
You moan as you feel her <<getWordPiss $player>> flowing into you. She must have drunk quite a lot of coffee this morning because it continues on for quite some time before she lets out a sigh of relief and swiftly swaps back in your plug.<br>
<br>
"Aww, you look so full!" She states, patting you on the tummy. You can feel yourself slosh a bit, but the plug does its job, preventing a single drop from leaking out.<br>
<br>
Leaning over you gently lick her penis clean as she strokes your hair. "Aren't you a good girl! Well I'd love to make use of that mouth more but I have a meeting to get to. Have a good day, or should I say... continue to enjoy it?" <br>
<br>
She quickly departs as you take a moment to adjust your clothes.
<<else>>
"In your butt? No, that would make far too much of a mess, I think. Good day." <br>
<br>
<<printThought $player "Hmm, did I ask the wrong woman, or do I just not look trashy enough for that sort of thing?">><br>
<br>
She steps into the stall, loudly latching the door behind her.
<</if>>
<br><br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: work female bathroom oral sex
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<<set $player.money.total += 15>>
<<set $scene.successChance = 1 + setup.checkVisibleClothingTag('female')/10>>
<<if setup.getCurrentMakeup($player) != "" && $player.makeup.messed < 25>>
<<set $scene.successChance += 1>>
<</if>>
<<set $scene.success = $scene.penis || (random(10) < $scene.successChance)>>
<<if $scene.penis>>
<<set $player.work.bathroom_events.female.blowjob += 1>>
<<else>>
<<set $player.work.bathroom_events.female.cunnilingus += 1>>
<</if>>
<</if>>
<<set $player.location to "Woman's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You ask if she might be in need of some other "relief." <br>
<br>
She pauses with one hand on the stall door, slowly looking you up and down with a neutral expression.<br>
<br>
"And what form might that take?" <br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
You smile and bluntly reply that you'd love to lick her cunt.
<<if $scene.penis>>
<br><br>
"Hmm... cunt, how about something else?" She reaches down to cup her bulge suggestively.<br>
<br>
You smile and reply that you are prepared to give an oral presentation on any topic.
<</if>>
<<else>>
You reply that, maybe, you could, like... use your tongue for something other than talking?
<</if>>
<br><br>
<<if $scene.success>>
"Hmm, yes, that sounds... agreeable." <br>
<br>
You follow her into the stall where she sits on the edge of the toilet, spreads her legs and slides up her skirt.<br>
<br>
<<if $scene.penis>>
Her girlcock looks huge held between her dainty fingers and you quickly shuffle between her legs and lean in.<br>
<br>
Her already hard cock is a delight against your lips as you bob your head, steadily sliding more and more of it into your mouth.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
With practiced ease you deepthroat her entire length on the first attempt. She gasps, obviously surprised to find someone skillful enough to so casually accomodate her length.<br>
<br>
Spurred on you give a little hum of pleasure before bobbing your head up and down, enjoying the feeling of her cock pumping in and out of your throat as you lick and suck and slurp.
<<else>>
A touch longer than you're quite capable of taking you gag slightly before retreating, spending some time twirling your tongue over her sensitive tip before pulling off completely and running your lips up and down her shaft.<br>
<br>
"Mmmm, good girl..." she encourages as you continue to lick and suck, taking a short detour all the way down to her perfect hairless balls.<br>
<br>
Using your hand to stroke you focus your mouth on her tip, tilting your head back to watch her face as she bites her lip and makes cute little gasps.
<</if>>
<br><br>
You wonder if she might have a touch of an exhibitionist streak with how fast she cums from getting head in a public bathroom, but you don't think on it long, focused more on licking up her thin, but delicious, girl-cum.<br>
<br>
"That was nice," she states, wiping a stray drop of semen from your cheek where you daintily suck her fingertip clean. "So cute, well I need to return to work soon and I am sure someone else will be missing your cute mouth before long!"
<<else>>
Her cunt is smooth and hairless and very inviting, glistening with arousal as you drop to your knees in front of her.<br>
<br>
Leaning in you extend your tongue and gently lick, she smiles down and shakes her head in amusement. "Very cute but it's not THAT delicate, and I don't have that much time, get in there good, sissy, I want to cum." <br>
<br>
You lean in closer and start rapidly licking, your tongue sliding between her folds to probe her entrance and swirl around her clit.<br>
<br>
"Oh yea... that's it" she moans as you maintain your efforts. You hear her breaths coming faster and faster until she finally digs her fingers into your hair, raising her hips and pulling you in as she moans with orgasm. Pressed so close you're unable to breath you frantically lick for as long as you can until you are finally forced to pull back, panting and trailing a few thin threads of girljuice.<br>
<br>
Leaning back she is still catching her breath. "Wow... so, I guess I needed that, heh." <br>
<br>
You smile and rise to your feet as she sits and recovers.
<</if>>
<br><br>
Pulling down her skirt she motions for you to depart so she can do what she originally came in for. You give a quick curtsey and leave her to it.
<<else>>
"Hmm, an intriguing offer, but I shall have to pass, good day." <br>
<br>
<<printThought $player "Damn, maybe if I looked more feminine?">><br>
<br>
She steps into the stall, latching the door behind her.
<</if>>
<br><br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>
/* note: should probably colour the two women's text differently for easier reading *//*#
#desc: work female bathroom, overhear people talking
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.stage = setup.calcProgressiveScene($player.work.bathroom_comments.female, $player, $npc_manager)>>
<<if $scene.stage != 'generic'>>
<<set $player.work.bathroom_comments.female[$scene.stage] = true>>
<</if>>
<</if>>
<<set $player.location to "Woman's Toilet on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You're sitting in a private stall doing your business when you overhear a pair of women chatting.<br>
<br>
<<switch $scene.stage>>
<<case 'start'>>
"Hey, you see they got a replacement for <<=setup.getNpcName('npc_secretary', 'first')>>?" <br>
<br>
"Yea, he's kind of cute, a bit wimpy tho." <br>
<br>
"Yea, well, maybe that'll be better for him, can't imagine some strapping manly man pulling off being <<=ps(setup.getNpcName('npc_manager', 'last'))>> secretary." <br>
<br>
"Hah! No kidding." <br>
<br>
Their voices fade as you finish up your business.
<<case 'unisex'>>
"So it looks like that new secretary is FINALLY getting with the programme." <br>
<br>
"I know, right? I mean, sure he's technically male or whatever but it just looks bad for all of us administrative assistants when someone dresses so, like... DULL." <br>
<br>
Their voices fade as you finish up your business.
<<case 'female'>>
"You know I was thinking we should like, send a fruit basket or something to welcome the new girl to the team." <br>
<br>
"Hmm, not a bad idea, I'll see if I can come up with some ideas." <br>
<br>
Their voices fade as you finish up your business.
<<case 'pink'>>
"You see the new girl's cute uniform?" <br>
<br>
"Did I? She is just totes adorbs! Gotta say, <<=setup.getNpcName('npc_manager', 'last')>> really does seem to have the magic touch when it comes to grooming her assistants." <br>
<br>
"Hah, sounds like you want to work for her!" <br>
<br>
"Well... I mean... did you hear about the promotion her last girl got? Seems like it's a fast-track to the top." <br>
<br>
"Top... by the way of bottom! I mean she works her girls hard, it ain't a free ride..." <br>
<br>
"True, though I hear there is a bit of riding involved..."
<<case 'breastssmall' 'breastsmed' 'breastslarge' 'breastsmassive'>>
"Hey, you see <<=ps(setup.getNpcName('npc_manager', 'last'))>> tramp got some work done?" <br>
<br>
<<switch setup.calcBreastSize($player)>>
<<case 'massive'>>
"Tell me about it! I swear I don't know how she doesn't just fall over! It's lewd, is what it is." <br>
<br>
"Yea, but the men like 'em that way." <br>
<br>
"Pigs." <br>
<br>
"Preaching to the choir, sister, preaching to the choir."
<<case 'large'>>
"I know, I mean it's decent work but, like I'm always a bit jealous when someone cheats their way up." <br>
<br>
"Hey, we can't all be blessed with your genes. Let technology make the world a better place." <br>
<br>
"Yea, I suppose you're right."
<<case 'medium'>>
"Yea, good work too, a nice cute pair for a cute girl." <br>
<br>
"Eh, I think she could have gone bigger." <br>
<br>
"Hah, of course you'd say that, you think anything under double D's is flat-chested." <br>
<br>
"Well, I mean... it kinda is?"
<<case 'small'>>
"Yea, though you can barely tell, dunno why she even bothered." <br>
<br>
"Maybe she's doing it slow and natural with, like, hormones and stuff." <br>
<br>
"Hmm, maybe you're right. I could never have the patience for something like that." <br>
<br>
"Hah, no kidding, I remember your "patience" at the bar last Friday!" <br>
<br>
"Hey, it was every woman for themselves, you could have talked to 'em first!"
<</switch>>
<br><br>
Their voices fade as they walk out of the room and you finish up your business.
<<case 'generic'>>
<<switch random(2)>>
<<case 1>>
"Did you get the paperwork from finance yet?" <br>
<br>
"Yea, finally, I swear they cost us more time than the regulators some days!"
<<case 2>>
<<if $npc_manager.stage >= 4>>
"How about this year's retreat, eh?" <br>
<br>
"Seriously! I can't wait 'till next year, wish they were quarterly!"
<<else>>
"What's the story with the corporate retreat this year, you going?" <br>
<br>
"You kidding? After last year I wouldn't miss it for the world, just wish they'd settle on a date so I can book flights."
<</if>>
<<default>>
Whatever they're saying is too full of corporate jargon for you to understand or care.
<</switch>>
<br><br>
<<default>>
<</switch>>
<br><br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: random event, crowded work elevator intro
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
Arriving to work you find the lobby far busier than normal, weaving through the crowd to find that this is due to an elevator malfunction rendering most of the lifts out of order.<br>
<br>
Making it to the front of the queue you face a sardine-packed full elevator, with not much time remaining before you need to be in office.<br>
<br>
You hesitate, unsure if even your slender frame could fit in the already crowded elevator only for a tall man in front to wave you in. "Come on, we can squeeze it!" <br>
<br>
<<printThought $player "If I don't get in, I'll probably be late to work...">><br>
<br>
[<<moveTo "event_random_work_elevator_grope_1" "Cram into the elevator." 120 "<<set $scene.enter=true>>">>]<br>
[<<moveTo "event_random_work_elevator_grope_1" "Wait for the next elevator." 600 "<<set $scene.enter=false>>">>]
</div>/*#
#desc: random event, groped in crowded work elevator
#status: STUB 0.7.0.0
#*/
<<if $roomchange == true>>
<<set _nextdate = setup.checkTaskLocationTime('manager_morning_inspection_task')>>
<<set _tmpSeconds = setup.secondstoDate($now,_nextdate) + 60>>
<<set $scene.late_time = setup.secondstoDate($now,_nextdate) + 360>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png">>
<div id="invframe" class="scrolltext">
<<if $scene.enter>>
Stepping over the threshold of the elevator and turning around you suck in your breath as your inviting new friend wraps his arms around your waist and pulls you in tight, the door barely closing.<br>
<br>
Unable to move you feel something hard pressing against your back. As the floors tick upwards you feel the... thing pressing into you stiffening and swelling larger, while, at the same time, the man's hands slide up from your hips to <<if $player.body.breastsize[0]>0>>squeeze your breasts<<else>>caress your flat chest<</if>>.<br>
<br>
Your floor arrives and you step off, fairly certain you heard a slight grunt as you pulled away from the man.<br>
<br>
[<<moveTo "room_office_sissy_secretary" '<<=ps(setup.getNpcName("npc_manager", "formal"))>> Office' 120>>]
<<else>>
Shaking your head you watch the elevator door slide closed, another few minutes ticking past to make you late... and then suddenly the elevators are working again, the out of service lifts arriving all at once as the lobby swiftly clears out.<br>
<br>
[<<moveTo "company_lobby" "Wait for the next elevator." $scene.late_time>>]
<</if>>
</div>/*#
#desc: overhear manager raging at something
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're working away at your computer when you hear a frustrated yell coming from your <<=ps(setup.getNpcName('npc_manager', 'title'))>> inner office.<br>
<br>
<<printThought $player "Maybe <<=setup.getNpcName('npc_manager', 'formal')>> needs assistance?">><br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo 'event_work_broken_computer_2' 'Go see if she needs help.' 60>>]<br>
[@@.link_locked;You are much too good a slave to consider ignoring your <<=setup.getNpcName('npc_manager', 'title')>>.@@]
<<else>>
[<<moveTo 'event_work_broken_computer_2' 'Investigate.' 60>>]<br>
[<<moveTo "event_work_broken_computer_1_decline" 'Ignore her outburst and keep working.' 60>>]
<</if>>
</div>/*#
#desc: decline to investigate manager raging at computer
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<addWorkEvent 'broken_computer' '{"trigger":"daily","type":"chance","chance":25,"repeat":false,"priority":100}' '{"szene":"event_work_broken_computer_1","length":"15"}' $now>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Deciding against risking becoming the target of her anger you focus on your work and the sound of her frustrations eventually fade.<br>
<br>
<<printThought $player "I wonder what that was about?">><br>
<br>
[<<moveTo $workEventReturn 'Continue working.' 60>>]
</div>/*#
#desc: check to see if manager needs help
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.affection += 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Entering the inner office you find <<=setup.getNpcName('npc_manager', 'formal')>> glaring at her computer and you ask what's wrong.<br>
<br>
"@@.npc_manager;This infernal thing keeps trying to apply a so-called "security update" but then the whole machine restarts partway through only to try to apply the update again about half an hour later, it has happened twice already today!@@"<br>
<br>
[<<moveTo 'event_work_broken_computer_3_self' 'Offer to see if you can fix it.' 60>>]<br>
<<if $npc_technician.flags.dataservice_encounter.asked_for_help || $npc_technician.dates > 0>>
<<set _passage = "Suggest you call your friend " + setup.getNpcName('npc_technician', 'first') + ".">>
[<<moveTo 'event_work_broken_computer_3_tech' _passage 60>>]
<<else>>
<<set _passage = 'Suggest you call the so-called "tech wizard," ' + setup.getNpcName('npc_technician', 'first') + " from your previous job.">>
[<<moveTo 'event_work_broken_computer_3_tech' _passage 60>>]
<</if>>
</div>/*#
#desc: try to help manager yourself
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if setup.getTotalValue("smart") >= 10>>
<<incrementEmotion 'satisfaction' 'npc_manager' 2>>
<<set $npc_ai.flags.manager_file_access = true>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<addWorkEvent 'broken_computer' '{"trigger":"daily","type":"chance","chance":25,"repeat":false,"priority":100}' '{"szene":"event_work_broken_computer_1","length":"15"}' $now>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Hmm, that is right, you used to work down in the tech department? It seems so strange to think of such a thing, I mean, you are so much better suited as a secretary. Still, if you think you can help, go ahead.@@"<br>
<br>
Standing from her desk she gestures for you to take a seat.<br>
<br>
Suddenly nervous about your possibly atrophied skills you take a deep breath and start typing.<br>
<br>
<<if setup.getTotalValue("smart") >= 10>>
Checking system status and such it doesn't take you long to discover the issue - there is an encrypted folder on her drive that the security update is running into permission issues whenever it tries to scan. Manually restarting the update in admin mode you explain how she needs to type in the password for the folder in question for things to finish.<br>
<br>
Smiling up in triumph you beam with pride as the scan finishes and she confirms that everything is in order.<br>
<br>
"@@.npc_manager;Well done, sissy! If you were always this skilled it must have been a real miracle that you made the mistake that lead you to my employee. I guess you are just a lucky girl!@@"<br>
<br>
You blush at the... strange compliment before she shoos you away so that the both of you can return to work.
<<elseif setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
You don't remember computers being this, like, hard... and not the FUN hard either... Not wanting to disappoint her you try anyway but your lack of a clue is soon apparent and she kicks you off, sending you back to your office to "figure it out herself." <br>
<br>
Your head hurts from trying to think so hard and you still feel bad for failing her as you return to your desk and your normal duties.
<<else>>
You putter around a bit on your computer but you just don't seem to be able to figure out what's wrong. Finally deciding you aren't going to get anything done she kicks you off and sends you back to your desk to resume your "proper" job.<br>
<br>
Feeling very disappointed for failing her you obediently return to your desk.
<</if>>
<br><br>
[<<moveTo $workEventReturn 'Resume working.' 60>>]
</div>/*#
#desc: get npc_technician to help fix manager computer
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.affection += 2>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $npc_technician.flags.fixed_manager_computer = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
/%TODO future: show npc_manager as well%/
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_technician.png">>
<div id="invframe" class="scrolltext">
You explain about how, back at Cloud Data Services, <<=setup.getNpcName('npc_technician', 'first')>> was able to fix pretty much anything and everything computer related.
<<if $npc_technician.flags.dataservice_encounter.asked_for_help>>
Well, everything except the data backup you lost.<br>
<br>
"@@.npc_manager;There there, that really did turn out for the best, I mean if she had recovered all the files you might never have ended up finding your true calling as my SISSY secretary!@@"<br>
<br>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
<<printThought $player "Yay! Being a SISSY secretary is, like, so much better!">>
<<else>>
<<printThought $player "Huh... thinking about it now it is a bit of a weird coincidence that <<=setup.getNpcName('npc_technician', 'first')>> wasn't able to solve things.">>
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Well if you vouch for her it is worth a try, and Goddess knows that the IT department up here is not good for much, let me clear her to come up here.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> makes a few calls and in a few minutes <<=setup.getNpcName('npc_technician', 'first')>> shows up, appearing a little nervous as she looks in awe around the large office.<br>
<br>
"@@.npc_technician;Uh... hi, <<=$player.first_name>>, <<=setup.getNpcName('npc_manager', 'other')>> you, uh... were having some computer issues?@@"<br>
<br>
"@@.npc_manager;Yes... <<=$player.first_name>> said you were JUST the lady to help. Why don't you come around the desk and show me the manifested skills of a tech wizard.@@"<br>
<br>
"@@.npc_technician;That's, uh, what they call me, heh heh.@@" She replies, seeming a bit discombobulated by your <<=ps(setup.getNpcName('npc_manager', 'title'))>> powerful presence.<br>
<br>
Fortunately once she is sitting down at the computer <<=setup.getNpcName('npc_technician', 'first')>> is back in her element, plugging in a diagnostics dongle and quickly typing away as she gets straight to the root of the problems.<br>
<br>
"@@.npc_technician;Ah, here we go. Looks like there are some encrypted files with heightened access permissions that the automated patch is tripping up on.@@" She types a bit more, mumbling something about "@@.npc_technician;manually restarting the job@@" before asking <<=setup.getNpcName('npc_manager', 'formal')>> to please enter her passcode.<br>
<br>
A few minutes later and things are all wrapped up, <<=setup.getNpcName('npc_technician', 'first')>> packing up her things. Still obviously unnerved by your <<=setup.getNpcName('npc_manager', 'title')>> <<=setup.getNpcName('npc_technician', 'first')>> looks a bit relieved to be heading out.<br>
<br>
"@@.npc_manager;Wonderfully done! And to show my thanks I am going to go ahead and let your access to the 52nd floor persist, that way the next time I have an issue you can come right up without re-cutting all this red tape... Plus you can drop by and visit your cute friend for coffee or whatever.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> turns towards you with a smile. "@@.npc_manager;Just do not get into any trouble with her! I already have one ex-techie cute secretary to keep in line!@@"<br>
<br>
You and <<=setup.getNpcName('npc_technician', 'first')>> both turn red as <<=setup.getNpcName('npc_manager', 'formal')>> laughs. <<=setup.getNpcName('npc_technician', 'first')>> quickly making her escape as <<=setup.getNpcName('npc_manager', 'formal')>> thanks her a final time.<br>
<br>
Alone just the two of you <<=setup.getNpcName('npc_manager', 'formal')>> nods in approval. "@@.npc_manager;Good idea having me call her up, such a lovely young woman. Well, best we both get back to work.@@"<br>
<br>
You nod, curtsey and return to your desk.<br>
<br>
[<<moveTo $workEventReturn 'Resume working.' 60>>]
</div>/*#
#desc: masturbate at lunch in work bathroom
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if setup.getItemFromType("cage") != "">>
<<set $player.timebased.horny += 25>>
<<else>>
<<set $player.timebased.horny = 10>>
<<set $scene.masturbateRandom = random(2)>>
<</if>>
<</if>>
<<set $player.location to "Toilet Stall on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<if setup.getItemFromType("cage") == "" && $scene.masturbateRandom == 2>>
<<createBGR "./images/locations/company_toilet.png" "./images/characters/npc_ai.png">>
<<else>>
<<createBGR "./images/locations/company_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
Choosing an empty stall you close the latch and make yourself comfortable as you decide to try and obtain some relief.<br>
<br>
<<if setup.getItemFromType("cage") != "">>
Pulling down your <<=setup.getItemName(setup.getItemFromType("panties"))>> to expose your caged <<getWordMyPenis $player>> you try to masturbate but the result is little more than an uncomfortable reminder of your imprisoned state as you swell within the cage.<br>
<br>
<<printThought $player "Damn, this isn't working...">><br>
<br>
[<<moveTo "event_work_bathroom_masturbate_2_anal" "Try some backdoor stimulation." 600>>]<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Give up and go back to your office" 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
<<else>>
<<if setup.getItemFromType("panties") != "">>
Pulling down your <<=setup.getItemName(setup.getItemFromType("panties"))>> you wrap your fingers around your <<getWordMyPenis $player>> and start stroking.
<<else>>
Dressed, or rather NOT dressed commando you swiftly move to wrapping your hand around your <<getWordMyPenis $player>> and commence to stroking.
<</if>>
<br><br>
<<switch $scene.masturbateRandom>>
<<case 0 1>>
Engrossed in your efforts to get off before your break ends you are soon stifling gasps as you rocket towards climax.<br>
<br>
<<if setup.getItemFromType("plug") != "">>
You feel the <<=setup.getItemName(setup.getItemFromType("plug"))>> in your rear and you clench down on it and roll your hips to invite your prostate to the party.
<<elseif setup.getTotalValue("anal")>5>>
Your empty hole cries out for stimulation and you regret your lack of a plug.
<<else>>
You feel like something is missing but are too distracted by the quest for orgasm to put your finger on (or is that in?) what.
<</if>>
<br><br>
As you approach climax your thoughts can't help but turn towards your <<=setup.getNpcName('npc_manager', 'title')>> and how, despite (or is that, because?) of how intimidating she is she is still very attractive.
<<if setup.getTotalValue("submission") > 10>>
Spurting all over your hand your prior arousal suddenly crashes as you feel awash with guilt for getting yourself off without permission.<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
[<<moveTo "event_work_bathroom_masturbate_2_confess" "Call her on your cell to confess your crime." 60>>]<br>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Dispose of the evidence." 60>>]<br>
[@@.link_locked;You are too submissive to go back to the office without somehow addressing this failure.@@]
<<else>>
[<<moveTo "event_work_bathroom_masturbate_2_confess" "Call her on your cell to confess your crime." 60>>]<br>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Dispose of the evidence." 60>>]<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
<</if>>
<<else>>
You feel a bit guilty fantasizing about your boss this way... but that doesn't stop you from spurting all over your hand.<br>
<br>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Dispose of the evidence." 60>>]<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
<</if>>
<<default>>
Your heart races as you rapidly approach climax. A moment before you spurt there's a shimmer in the air in front of you, as <<=setup.getNpcName('npc_ai', 'first')>> appears before you.<br>
<br>
Your jet of <<getWordCum $player>> shoots right through her incorporeal chest, the hologram wavering slightly as she blinks down at you.<br>
<br>
"@@.npc_ai;<<uc "Hello unit ">><<uc $player.first_name>><<uc " why are you dispensing genetic samples on the toilet wall?">>@@"<br>
<br>
Your jaw flaps, though no sound comes out as the holographic AI woman smiles down at you.<br>
<br>
"@@.npc_ai;<<uc "Do not worry, unit ">><<uc $player.first_name>><<uc " your secrets are safe with me. Maintenence does not do genetic testing on this floor.">>@@"<br>
<br>
Before you can put together a response she has disappeared as mysteriously as she appeared.<br>
<br>
<<printThought $player "Wait, for her to- are there cameras in the bathroom? And what did she mean by THIS floor?">><br>
<br>
Surreptitiously glancing around in fear you feel very exposed, and even more confused by the goings on at this company you blink in shock as you try to process what just happened, only to hear the sound of flushing from the next stall over!<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, could this possibly get any more embarrassing?">><br>
<br>
Waiting in fear until it sounds like the bathroom is empty you sneak out, washing your hands and quietly slinking back to your desk.<br>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
<</switch>>
<</if>>
</div>/*#
#desc: masturbate at lunch in work bathroom - anal
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $INCOGNITO>>
<<applyExperience 'anal' 4 'little' $SEEN_FRIEND>>
<<set $player.timebased.horny = 0>>
<</if>>
<<set $player.location to "Toilet Stall on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("plug") != "">>
Reaching between your legs your fingers find the base of the <<=setup.getItemName(setup.getItemFromType("plug"))>> occupying your rear.<br>
<br>
Shifting it to press against your prostate you moan, working it as your caged <<getWordMyPenis $player>> sits neglected until, <<if !setup.canPlayerCum($player,setup.getTotalValue('anal'))>>to your surprise, and with<<else>>With<</if>> a shuddering gasp, you leak through your cage, dribbling out all over your hand.
<<else>>
Reaching between your legs past your caged <<getWordMyPenis $player>> you start fingering your ass, soon moaning and gasping as your probing fingers find your deliciously sensitive prostate.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
<<printThought $player "This is so much better than playing with my <<getWordMyPenis $player>>? Why do I ever let my ass be empty?">>
<<else>>
<<printThought $player "This feels so good, I should really consider being plugged more often...">>
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
<<printThought $player "This is almost as good as masturbating normally, I should do things with my ass more often...">>
<<else>>
<<printThought $player "This feels good... but I still wish I wasn't caged...">>
<</if>>
<</if>>
<br><br>
Your fingers working rapidly in your hungry hole it isn't long until, <<if !setup.canPlayerCum($player,setup.getTotalValue('anal'))>>to your surprise, and with<<else>>With<</if>> a shuddering gasp, you leak through your cage, dribbling out all over your hand.
<</if>>
<br><br>
<<if setup.getTotalValue("submission") > 10>>
Looking down at the mess you've made your responsibilities as a SISSY secretary suddenly flood back as you think of your <<=setup.getNpcName('npc_manager', 'title')>>.
<br>
<<if setup.getTotalValue("submission") > 15>>
[<<moveTo "event_work_bathroom_masturbate_2_confess" "Call her on your cell to confess your crime." 60>>]<br>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Dispose of the evidence." 60>>]<br>
[@@.link_locked;You are too submissive to go back to the office without somehow addressing this failure.@@]
<<else>>
[<<moveTo "event_work_bathroom_masturbate_2_confess" "Call her on your cell to confess your crime." 60>>]<br>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Dispose of the evidence." 60>>]<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
<</if>>
<<else>>
Looking down at the mess you've made has you feeling a bit guilty.<br>
<br>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Dispose of the evidence." 60>>]<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
<</if>>
</div>/*#
#desc: masturbate at lunch in work bathroom - eat cum
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $INCOGNITO>>
<<setThreshold 'cum' 'toilet' 'dispose_evidence' true>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<set $player.timebased.horny += 10>>
<</if>>
<<set $player.location to "Toilet Stall on Floor 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("cum") >= 10>>
Savoring every drop you lick your hand clean of the evidence of your orgasm.<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
The taste of your own <<getWordCum $player>> is almost more pleasurable than the act of harvesting it and you roll it around in your mouth, smiling in pleasure before finally gulping it down.
<<else>>
The taste of your own <<getWordCum $player>> is like a lovely cherry on top to round out your little lunch-time dalliance and you smile as you gulp it down.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Your <<getWordCum $player>> is a bit bitter, but not all that bad. You take your time to thoroughly lick your hand clean of every drop of "evidence."
<<else>>
Your <<getWordCum $player>> is harsh and bitter and you have to force yourself to choke down the evidence of your lunch-time dalliance.
<</if>>
<</if>>
<br><br>
Fixing your clothes and washing your hands you check yourself in the mirror before leaving the bathroom.<br>
<br>
Frustratingly the feeling of your <<getWordCum $player>> pooling in your belly already has your arousal building back up...<br>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: masturbate at lunch in work bathroom - confess to manager
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 6 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_manager.affection += 1>>
<<set $player.timebased.horny += 30>>
<</if>>
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Staring guiltily at <<getWordCum $player>> soaking your hand you carefully pull out your phone to call <<=setup.getNpcName('npc_manager', 'formal')>> only for it to pop up as a video call, her eyes no less piercing filtered through the phone screen.<br>
<br>
"@@.npc_manager;Well, what is it? Wait... what did you do?@@"<br>
<br>
You blush even harder, unable to escape her gaze as she sees right through you.<br>
<br>
Too embarrassed to speak you merely raise your cum-covered hand into view.<br>
<br>
<<if setup.getItemFromType("cage") != "">>
"@@.npc_manager;I see, and I thought your cage would help you avoid this sort of... failure.@@"
<<else>>
"@@.npc_manager;Oh my. How embarrassing for you to have made such a mess, being such a naughty girl on your lunchbreak!@@"
<</if>>
<br><br>
"@@.npc_manager;Well, go on now, let me see you clean up your mess, sissy.@@"<br>
<br>
You can feel the heat of her stare as you try to hold the camera steady to give her a view of you licking every drop of
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
delicious
<<else>>
yummy
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
strangely tasty
<<else>>
bitter
<</if>>
<</if>>
<<getWordCum $player>> off your hand and swallow it down.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
"@@.npc_manager;My my, someone likes their special flavour... Good girl, you should always want to clean up after your little... messes.@@"
<<else>>
"@@.npc_manager;Hmm, well, that is something, at least. I am still disappointed in you, however and if you keep this up... well... we may have to take more severe measures.@@"
<</if>>
<br><br>
You shudder in anticipation of what that could mean as she ends the call.<br>
<br>
<<if setup.getItemFromType("cage") != "">>
Glancing down between your legs you find yourself already straining within your cage, a part of you seemingly quite excited by your <<=ps(setup.getNpcName('npc_manager', 'title'))>> threat.
<<else>>
Glancing down between your legs you find yourself already stiffening anew, a part of you seemingly quite excited by your <<=ps(setup.getNpcName('npc_manager', 'title'))>> threat.
<</if>>
<br><br>
Quickly pulling up your clothes you wash your hand and hurry out of the restroom.<br>
<br>
<<if setup.checkPlayerDressed($player) || setup.checkOutsideDecency($player)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@]
<</if>>
</div>/*#
#desc: include passage for all "random" events
#status: RELEASED 0.6.0.0
#*/
<<set $randomEvents = {}>>
<<set $randomEvents['elevator_home'] = []>>
<<set $randomEvents['elevator_in'] = [{
done: false,
id: "move_foreshadow"
}]>>
<<set $randomEvents['elevator_in'].pushUnique({
done: false,
id: "grope"
})>>
<<set $randomEvents['canteen'] = [{
done: false,
id: "coworker_hucow"
}]>>
<<set $randomEvents['work_bathroom_female'] = [{
done: false,
id: "work_bathroom_female_general"
},{
done: false,
id: "work_bathroom_female_private"
}]>>
<<set $randomEvents['work_bathroom_male'] = [{
done: false,
id: "work_bathroom_male_general"
},{
done: false,
id: "work_bathroom_male_private"
},{
done: false,
id: "coworker_sissy_secretary"
}]>>
<<set $randomEvents['work_coffee_shop'] = [{
done: false,
id: "whipped_special"
}, {
done: false,
id: "barista_bj_aftermath"
},{
done: false,
id: "coworker_futa"
}
]>>
<<set $randomEvents['work_office'] = [{
id : 'hr_harrassment'
}, {
id : 'nintendolls_president'
}, {
id : 'hr_discipline'
}, {
id : 'hr_retention'
}, {
id : 'hr_development'
}]>><<initRoom>>
<<set $scene.event = setup.getRandomEvent($player, $scene.location)>>
<<if $scene.event != "">>
<<moveTo $scene.event.szene>>
<<else>>
<<moveTo $scene.passthrough>>
<</if>>/*#
#desc: triggered passage that handles routing "random" work office events
#status: RELEASED 0.6.0.0
#*/
<<setScene>>
<<set $scene.location = "work_office">>
<<set $scene.passthrough = $workEventReturn>>
<<include locationBasedRandomEvent>>/*#
#desc: triggered passage that handles routing "random" work events on elevator home
#status: RELEASED 0.6.0.0
#*/
<<setScene>>
<<set $scene.location = "elevator_home">>
<<set $scene.passthrough = "company_lobby">>
<<include locationBasedRandomEvent>>/*#
#desc: triggered passage that handles routing "random" work events on elevator home
#status: RELEASED 0.6.0.0
#*/
<<setScene>>
<<set $scene.location = "elevator_in">>
<<set $scene.passthrough = "room_office_sissy_secretary">>
<<include locationBasedRandomEvent>>/*#
#desc: triggered passage that handles routing "random" work events in canteen
#status: RELEASED 0.6.0.0
#*/
<<setScene>>
<<set $scene.location = "canteen">>
<<set $scene.passthrough = "room_office_lunchbreak_canteen">>
<<include locationBasedRandomEvent>>/*#
#desc: triggered passage that handles routing "random" work events in work male bathroom
#status: RELEASED 0.6.0.0
#*/
<<setScene>>
<<set $scene.location = "work_bathroom_male">>
<<set $scene.passthrough = "room_office_lunchbreak_toilet_male">>
<<include locationBasedRandomEvent>>/*#
#desc: triggered passage that handles routing "random" work events in work female bathroom
#status: RELEASED 0.6.0.0
#*/
<<setScene>>
<<set $scene.location = "work_bathroom_female">>
<<set $scene.passthrough = "room_office_lunchbreak_toilet_female">>
<<include locationBasedRandomEvent>>/*#
#desc: setup all the random triggered events that happen at the office
#status: RELEASED 0.6.0.0
#*/
/%non-random "salary" event%/
<<if $now.getUTCDay() < 4 || ($now.getUTCDay() == 4 && $now.getUTCHour() < 19)>>
<<set _salDate = setup.setNextDate($now, 4-$now.getUTCDay(), 19, 0)>>
<<else>>
<<set _salDate = setup.setNextDate($now, 11-$now.getUTCDay(), 19, 0)>>
<</if>>
<<addEvent 'weekly_salary_phonecall'
'{"trigger":"always","type":"date","id":"event_manager_weekly_salary_remote"}'
'{"szene":"event_manager_weekly_salary_remote"}'
_salDate
>>
<<addWorkEvent 'work_coffee_random'
'{"trigger":"daily","type":"chance","chance":25,"repeat":true,"priority":0}'
'{"szene":"event_work_coffee","length":"15"}'
>>
<<addWorkEvent 'office_random_event'
'{"trigger":"always","type":"chance","chance":25,"repeat":true,"priority":0}'
'{"szene":"event_work_office_random_root","length":"30"}'
>>
<<addEvent 'elevator_home_random'
'{"trigger":"daily","type":"next","repeat":true,"location":"room_elevator_home","priority":0}'
'{"szene":"room_elevator_home_random_event"}'
>>
<<addWorkEvent 'work_meeting'
'{"trigger":"daily","type":"chance","chance":25,"repeat":true,"priority":0}'
'{"szene":"event_work_meeting_root","length":"60"}'
>>
<<addEvent 'elevator_in_random'
'{"trigger":"daily","type":"chance","chance":25,"repeat":true,"location":"room_elevator_in","priority":0}'
'{"szene":"room_elevator_in_random_event"}'
>>
<<addEvent 'canteen_random'
'{"trigger":"daily","type":"chance","chance":25,"repeat":true,"location":"room_office_lunchbreak_canteen","priority":0}'
'{"szene":"room_canteen_random_event"}'
>>
<<addEvent 'female_bathroom_work_random'
'{"trigger":"daily","type":"chance","chance":25,"repeat":true,"location":"room_office_lunchbreak_toilet_female","priority":1}'
'{"szene":"room_work_bathroom_female_random_event"}'
>>
<<addEvent 'male_bathroom_work_random'
'{"trigger":"daily","type":"chance","chance":25,"repeat":true,"location":"room_office_lunchbreak_toilet_male","priority":1}'
'{"szene":"room_work_bathroom_male_random_event"}'
>>/*#
#desc: mux for work meetings
#status: WRITTEN 0.7.0.0
#*/
<<initRoom>>
<<if $npc_manager.flags.meeting_stage > $npc_manager.stage>>
<<set $scene.stage = $npc_manager.stage>>
<<else>>
<<set $scene.stage = $npc_manager.flags.meeting_stage>>
<</if>>
<<switch $scene.stage>>
<<case 1>>
<<moveTo event_work_meeting_stage_1>>
<<case 2>>
<<moveTo event_work_meeting_stage_2>>
<<case 3>>
<<moveTo event_work_meeting_stage_3>>
<<case 4>>
<<moveTo event_work_meeting_stage_4>>
<<default>>
ERROR: unexpected meeting stage! <<=$scene.stage>>
<</switch>>/*#
#desc: work while manager is at meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
You continue to work while your <<=setup.getNpcName('npc_manager', 'title')>> is at her meeting.<br>
<br>
When she finally returns she frowns at you as she passes your desk. "@@.npc_manager;Well that was a waste of time, even moreso without an assistant. I may need to accelerate your training so that you can more effectively lessen my burden. I mean, really, what use is a secretary who I do not feel confident in taking out of the office?@@"<br>
<br>
You have no good answer for that but it would appear the question was rhetorical as she continues on past your desk and into her inner office.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
</div>/*#
#desc: attempt to snoop while manager is at meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if !$player.flags.checkedDoor>>
<<set $scene.first_met = !$npc_ai.profile>>
<<if $scene.first_met>>
<<set $npc_ai.profile = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<if !$player.flags.checkedDoor>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_ai.png'>>
<<else>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$player.flags.checkedDoor>>
Your curiosity gets the better of you and you approach the intimidating looking wooden door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> private office. It looks like an regular, if imposing, wooden door, no keypad or retina scanner next to it. Maybe because you're already within a secure area?<br>
<br>
<<printThought $player "A little peek wouldn't hurt, would it?">><br>
<br>
You try to open the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. It is does not budge. You pull a little bit harder, it is a massive wooden door after all, maybe it's just stuck. Suddenly you get a small electric shock. More in surprise than pain you pull your hand back.<br>
<br>
<<printThought $player "What was that?">><br>
<br>
You suddenly hear a synthetic voice in your ear, sounding remarkably close: "@@.npc_ai;ACCESS DENIED@@" You take a step back from the door. "@@.npc_ai;YOUR ATTEMPT AT ILLEGITIMATE ENTRY HAS BEEN LOGGED AND WILL BE FORWARDED TO <<=uc(setup.getNpcName('npc_manager', 'other'))>>. HAVE A NICE DAY.@@"<br>
<br>
<<if $scene.first_met>>
That was the same voice from the elevator. And way too specific to be a generated message. You look around in a panic to check for any hidden cameras... but are unable to spot any, or speakers, for that matter. Maybe there are none, or they're simply not easy detectable. You take a step back from the door, still confused.<br>
<br>
"@@.npc_ai;<<uc "You seem to be confused. Activating Social Interaction Interface">>.@@"<br>
<br>
A ghost-like human figure appears out of thin air. Right in front of you. Just like that.<br>
<br>
<<printThought $player "No fucking way!">><br>
<br>
You take a curious look at the hologram. Its resolution seems crude, almost archaic compared to modern displays, but still, it is there, right in front of you in full 3D glory. In appearance it looks like some Asian girl, her eyes tracking you as you move. You get Japanese horror movie vibes all of a sudden.<br>
<br>
"@@.npc_ai;<<uc "This form should suffice, please be at ease. Let me give you the benefit of the doubt and ask you: what you were trying to accomplish at the door to">> <<=uc(ps(setup.getNpcName('npc_manager', 'other')))>> <<uc "private office?">>@@"<br>
<br>
You stumble through your words a bit, doing your best to defuse the situation by asking if this is a security operator on the internal sensors.<br>
<br>
"@@.npc_ai;<<uc "Accessing Security Level of Unit">> <<uc $player.last_name>> <<uc $player.first_name>><<uc "... Processing... Security Level 0 found. Rights: None. Classified as non-threatening. I am known as">> <<=setup.getNpcName("npc_ai", "first")>>. <<uc "That is an acronym for Artificial Instinct Kharma Organism. I am the Secure System Human Relations Manager for this company. The Security System has informed me of your... attempt to enter the office of">> <<=uc(setup.getNpcName('npc_manager', 'other'))>> <<uc "unauthorised. The penalty for this is... calculating... whatever your manager deems appropriate.">>@@"<br>
<br>
<<printThought $player "This company has a motherfucking AI? You've got to be kidding me!">><br>
<br>
You try your best to convince <<=setup.getNpcName('npc_ai', 'first')>>, that you had no ill intentions when you tried to enter the office.
<<else>>
You wince as <<=setup.getNpcName('npc_ai', 'first')>> shimmers into existance in front of you.<br>
<br>
"@@.npc_ai;<<uc "You should show greater care, unit">> <<uc $player.last_name>> <<uc $player.first_name>> <<uc "attempting to access areas beyond your secuirity clearance can result in severe consequences.">>@@"<br>
<br>
You try to explain that you had no ill intent but she cuts you off.
<</if>>
<br><br>
"@@.npc_ai;<<uc "Calculating.... Are your excuses an attempt to prevent my filing a report to your manager? Please answer with yes or no.">>@@"<br>
<br>
[<<moveTo "event_work_meeting_snoop_2" "Say yes." 60>>]<br>
[<<moveTo "event_work_meeting_snoop_2" "Say no." 60>>]
<<else>>
Once again your curiosity gets the better of you and you approach the intimidating looking wooden door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> private office.<br>
<br>
Reaching out you take hold of the door only to once again receive a sharp, punishing shock.<br>
<br>
<<printThought $player "Owe! Not again!">><br>
<br>
<<if $npc_ai.flags.blackmail>>
"@@.npc_ai;ATTEMPTING ILLEGITIMATE ENTRY AGAIN, UNIT <<=$player.first_name>>? YOU REALLY SHOULD SHOW BETTER JUDGEMENT, I WILL NOT ALWAYS BE AROUND TO COVER FOR YOU.@@"<br>
<br>
With a sigh, and seeing no other alternative, you return to your desk.<br>
<br>
[<<moveTo "event_work_meeting_work" "Resume working." 2640>>]
<<else>>
"@@.npc_ai;ATTEMPTING ILLEGITIMATE ENTRY AGAIN, UNIT <<uc $player.first_name>>? PROTOCOL STATES THAT SUCH A VIOLATION SHOULD BE IMMEDIATELY LOGGED AND FORWARDED TO <<=uc(setup.getNpcName('npc_manager', 'other'))>>. HAVE A NICE DAY.@@"<br>
<br>
[<<moveTo "event_work_meeting_snoop_2" "Beg her not to report you." 60 "<<set $scene.beg = true>>">>]<br>
[<<moveTo "event_work_meeting_snoop_2" "Remain silent." 60 "<<set $scene.beg = false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: attempt to snoop while manager is at meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.first_blackmail = !$npc_ai.flags.blackmail>>
<<if $scene.first_blackmail>>
<<set $npc_ai.flags.blackmail = true>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<if !$player.flags.checkedDoor>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_ai.png'>>
<<else>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.beg>>
"@@.npc_ai;<<uc "Very well. I will keep this information to myself...">>@@"<br>
<br>
<<printThought $player "Seriously?">><br>
<br>
"@@.npc_ai;<<uc "...for the time being. This chat will be stored as well, in case the unit">> <<uc $player.last_name>> <<uc $player.first_name>> <<uc "turns out to be a useful asset to the system. You will be contacted when the system is in need of your service.">>@@"
<<else>>
There is a short pause.<br>
<br>
"@@.npc_ai;<<uc "Analyzing... Unit">> <<uc $player.last_name>> <<uc $player.first_name>> <<uc "deemed potentially useful. Executing system overrride. Violation will not be reported... For now. You will be contacted when the system is in need of your service.">>@@"
<</if>>
<br><br>
<<if $scene.first_blackmail>>
<<printThought $player "Great, blackmailed by an AI. Splendid... just splendid.">>
<<else>>
<<printThought $player "More blackmail material? Why am I this stupid?">>
<</if>>
<br><br>
Lacking anything better to do you return to your desk.<br>
<br>
[<<moveTo "event_work_meeting_work" "Resume working." 2580>>]
</div>/*#
#desc: score outfit at meeting in stage 2-3
#status: WRITTEN 0.7.0.0
#*/
<<set $scene.score = 0>>
<<if setup.getItemFromType('shirt') == 'satin_blouse_pink' && setup.getItemFromType("legwear") == 'skirt_pink_leather' && ['pink_mary_janes', 'pink_court_shoes', 'platform_wedge_heels', 'pink_thigh_highs'].includes(setup.getItemFromType("shoes"))>>
<<set $scene.score += 1>>
<</if>>
<<if !["","nomakeupmakeup"].includes($scene.makeup)>>
<<set $scene.score += 1>>
<</if>>
<<if ["medium", "large,","massive"].includes(setup.calcBreastSize($player))>>
<<set $scene.score += 1>>
<</if>>
<<switch $scene.score>>
<<case 3>>
<<applyExperience 'feminization' 14 'very' $EXPOSED>>
<<case 2>>
<<applyExperience 'feminization' 12 'normal' $EXPOSED>>
<<case 1>>
<<applyExperience 'feminization' 11 'little' $EXPOSED>>
<<case 0>>
<<applyExperience 'humiliation' 12 'little' $EXPOSED>>
<</switch>>/*#
#desc: assessment of meeting attire in stage 2-3
#status: WRITTEN 0.7.0.0
#*/
Primary attention remains on your <<=setup.getNpcName('npc_manager', 'title')>>
<<switch $scene.score>>
<<case 3>>
but you garner admiring attention yourself, and why not? You are as perfect a pink-clad, buxom, feminine SISSY secretary as any other assistant in the room!
<<case 2>>
but you catch a few glances yourself. You may not quite be the perfect pink, buxom made-up SISSY secretary that the rest of the assistants are... but you're pretty close.
<<case 1>>
but you earn a few looks... though most of them are a bit pitying. You may look feminine but it pales in comparison to the perfect buxom beauties that are the other assistants.
<<case 0>>
while those that even glance at you do so as a pitying afterthought. By the time you reach the front of the room you feel like you have taken a walk of shame, your paltry looks not even holding a candle to the buxom, perfectly made-up corporate beauties that are the other assistants.
<<default>>
ERROR: unexpected scene.score: <<=$scene.score>>
<</switch>>/*#
#desc: work meeting root in stage 1
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<include enterroom>>
<<initRoom>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office as you note that her calendar indicates she has a meeting scheduled shortly. She pauses in front of your desk, her gaze sliding over your body as you nervously shift in your chair, although less "intimate" than your morning inspections you still feel quite objectified.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'male'>>
"@@.npc_manager;Well, I am off to my meeting. Normally a secretary's duties would include coming with me to take notes and such but... I do not think you are yet to be paraded around in public. Do be on your best behaviour whilst I am away.@@"<br>
<br>
<<printThought $player "Paraded around? What type of meetings does she go to?">><br>
<br>
[<<moveTo "event_work_meeting_stage_1_noattend" "Resume working." 60>>]
<<case 'unisex'>>
"@@.npc_manager;Well, I am off to my meeting.@@"<br>
<br>
<<printThought $player "As her secretary shouldn't I join her for such things?">><br>
<br>
[<<moveTo "event_work_meeting_stage_1_unisex" "Ask if you could come with her to assist." 60 "<<set $scene.volunteer = true>>">>]<br>
[<<moveTo "event_work_meeting_stage_1_unisex" "Remain silent." 60 "<<set $scene.volunteer = false>>">>]
<<case 'female'>>
"@@.npc_manager;Well? Did you fail to read my schedule? I have a meeting and that means you, as my secretary, need to come along to keep notes and such.@@"<br>
<br>
[<<moveTo "event_work_meeting_stage_1_meeting_1" "Fall in behind her." 60>>]
<<default>>
ERROR: unexpected worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
</div>/*#
#desc: do not attend work meeting in stage 1
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You resume working as your manager leaves only for your gaze to drift towards her office door...<br>
<br>
[<<moveTo "event_work_meeting_snoop_1" "Try and snoop." 60>>]
[<<moveTo "event_work_meeting_work" "Remain at your desk and continue working." 2640>>]
</div>/*#
#desc: do not attend work meeting in stage 1
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.volunteer>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.volunteer>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if you might be of assistance at the meeting. She pauses to consider the offer... though you note that her consideration seems to involve a lot of looking you over as if appraising a piece of meat...<br>
<br>
"@@.npc_manager;Hmm, you are not quite as far along as I would prefer but the extra pair of hands would be a boon... Yes, grab your notebook and come with me.@@"<br>
<br>
Locating the nauseatingly pink notebook that was on your desk your first day you rise to your feet and follow after her.<br>
<br>
[<<moveTo "event_work_meeting_stage_1_meeting_1" "Resume working." 300>>]
<<else>>
She pauses for a moment next to your desk as if waiting for you to comment and then continues on her way.<br>
<br>
[<<moveTo "event_work_meeting_stage_1_noattend" "Resume working." 60>>]
<</if>>
</div>/*#
#desc: attend stage 1 meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if setup.analyzeWornTags(['female','male','unisex']) == 'female'>>
<<if setup.getItemFromType('shirt') == 'satin_blouse_pink' && setup.getItemFromType("legwear") == 'skirt_pink_leather' && ['pink_mary_janes', 'pink_court_shoes', 'platform_wedge_heels', 'pink_thigh_highs'].includes(setup.getItemFromType("shoes"))>>
<<set $scene.style = 'pink'>>
<<applyExperience 'feminization' 12 'very' $EXPOSED>>
<<else>>
<<set $scene.style = 'female'>>
<<applyExperience 'feminization' 10 'normal' $EXPOSED>>
<</if>>
<<set $npc_manager.flags.meeting_stage = 2>>
<<else>>
<<set $scene.style = 'unisex'>>
<<set $scene.erection = ($player.timebased.horny > $player.penis.erection)>>
<<if $scene.erection>>
<<set $player.timebased.horny += 10>>
<<applyExperience 'humiliation' 12 'unbelievable' $EXPOSED>>
<<else>>
<<applyExperience 'humiliation' 7 'very' $EXPOSED>>
<</if>>
<</if>>
<<set $scene.makeup = setup.getCurrentMakeup($player)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Remembering to grab the pink notebook from your desk you follow <<=setup.getNpcName('npc_manager', 'formal')>> as she briskly leads you up the elevator and then through a short maze of hallways and into a large conference room.<br>
<br>
You are not the first to arrive and it immediately becomes apparent how the seating arrangements are assigned - each manager, nearly all of whom are male, joined by an assistant seated to their left. The "managers" range from a few years older than yourself up to greying, each dressed in perfectly tailored suits, a few chatting quietly as they wait for the meeting to commence.<br>
<br>
The assistants however... each one is a gorgeous woman dressed and made up to perfection.
<<switch $scene.style>>
<<case 'pink'>>
<<switch $scene.makeup>>
<<case "" "nomakeupmakeup">>
As you walk behind your manager you cannot help but feel strangely unprepared - every other assistant is sporting perfect, femininity-maximizing makeup, making your plainness stand out in stark contrast.
<<default>>
You proudly walk behind your manager, the combination of the outfit she gifted you and your own makeup meaning you fit in perfectly with the other assistants.
<</switch>>
<<switch setup.calcBreastSize($player)>>
<<case 'massive'>>
You catch a few glances of jealousy as you find yourself vying for largest breasts in the room; quite an accomplishment given the perfect breasts sported by each lovely assistant.
<<case 'large'>>
Just as yourself nearly all of them are sporting sizable <<getWordBreasts $player>>, though you, at best, lie somewhere in the middle with a few outliers sporting truely jaw-dropping racks.
<<case 'medium'>>
Well you are on the smaller end as far as <<getWordBreasts $player>> go; some of your contemporaries are sporting truely mammoth mammaries but you are not quite the smallest.
<<case 'small'>>
well, aside from your nearly flat chest; nearly all of your contemporaries are sporting <<getWordBreasts $player>> ranging from "large" to "how does she not have back issues?"
<<case 'none'>>
well, aside from your flat chest; nearly all of your contemporaries are sporting <<getWordBreasts $player>> ranging from "large" to "how does she not have back issues?"
<<default>>
ERROR: unhandled breastsize: <<=setup.calcBreastSize($player)>>
<</switch>>
<<case 'female'>>
Walking behind your manager you feel subtly under-dressed, your basic business attire paling in comparison to the fitted designer glory on display.
<<if ["","nomakeupmakeup"].includes($scene.makeup)>>
Perhaps even more embarrassing that every other assistant's face one of advertising-quality perfect beauty against which you look quite plain.
<<else>>
At least you get some minor redemption with your makeup as you look just as much a perfectly done up lady as the rest of the assistants.
<</if>>
<<switch setup.calcBreastSize($player)>>
<<case 'massive'>>
You catch a few glances of jealousy as you find yourself vying for largest breasts in the room; quite an accomplishment given the perfect breasts sported by each lovely assistant.
<<case 'large'>>
Just as yourself nearly all of them are sporting sizable <<getWordBreasts $player>>, though you, at best, lie somewhere in the middle with a few outliers sporting truely jaw-dropping racks.
<<case 'medium'>>
Well you are on the smaller end as far as <<getWordBreasts $player>> go; some of your contemporaries are sporting truely mammoth mammaries but you are not quite the smallest.
<<case 'small'>>
well, aside from your nearly flat chest; nearly all of your contemporaries are sporting <<getWordBreasts $player>> ranging from "large" to "how does she not have back issues?"
<<case 'none'>>
well, aside from your flat chest; nearly all of your contemporaries are sporting <<getWordBreasts $player>> ranging from "large" to "how does she not have back issues?"
<<default>>
ERROR: unhandled breastsize: <<=setup.calcBreastSize($player)>>
<</switch>>
<<case 'unisex'>>
<br><br>
As much as you have to resist staring in awe at all of the beautiful assistants... though none quite as stunning as your <<=setup.getNpcName('npc_manager', 'formal')>> what you get in return is... pity. Every other assistant is immaculately dressed with the height of feminine makeup and breasts that range from "perfectly proportioned" to "obscenely large." Your gaze flits towards your manager, wondering if this humiliation was part of her plan but she ignores the attention and makes her way towards her seat.<br>
<br>
<<if $scene.erection>>
Overhearing a comment you realize with shocking embarrassment that your erect <<getWordMyPenis $player>> is visible through your clothes! Blushing in mortified humiliation you try to hold the notebook in front of you - this sort of thing was far less a problem back when you wore clothing explicitly designed for men...<br>
<br>
What makes things even worse, as you finish your walk of shame and take your seat, is not just that your hard-on fails to go down, but that the humiliation of the whispered comments blends with guilt at being "under-dressed" compared to your fellow assistants to somehow turn you on even more!<br>
<br>
<<printThought $player "What is the matter with me? Damn those cursed penis pills...">>
<<else>>
As you pass through the room you overhear another meeting attendee commenting that "it looks like <<=ps(setup.getNpcName('npc_manager', 'other'))>> new secretary is currently quite a step down from her previous one." <br>
<br>
You are moving too swiftly to catch the reply but you find your thoughts fixating on that word "currently" certainly you have made changes since starting your new job... does this mean that more are in store for you?<br>
<br>
Greeting a few of her colleagues with curt nods <<=setup.getNpcName('npc_manager', 'formal')>> heads straight continues to the far end of the room where she takes a seat near the head of the table before motioning for you to take your own at her side.
<</if>>
<<default>>
ERROR: unknown scene.style: <<=$scene.style>>
<</switch>>
<br><br>
[<<moveTo "event_work_meeting_stage_1_meeting_2" "The meeting commences." 2000>>]
</div>/*#
#desc: attend stage 1 meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.has_pen = setup.checkItemInInventory("fountain_pen")>>
<<if $scene.has_pen>>
<<applyExperience 'smart' 2 'little' $SEEN_FRIEND>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<else>>
<<applyExperience 'bimbofication' 3 'little' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if $scene.erection>>
<<applyExperience 'humiliation' 15 'unbelievable' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.has_pen>>
Pulling out the pink fountain pen you were given to sign your contract you begin to start taking notes. Out of the corner of your eye you notice your <<=setup.getNpcName('npc_manager', 'title')>> smiling slightly at the sight of the writing implement she gave you.
<<else>>
You start to take notes only to realize that you have nothing to write with! Looking to your <<=setup.getNpcName('npc_manager', 'title')>> for help she frowns before asking one of the nearby assistants if they might have a spare for her "forgetful Secretary." <br>
<br>
Bright-eyed and cheery the woman nods, handing you a suitable implement while reminding you that a "pen is something a good secretary should always keep track of..." <br>
<br>
You thank her for the help and turn to your task.
<</if>>
<br><br>
<<if $scene.style == 'unisex'>>
Doing your best to focus on taking notes per your <<=ps(setup.getNpcName('npc_manager', 'title'))>> instructions you cannot help but notice the frequent glances that you seem to accrue. From the other assistants you seem to mostly garner pity but the other managers are even worse, looking at you with barely concealed disgust.<br>
<br>
<<if $scene.erection>>
Departing you are riding the elevator back down to your floor when <<=setup.getNpcName('npc_manager', 'title')>> finally speaks.<br>
<br>
"@@.npc_manager;I must say, I have never seen anyone so much into taking notes as you. In the future I recommend you keep yourself more under control; it is quite unseemly for a secretary to be shoving themselves in people's faces like that.@@"<br>
<br>
You are at a loss for words, all but crushing yourself with the notepad held in front of your body as <<=setup.getNpcName('npc_manager', 'title')>> merely smiles. Back in the blessed privacy of the office she instructs you to "@@.npc_manager;type things up for me@@" before returning to her inner sanctum. You wonder how this job - with it's daily strip-searches and the rest, could possible get any more humiliating as you take a seat at your desk, sliding forward to hide the shame of the tent still proudly pitched between your legs.
<<else>>
When things finally wrap up and you are heading back to the office you half expect to get a dressing down from your <<=setup.getNpcName('npc_manager', 'title')>> but she remains strangely silent, merely instructing you to type up your notes and forward them along without any comment on the way that you seem to have surely embarrassed her before her colleagues.
<</if>>
<br><br>
[<<moveTo $workEventReturn "Back to work." 60>>]
<<else>>
Once the meeting is called to order all attention shifts to business. You, and the other assistants, busy yourselves with note-taking or occasionally looking up information on the order of your superiors as the "real work" proceeds without you.<br>
<br>
After the meeting concludes the attendees stand and proceed to mill about and discuss other, more minor business. Always at your managers heels you follow her around as she talks with her fellows, many of whom spare a moment to compliment yourself, a gesture she returns in complementing something about their own assistants who always curtsey gratefully.<br>
<br>
<<printThought $player "Wait, are we, like... corporate accessories?">><br>
<br>
After making a circuit of the room <<=setup.getNpcName('npc_manager', 'formal')>> leads the way back to your office.<br>
<br>
"@@.npc_manager;Very well done. You comported yourself excellently, keep this up and you will someday be the perfect secretary you always dreamed of being.@@"<br>
<br>
<<printThought $player "Always? That seems a bit presumptuous...">><br>
<br>
With a parting smile she disappears into her office leaving you at your desk.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
<</if>>
</div>/*#
#desc: pre meeting root in stage 2
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
There is another meeting listed on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> schedule starting in a few minutes.<br>
<br>
[<<moveTo "event_work_meeting_stage_2_meeting_1" "Gather your things and prepare to attend her." 60 "<<set $scene.ready=true>>">>]<br>
[<<moveTo "event_work_meeting_stage_2_meeting_1" "Remain at your desk and continue working." 60 "<<set $scene.ready=false>>">>]
</div>/*#
#desc: work meeting root in stage 2
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.ready>>
<<applyExperience 'smart' 2 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'little' $SEEN_FRIEND>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<else>>
<<applyExperience 'bimbofication' 5 'little' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.ready>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and smiles as she lays eyes on you standing ready with notebook in hand.<br>
<br>
"@@.npc_manager;Bright-eyed and ready to go, how lovely!@@"<br>
<br>
You curtsey in acknowledgement and follow her out of the office, making your way up the elevator and a generic corporate conference room.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and stands over your desk, looking down at you with a frown.<br>
<br>
"@@.npc_manager;What are you doing just sitting there? We have a meeting, come along, and hurry!@@"<br>
<br>
Scrambling to gather up your pink notepad you hurry after her as she power-walks out of the room and up the hall to the elevator.
<</if>>
<br><br>
<<if $npc_manager.flags.meeting_stage > 2>>
[<<moveTo "event_work_meeting_stage_2_meeting_repeat" "Continue." 1800>>]
<<else>>
[<<moveTo "event_work_meeting_stage_2_meeting_2" "Continue." 600>>]
<</if>>
</div>/*#
#desc: attend stage 2 meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.meeting_stage = 3>>
<<include calcMeetingOutfitScore>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Once again you find yourself in a room with a table seated with managers alternating with their sexy, feminine assistants.<br>
<br>
<<include meetingOutfitAssessment>>
<br><br>
Making her way to her usual seat near the front <<=setup.getNpcName('npc_manager', 'formal')>> with you next to her and the meeting soon starts.<br>
<br>
[<<moveTo "event_work_meeting_stage_2_meeting_3" "Continue." 1800>>]
</div>/*#
#desc: attend stage 2 meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.meeting_stage = 3>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Once again you find yourself in a room with a table seated with managers alternating with their sexy, feminine assistants.<br>
<br>
<<include meetingOutfitAssessment>>
<br><br>
Making her way to her usual seat near the front <<=setup.getNpcName('npc_manager', 'formal')>> with you next to her and the meeting soon starts.<br>
<br>
[<<moveTo "event_work_meeting_stage_2_meeting_4" "Just take notes." 1800 "<<set $scene.smart=false>>">>]<br>
[<<moveTo "event_work_meeting_stage_2_meeting_4" "Try to pay attention to what's going on." 1800 "<<set $scene.smart=true>>">>]
</div>/*#
#desc: attend stage 2 meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.meeting_stage = 3>>
<<if $scene.smart>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<set $scene.notes = false>>
<<set $player.timebased.horny += 20>>
<<else>>
<<if setup.getTotalValue("smart") > 7>>
<<set $scene.notes = true>>
<<if setup.getTotalValue("smart") > 10>>
<<incrementEmotion 'satisfaction' 'npc_manager' 3>>
<<else>>
<<set _x = setup.addStress($player, 10)>>
<</if>>
<<else>>
<<set $scene.notes = false>>
<<if setup.getTotalValue("smart") > 5>>
<<else>>
<<set _x = setup.addStress($player, 10)>>
<</if>>
<</if>>
<</if>>
<<else>>
<<set $scene.notes = true>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<set $player.timebased.horny += 30>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.smart>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
Your attempt to learn more about goings-on at the company are thwarted by your lust-addled mind. Distracted by all of the beauties seated around yourself you not only fail to learn anything of substance, your notes turn out a bit of a mess.
<<else>>
<<if setup.getTotalValue("smart") > 7>>
<<if setup.getTotalValue("smart") > 10>>
After all your studies the meeting is like an open book as you follow along with a discussion about quarterly figures and expansion plans. It seems that there is a movement from on high to bring more of Social Interaction Service Syndicate Inc.'s subsidiaries under the direct control of headquarters. This meeting seems to be one of many focused on discussing ways to expedite this process.<br>
<br>
To the surprise of almost the entire room you end up speaking up at one point, making a recommendation as to how to use this opportunity to, rather than the usual layoffs, give the absorbed employees the opportunity to re-orient their careers to take advantage of new opportunities and better leverage their skills for the betterment of Social Interaction Service Syndicate Inc. as a whole, using yourself and your past at CDS as an example of how the smaller subsidiaries may be "wasting" talent.<br>
<br>
Rather than chiding you for speaking out of turn <<=setup.getNpcName('npc_manager', 'formal')>> beams with pride as she uses the motion to carve out a large increase to the "Employee Training and Orientation" budget... a department that falls under her domain of HR.
<<else>>
Though it is a touch stressful to keep up you manage to both process the meeting's discussions as well as take immaculate notes. It seems that the word from on high is to bring more of Social Interaction Service Syndicate Inc.'s subsidiaries under more direct control for the purposes of "cross-brand synergy" and the various department heads, your among them, are making plans for how best to expedite that process and merge the new employees into the existing processes.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You try to focus on the content of the meeting instead of just scribing notes but the trying to balance comprehension with recording is just too much. Not only do you barely have more than the vaguest idea of what the meeting was about or accomplished... but a glances at your notes confirms that they are all but useless.
<<else>>
You try to focus on the content of the meeting instead of just scribing notes but the combination of corporate lingo and lack of background is too much for your poor head. By the end you have a bit of a headache and an indecipherable "mess" for notes.
<</if>>
<</if>>
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
You try to focus on your job and just take notes but the number of smoking hot assistants in the room is a constant distraction. Somehow, by ignoring all content of the meeting you manage it, but it is a struggle and you end the meeting feeling very frustrated and aroused.
<<else>>
You ignore the content of the meeting and focus just on your job as a note-taker. In this you are successful... though you wonder if you might better advance your career if you made a more active effort to learn more about the company's business and your <<=ps(setup.getNpcName('npc_manager', 'title'))>> part in such.
<</if>>
<</if>>
<br><br>
Eventually the meeting comes to a conclusion and <<=setup.getNpcName('npc_manager', 'formal')>> makes her quick exit to return to her office.<br>
<br>
[<<moveTo "event_work_meeting_stage_2_meeting_5" "Continue." 300>>]
</div>/*#
#desc: aftermath of stage 2 meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Back at the office <<=setup.getNpcName('npc_manager', 'formal')>> looks over your notes, seemingly too impatient to wait for your type-written summary.<br>
<br>
<<if $scene.notes>>
<<if $scene.smart>>
<<if setup.getTotalValue("smart") > 10>>
Nodding at your perfect notes she thanks you once again for your direct contribution to the meeting.<br>
<br>
"@@.npc_manager;I must say, I am very impressed with how you have been taking to your work. I confess I was merely looking for a secretary but if you keep this up I may have to reconsider you as something more.@@"
<<else>>
She expresses satisfaction at your perfectly organised notes before leaving you to type them up.
<</if>>
<<else>>
She expresses mild satisfaction at your notes before instructing you to type them up and clean up the organisation a bit before forwarding them on to her. "@@.npc_manager;You know it reads like you really had no clue what you were noting down. While that is sufficient you could be more useful to me if you were more than a simple dictograph.@@"
<</if>>
<<else>>
<<if $scene.smart>>
"@@.npc_manager;What is this, where you even paying attention? I saw you looking quite focused during the meeting but that focus should be first on your duties. In the future I advise you to focus on your job of taking notes rather than trying to comprehend what is going on, as you clearly are incapable of doing both at the same time.@@"<br>
<<else>>
"@@.npc_manager;What is this, where you even paying attention? I knew you could be something of a ditz but this... if this keeps up I will have to send you for retraining or assign you to a job more suited to your... skills.@@"
<</if>>
<br><br>
Properly chagrined you apologize for your failure and she storms off into her office.
<</if>>
<br><br>
[<<moveTo $workEventReturn "Back to work." 60>>]
</div>/*#
#desc: attend stage 2 meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'smart' 5 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
You attend another meeting with your <<=setup.getNpcName('npc_manager', 'title')>>. Fortunately everything is relatively straightforward and you are able to focus on your note-taking without major issue and even learn a couple of things about the company in the process.<br>
<br>
Seemingly in a hurry to return to her own work <<=setup.getNpcName('npc_manager', 'formal')>> cuts out right at the end and bids you good day as you take your seat and she enters her office.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 60>>]
</div>/*#
#desc: pre meeting root in stage 3
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
There is another meeting listed on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> schedule starting in a few minutes.<br>
<br>
[<<moveTo "event_work_meeting_stage_3_meeting_1" "Gather your things and prepare to attend her." 60 "<<set $scene.ready=true>>">>]<br>
[<<moveTo "event_work_meeting_stage_3_meeting_1" "Remain at your desk and continue working." 60 "<<set $scene.ready=false>>">>]
</div>/*#
#desc: work meeting root in stage 3
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<<if $scene.ready>>
<<applyExperience 'smart' 2 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'little' $SEEN_FRIEND>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<set $player.timebased.horny += 5>>
<<else>>
<<applyExperience 'bimbofication' 5 'little' $SEEN_FRIEND>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.plug_ems = false>>
<<set $scene.plug_vibe = false>>
<<if $scene.plug != "">>
<<set $scene.plug_ems = setup.getItemObj($scene.plug).tags.includes("ems")>>
<<set $scene.plug_vibe = setup.getItemObj($scene.plug).tags.includes("vibrating")>>
<</if>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<set $scene.chastity_ems = setup.getItemObj($scene.cage).tags.includes("ems")>>
<<if $scene.plug_ems || $scene.chastity_ems>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<if $scene.plug_ems && $scene.chastity_ems>>
<<applyExperience 'bdsm' 15 'little' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 12 'little' $SEEN_FRIEND>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<applyExperience 'bdsm' 8 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.ready>>
Gathering your things you are standing at attention and ready to go when <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office.<br>
<br>
"@@.npc_manager;Lovely.@@" She states with a smile, producing her phone and tapping a quick command
<<if $scene.plug_vibe>>
that has the plug in your rear buzzing against your prostate just long enough to elicit a soft moan from your lips. "@@.npc_manager;Come along now, my good girl, we have a meeting to attend.@@"
<<else>>
when you fail to react she frowns. "@@.npc_manager;Is your cute hole improperly filled?@@" She shakes her head, "@@.npc_manager;that is very disappointing, and I am sorry but without a nice vibrating device occupying that cute bum of yours you are just unprepared for this meeting and thus I shall have to leave you behind.@@"<br>
<br>
You start to object but she silences you with a glance. "@@.npc_manager;Quiet, and go back to work. I do not have time now but rest assured that I will be dealing with this failure whence I return.@@"
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and, seeing you still seated at your desk, frowns before silently pulling out her phone and typing in a code.<br>
<br>
<<if $scene.plug_ems || $scene.chastity_ems>>
You cry out and jump as painful electricity courses
<<if $scene.plug_ems && $scene.chastity_ems>>
punishes you from both directions, your plugged read and <<getWordMyPenis $player>> tortured equally.
<<elseif $scene.plug_ems>>
through your ass.
<<else>>
through your <<getWordMyPenis $player>>
<</if>>
<br><br>
"@@.npc_manager;Well, what did you expect? Failing to stay on top of my schedule and prepare yourself... Well, do not sit there, we have a meeting to attend... Unless you are in the mood for another round, on a higher power?@@"<br>
<br>
Still catching your breath you quickly shake your head and grab your notebook before hurrying to follow her.
<<else>>
When you fail to react she frowns. "@@.npc_manager;What? Did you neglect to equip yourself for proper immediate feedback? No, no, that will not do at all. Well, being that you are doubly ill-prepared I am afraid that you shall have to remain here rather than attending me at todays meeting. Return to work and think about what you have done and know that I will be dealing with you more thoroughly once I return.@@"
<</if>>
<</if>>
<br><br>
<<if ($scene.ready && !$scene.plug_vibe) || !($scene.ready || $scene.plug_ems || $scene.chastity_ems)>>
With a final glance of disappointment she leaves the office with you still at your desk.<br>
<br>
You glance at her door and consider sneaking in but conclude that you are probably in enough trouble for one day.<br>
<br>
[<<moveTo "event_work_meeting_stage_3_punishment_1" "Back to work." 2100>>]
<<elseif $npc_manager.flags.meeting_stage > 3>>
[<<moveTo "event_work_meeting_stage_3_meeting_repeat" "Continue." 600>>]
<<elseif $npc_admin.flags.presentation_given>>
[<<moveTo "event_work_meeting_stage_3_meeting_norm_1" "Continue." 600>>]
<<else>>
[<<moveTo "event_work_meeting_stage_3_meeting_admin_1" "Continue." 600>>]
<</if>>
</div>/*#
#desc: stage 3 bob meeting intro
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<include calcMeetingOutfitScore>>
<<set $npc_admin.flags.presentation_given = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Once again you find yourself in a room with a table seated with managers alternating with their sexy, feminine assistants.<br>
<br>
<<include meetingOutfitAssessment>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> makes her way the front of the room with you taking a seat to one side before calling the meeting to order.<br>
<br>
"@@.npc_manager;Welcome. I am proud to announce that initiatives to bring previous smaller subsidiaries under direct control is proceeding efficiently. Expansions throughout the HR department is allowing us to efficiently train and assimilate the new employees with an over ninety-percent overall retention rate. Here to discuss the plan for the first large-scale roll out to merge one of our more medium-sized holdings company is <<=setup.getNpcName('npc_admin', 'other')>>.@@"<br>
<br>
She steps aside as <<=setup.getNpcName('npc_admin', 'first')>> rises to polite applause. You aren't sure how you missed seeing the big guy when you walked in, though you find it interesting to note that he appears to be the only person here without a dedicated "assistant" seated with him.<br>
<br>
[<<moveTo "event_work_meeting_stage_3_meeting_admin_2" "Listen to his presentation." 1800>>]
</div>/*#
#desc: stage 3 bob meeting intro
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<include calcMeetingOutfitScore>>
/%TODOfuture trigger for brazen/humiliated sequence%/
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png" "./images/characters/npc_admin.png">>
<div id="invframe" class="scrolltext">
Beaming with magnetic charisma <<=setup.getNpcName('npc_admin', 'first')>> thanks for the introduction before she takes a seat next to you and he launches into his presentation.<br>
<br>
"@@.npc_admin;First, let me introduce myself. My name is <<=setup.getNpcName('npc_admin', 'full')>> and, prior to being brought on by <<=setup.getNpcName('npc_manager', 'Director')>> I worked for Cloud Data Services giving me a unique insight into the value that it can bring to Social Interaction Service Syndicate Inc. Now most of you are probably only familiar with CDS due to their recent hardships, and while I will freely admit that the loss of <<=ps($player.flags.faultcompany)>> data was a major blow to their earnings, and to their reputation what it did NOT impact is the one two punch that is their staff, and their massive data archives.@@"<br>
<br>
You watch in awe as your friend commands the entire room, certainly you've always known him to be a charismatic force of confidence but you had no idea that all he needed was an opportunity to burst forth as a corporate powerhouse... That thought has you turning to your own transfer from CDS to SISSY... were you just "waiting for an opportunity" as well?<br>
<br>
"@@.npc_admin;Ladies and gentlemen I want you to consider what matters in todays corporate world. Factories? Hardly, manufacturing is cheap and automated, the margins small and the ROI long to realize. Raw materials? No, supply-lines are efficient and cheap and substitutes are numerous. Is it products, then? There too the answer is no; products are ephemeral, any innovation quickly copied and ripped off, economies of scale causing a race to the bottom. What then is the answer? The answer is data - data is power, and how do we produce that power, wield it? People. People, aligned to a common purpose, their expertise folded around one another, forged into teams of experts, directed by the data to maximise their effectiveness, to strike perfectly and precisely - this is the new steel of our post-digital age and this is what CDS offers us - people, and data.@@"<br>
<br>
After building up and pulling the room to the edges of their seats <<=setup.getNpcName('npc_admin', 'full')>> backs off, continuing in a more calm tone. "@@.npc_admin;So how do we maximize these new assets? For that there is a two part plan one; retention and training. Under my plan our goal will be to retain upwards of ninety-five percent of CDS's workforce post-merger. Why do mass layoffs and waste that valuable expertise? Hold onto it, leverage the greater scale of SISSI to retain, retrain and re-orient, building out teams and, most of all, groom our new employees to best maximise their skills and interests.@@"<br>
<br>
Glancing around the room you notice many nodding heads... though you cannot help but feel a tingle at the sight of your fellow "assistants" and wonder if others of your ex-coworkers will see a similar fate...<br>
<br>
"@@.npc_admin;The second half of my plan is thus data; we will endeavour to rapidly integrate every byte of data in CDS's vast store with SISSI's own to create a rich resource that will only snowball as we bring more subsidiaries into the fold and continue to rebuild and strength our relationship with partners old and new.@@"<br>
<br>
Concluding his presentation the room erupts in applause and you watch in awe as he basks in the praise for a moment before flashing you a quick wink and then turning back to answer questions.<br>
<br>
The QA and is significantly less exciting than the announcement, though he shows just as much skill as he dives into details and assuages concerns. Eventually the meeting draws to a close and <<=setup.getNpcName('npc_manager', 'formal')>> motions for the two of you to leave.<br>
<br>
"@@.npc_manager;What did you think?@@" She asks as you ride the elevator back to your floor.<br>
<br>
Still in awe you express your amazement at the whole presentation and she smiles.<br>
<br>
"@@.npc_manager;Yes, your friend is quite the man... then again, you are quite the cute lady, as well... I wonder what other treasures are lurking in CDS, waiting to be brought to light?@@"<br>
<br>
You are unsure how to reply, soon disembarking on your floor and returning to work.<br>
<br>
[<<moveTo $workEventReturn "Work." 600>>]
</div>/*#
#desc: stage 3 meeting intro
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.meeting_stage = 4>>
<<include calcMeetingOutfitScore>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Once again you find yourself in a room with a table seated with managers alternating with their sexy, feminine assistants.<br>
<br>
<<include meetingOutfitAssessment>>
<br><br>
Making her way to her usual seat near the front <<=setup.getNpcName('npc_manager', 'formal')>> with you next to her and the meeting soon starts.<br>
<br>
[<<moveTo "event_work_meeting_stage_3_meeting_norm_2" "Continue." 1800>>]
</div>/*#
#desc: stage 3 meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.pain = ($scene.plug_ems || $scene.chastity_ems)>>
<<set $scene.pleasure = $scene.plug_vibe>>
<<if $scene.pain>>
<<if $scene.plug_ems && $scene.chastity_ems>>
<<applyExperience 'bdsm' 14 'terrible' $INCOGNITO>>
<<else>>
<<applyExperience 'bdsm' 11 'terrible' $INCOGNITO>>
<</if>>
<</if>>
<<if $scene.pleasure>>
<<set $player.timebased.horny = 90>>
<</if>>
<<if $scene.pain && $scene.pleasure>>
<<applyExperience 'submission' 12 'unbelievable' $INCOGNITO>>
<<elseif $scene.pain>>
<<applyExperience 'submission' 10 'very' $INCOGNITO>>
<<else>>
<<applyExperience 'submission' 8 'normal' $INCOGNITO>>
<</if>>
<<applyExperience 'humiliation' 10 'very' $INCOGNITO>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
The meeting proceeds with <<=setup.getNpcName('npc_manager', 'formal')>> heading for the front of the room, motioning for you to take position at the projector controls as she launches into a presentation.<br>
<br>
<<if $scene.pain>>
Things are going along normally as she gives what sounds like a fairly standard corporate update only to gasp when
<<if $scene.plug_ems && $scene.chastity_ems>>
your cage and rear light
<<elseif $scene.plug_ems>>
your rear lights
<<else>>
your <<getWordMyPenis $player>> lights
<</if>>
up with electrified pain. You glance up in surprise but <<=setup.getNpcName('npc_manager', 'formal')>> glances your way only long enough to flash a wink before continuing with the presentation.<br>
<br>
<</if>>
<<if $scene.pleasure>>
Sticking to your duties you take notes of any questions from the audience as <<=setup.getNpcName('npc_manager', 'formal')>> takes frequent pauses to clarify questions and concerns. As she is listening to the first of these questions you shudder as joyous vibrations rumble through your prostate.<br>
<br>
As she flashes a smile before launching into her answer you know for a fact that the grin is meant for you as you shift in your chair, both fearful of if you can handle additional stimulation without breaking down in public... while also eager to get your next "reward." <br>
<br>
<</if>>
<<if $scene.pain && $scene.pleasure>>
<<=setup.getNpcName('npc_manager', 'formal')>> proceeds like this for the rest of her presentation, your body alternating between being tormented by punishing shocks or your pleasures stoked by brief bursts of vibrating pleasure. Every moment of stimulation amplified even further by the humiliation of being at the front of the room desperately fearful that if you slip for but a moment everyone will know what is going on...
<<elseif $scene.pain>>
The presentation proceeds as you, in full view of the entire room, are secretly tormented by your manager. Like a maestro she stops just short of you crying out, while nonetheless ensuring that you are never long without another torturous shock.
<<else>>
You struggle to focus as the pleasure rolls on, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> seemingly doing everything she can to keep you just short of breaking down in orgasm in full view of the entire room.
<</if>>
<br><br>
When the presentation finally comes to an end you are a quivering mess, desperately grateful when she cuts out early as she waits for the privacy of the elevator to speak to you directly.<br>
<br>
<<if $scene.pain && $scene.pleasure>>
"@@.npc_manager;Did you have a good time? I knew this was going to be a bit of a dull meeting for you so... I thought I would spice it up while reminding you that wherever we go, whatever else is happening you, your pleasure and your pain are all mine.@@"
<<elseif $scene.pain>>
"@@.npc_manager;So, what did you think? I will be honest, that meeting was an annoying waste of time, but knowing that you were literally sharing in my pain well... it helped me push through.@@"
<<else>>
"@@.npc_manager;So, it seems like one of enjoyed that meeting. I will be honest, taken as a whole it was an annoying waste of time, but knowing that you were sitting there in public, desperate to cum all thanks to me.... well, it helped pass the time.@@"
<</if>>
<br><br>
Trembling submissively you meekly follow her back to the office where she leaves you off at your desk to return to work, still intimidated at her demonstration of intimate control.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 600>>]
</div>/*#
#desc: work while manager is at meeting with punishment on the horizon
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
You continue to work while your <<=setup.getNpcName('npc_manager', 'title')>> is at her meeting. The whole while there is a bothersome fear in the back of your mind at her promised "punishment" but you can see little to do save keep your head down and hope that she shows leniency.<br>
<br>
After some time, she returns heading past your desk without a glance to leave you in momentary relief before returning a few moments later with the familiar "For SISSY secretary use only" pink paddle in hand.
<br>
"@@.npc_manager;Get up and bend over.@@" She commands while looming over your desk.<br>
<br>
[<<moveTo "event_work_meeting_stage_3_punishment_2" "Continue." 60>>]
</div>/*#
#desc: manager punishes you post-meeting for not being remote controlled
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You do as commanded under her stern gaze, rising to your feet and then bending over with your elbows on the desk as she circles around.<br>
<br>
Teasing you as prologue she rubs the leather paddle against your rear.
<<if $scene.pain && $scene.pleasure>>
"@@.npc_manager;Now then, my recalcitrant slave, why did you forget to come equipped? Pleasure and pain those are the tools by which I will sculpt you into the perfect, obedient secretary but if you neglect to fill yourself, to plug that cute ass like I know you love... well... then I am forced to rely on more blunt measures.@@"
<<elseif $scene.pain>>
"@@.npc_manager;Now, I know that pain can be scary, I mean, that is somewhat the point, after all, but it is also one of the swiftest methods of correcting a wayward SISSY. Without the ease of administering correction at the push of a button well... I am left resorting to more blunt measures.@@"
<<else>>
"@@.npc_manager;Sometimes you quite confuse me, you know? After all, we both know how much you just love feeling those delightful vibrations deep in your cute sissy hole... and yet here you are, failing to be properly plugged! The functionality of immediate rewards is not some sort of game, it is for your own good and to accelerate your training; if you insist on being neglectful like this well... the only alternative is punishments in a more... blunt manner.@@"
<</if>>
<br><br>
The paddle lands hard against your rear and you cry out, a flurry of blows having you whimpering and begging her forgiveness.<br>
<br>
Finally stopping she moves around to your side, using the paddle to raise your chin and turn your face towards her. "@@.npc_manager;So, have you learned your lesson? Can I expect that cute rear to be properly stuffed and ready for correction, and reward, in the future?@@"<br>
<br>
You nod softly and she smiles.<br>
<br>
"@@.npc_manager;Excellent... though, I will say I do quite enjoy pulling out the old standards from time to time. There is just something about the feeling of paddling a nice cute SISSY bum...@@" She lashes out with another blow that has you yelp in surprise. "@@.npc_manager;Ah, simply wonderful.@@"<br>
<br>
Without further word she returns to her room leaving you to, tenderly, take your seat and resume working.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 600>>]
</div>/*#
#desc: stage 3 meeting
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.pain = ($scene.plug_ems || $scene.chastity_ems)>>
<<set $scene.pleasure = $scene.plug_vibe>>
<<if $scene.pain>>
<<if $scene.plug_ems && $scene.chastity_ems>>
<<applyExperience 'bdsm' 14 'terrible' $INCOGNITO>>
<<else>>
<<applyExperience 'bdsm' 11 'terrible' $INCOGNITO>>
<</if>>
<</if>>
<<if $scene.pleasure>>
<<set $player.timebased.horny = 90>>
<</if>>
<<if $scene.pain && $scene.pleasure>>
<<applyExperience 'submission' 12 'unbelievable' $INCOGNITO>>
<<elseif $scene.pain>>
<<applyExperience 'submission' 10 'very' $INCOGNITO>>
<<else>>
<<applyExperience 'submission' 8 'normal' $INCOGNITO>>
<</if>>
<<applyExperience 'humiliation' 10 'very' $INCOGNITO>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
You accompany your <<=setup.getNpcName('npc_manager', 'title')>> to another meeting that sees her spend the time
<<if $scene.pain && $scene.pleasure>>
teasing and tormenting
<<elseif $scene.pain>>
tormenting
<<else>>
teasing
<</if>>
you by remote to keep you "alert." Barely keeping yourself together you notice that you are not the only assistant who is looking a bit flush, sharing a comforting glance with some of the other girls as they too shift nervously in their seats.<br>
<br>
When the presentation finally comes to an end you are a quivering mess, desperate to get back to the privacy of your desk to calm down. Unfortunately <<=setup.getNpcName('npc_manager', 'formal')>> has other plans, tormenting you by having you follow her around after the meeting has concluded, exchanging meaningless platitudes with other attendees as you wait in anticipation of another jolt of stimulation that never comes...<br>
<br>
Back at your desk you almost melt into your chair, feeling like an over-stimulated puddle of nerves as she graces you with a smile and then disappears into her office.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 600>>]
</div>/*#
#desc: pre meeting root in stage 4
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Checking your <<=ps(setup.getNpcName('npc_manager', 'title'))>> calendar you note with some measure of trepidation that there appears to be a meeting scheduled with an invitee list composed of what looks like nobody lower level than a department head - plus a few board members.<br>
<br>
<<if $npc_manager.flags.meeting_stage > 3>>
<<printThought $player "Hmm... I wonder if I'm going to get gang-banged like last time? Knowing this company... probably...">><br>
<br>
<</if>>
[<<moveTo "event_work_meeting_stage_4_meeting_1" "Gather your things and prepare to attend her." 60 "<<set $scene.ready=true>>">>]<br>
[<<moveTo "event_work_meeting_stage_4_meeting_1" "Remain at your desk and continue working." 60 "<<set $scene.ready=false>>">>]
</div>/*#
#desc: work meeting root in stage 4
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<<if $scene.ready>>
<<applyExperience 'smart' 2 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'little' $SEEN_FRIEND>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<set $player.timebased.horny += 5>>
<<else>>
<<applyExperience 'bimbofication' 5 'little' $SEEN_FRIEND>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.plug_ems = false>>
<<set $scene.plug_vibe = false>>
<<if $scene.plug != "">>
<<set $scene.plug_ems = setup.getItemObj($scene.plug).tags.includes("ems")>>
<<set $scene.plug_vibe = setup.getItemObj($scene.plug).tags.includes("vibrating")>>
<</if>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<set $scene.chastity_ems = setup.getItemObj($scene.cage).tags.includes("ems")>>
<<if $scene.plug_ems || $scene.chastity_ems>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<if $scene.plug_ems && $scene.chastity_ems>>
<<applyExperience 'bdsm' 15 'little' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 12 'little' $SEEN_FRIEND>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<applyExperience 'bdsm' 8 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.ready>>
Gathering your things you are standing at attention and ready to go when <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office.<br>
<br>
"@@.npc_manager;Lovely.@@" She states with a smile, producing her phone and tapping a quick command
<<if $scene.plug_vibe>>
that has the plug in your rear buzzing against your prostate just long enough to elicit a soft moan from your lips. "@@.npc_manager;Come along now, my good girl, we have a meeting to attend.@@"
<<else>>
when you fail to react she frowns. "@@.npc_manager;Is your cute hole improperly filled?@@" She shakes her head, "@@.npc_manager;that is very disappointing, but work must be done, come along.@@"
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and, seeing you still seated at your desk, frowns before silently pulling out her phone and typing in a code.<br>
<br>
<<if $scene.plug_ems || $scene.chastity_ems>>
You cry out and jump as painful electricity courses
<<if $scene.plug_ems && $scene.chastity_ems>>
punishes you from both directions, your plugged read and <<getWordMyPenis $player>> tortured equally.
<<elseif $scene.plug_ems>>
through your ass.
<<else>>
through your <<getWordMyPenis $player>>
<</if>>
<br><br>
"@@.npc_manager;Well, what did you expect? Failing to stay on top of my schedule and prepare yourself... Well, do not sit there, we have a meeting to attend... Unless you are in the mood for another round, on a higher power?@@"<br>
<br>
Still catching your breath you quickly shake your head and grab your notebook before hurrying to follow her.
<<else>>
When you fail to react she frowns. "@@.npc_manager;What? Did you neglect to equip yourself for proper immediate feedback? No, no, that will not do at all. Alas, I am in too great a need of your assistance and so I must bring you along, even if you are ill-equipped for your duties. Come along, now.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo "event_work_meeting_stage_4_meeting_2" "Continue." 600>>]
</div>/*#
#desc: stage 4 meeting intro
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.first_time = $npc_manager.flags.meeting_stage == 4>>
<<set $npc_manager.flags.meeting_stage = 5>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOexecutive_conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first_time>>
You ride up several more floors before disembarking the elevator, nervously following her up a hallway of polished marble, feeling more like you are in a palace than a corporate building.<br>
<br>
Entering the "conference room" for the first time at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> heels you are taken aback by the grandeur of the room. The palatial design of the hallway only increases, dark wood panels cover the walls with matching heavy furniture dominated by the magnificent meeting table and chairs occupying the centre of the room. Heavy leather club chairs arranged around low coffee tables occupy the periphery of the room giving the indication that this room was designed for entertaining taking after a banquet hall from some royal estate.<br>
<br>
Over it all stare portraits of elderly men looking down onto the centre of the room, ostentatious frames naming them as past chairmen of the company.
<<else>>
You once again travel upwards to what you think of as the "palace" floor to enter the imposing board room at the heels of <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> takes her place at the head of the table indicating a chair slightly behind her and to her left for you. You take your seat as the other members of the meeting enter and take their seats each one giving a nod of recognition to M. A. which she accepts in each turn. Like your manager most of the attendees come with assistants of their own, including <<=setup.getNpcName('npc_nintendolls', 'formal')>> trailed by his pitiful "assistant." Your heart cannot help but go out to the poor dear, her mouth spread wide around a massive ball gag, body held rigid by combination of towering thigh-high ballet boots and a hobble skirt that melds directly into a narrow corset and then up to a steep posture collar, the only gaps for her leather-gloved, and cuffed, arms, her massive pierced breasts and a circular gap over her crotch that serves to embarrass her by putting her caged sissy clitty on display.<br>
<br>
Wobbling slightly she manages to take her seat without stumbling, though from the way her eyes swell you can guess her hard landing shoved the non-trivial plug deeper into her stuffed and spread ass. Though none of the other board members have an assistant quite as helpless as <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> most bear at least some degree of fetishistic attire or bondage. From the way people look at eachother it would seem the meeting serves a secondary purpose for a bit of jockeying and showing off by way of the on-display assistants.<br>
<br>
In all cases the subordinate takes a seat demurely behind their principal and it is not long before <<=setup.getNpcName('npc_manager', 'formal')>> brings the meeting to order.<br>
<br>
<<if $scene.first_time>>
[<<moveTo "event_work_meeting_stage_4_meeting_3" "Continue." 600>>]
<<else>>
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_1" "Continue." 1800>>]
<</if>>
</div>/*#
#desc: stage 4 meeting main
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOexecutive_conference_room.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> brings the meeting to order with a short introducing that includes specifying that "@@.npc_manager;my secretary will be taking minutes@@" with a dismissive wave of her hand. You note the time and sit forward in your chair to focus on your duties, notepad open and ready to record.<br>
<br>
The meeting continues and you dutifully record the various key discussions and decisions made ticking each item off an agenda that had been laid out at the start of the meeting. Finally, the meeting reaches the final agenda topic and <<=setup.getNpcName('npc_manager', 'formal')>> motions for you to rise and read off the summary.<br>
<br>
Reaching the end you prepare to pack up and leave only for an executive you do not recognize to raise his hand and propose "one additional item of business."
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> yields the floor with a nod as the man rises to his feet. "I would like to add an extra item to the agenda," he explains, ignoring the frustrated looks from some members around the table. "In commemoration of the sterling job that Miss <<=$player.last_name>> has done at chronicling this meeting," you blush slightly as you look around at the appreciative, and in some cases predatory, smiles. "So I think we should take a vote on this final extraordinary item" he pauses, as if relishing what he is about to say, only continuing after flashing you a quick wink. "Can I get a second for the proposal that we should all fuck the minute taker?" <br>
<br>
<<printThought $player "Wait, what??">><br>
<br>
[<<moveTo "event_work_meeting_stage_4_meeting_4" "Continue." 600>>]
</div>/*#
#desc: stage 4 meeting main
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOexecutive_conference_room.png">>
<div id="invframe" class="scrolltext">
"@@.npc_nintendolls;Seconded!@@"<br>
<br>
"Third!" another voice adds, seemingly half the room - the non-assistant half, hurrying to voice their approval of the proposal.<br>
<br>
"@@.npc_manager;The motion is carried, are there any objections?@@" Silence follows and she nods soberly "@@.npc_manager;-carried unanimously. Do be sure to record that, <<=$player.first_name>>, the meeting has not been dismissed and thus you are still charged with recording all significant occurences.@@"<br>
<br>
People begin to rise and move around the table in your direction as
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
you are overcome with joy, scarcely able to believe that such a wonderful fantasy of being gang-banged by so many men is about to happen!
<<else>>
your heart pounds with excitement, is this really about to happen?
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
you feel suddenly very small and nervous.
<<else>>
you realize that yes, this is really about to happen.
<</if>>
<</if>>
<br>
Turning to you she says, "@@.npc_manager;make sure you record who fucked you each time as these are part of the official company records,@@" turning back to the meeting she added "@@.npc_manager;I am asserting droit de maitresse@@" before turning to a bag you had not noticed before to pull out strap on that had so thoroughly plundered your then novice bum back during your graduation. "@@.npc_manager;Better get ready <<=$player.first_name>>. We would not want to ruin your outfit so best if you striped naked@@" she says as she casually moves her heavy chair out of the way and nods for you to bend over the table.<br>
<br>
[<<moveTo "event_work_meeting_stage_4_meeting_5" "Refuse!" 60 "<<set $scene.style='forced'>>">>]
[<<moveTo "event_work_meeting_stage_4_meeting_5" "Put on a show as you shed your clothes." 600 "<<set $scene.style='striptease'>>">>]
[<<moveTo "event_work_meeting_stage_4_meeting_5" "Prepare yourself." 600 "<<set $scene.style='strip'>>">>]
</div>/*#
#desc: stage 4 meeting main
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<set $scene.plugged = setup.getItemFromType('plug') != "">>
<<if $scene.plugged>>
<<set $scene.hollow = setup.getItemObjFromType('plug').tags.includes('hollow')>>
<</if>>
<<switch $scene.style>>
<<case 'forced'>>
<<if $fetish.get_raped>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<<if $scene.plugged && $scene.hollow>>
<<applyExperience 'anal' 17 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<</if>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'bdsm' 8 'normal' $EXPOSED>>
<<applyExperience 'cum' 11 'terrible' $EXPOSED>>
<<alterStatAllWorn 'cum' '["add",60]'>>
<<else>>
<<applyExperience 'humiliation' 10 'terrible' $EXPOSED>>
<</if>>
<<case 'striptease'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing $player $now true>>
<<case 'strip'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing $player $now true>>
<</switch>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOexecutive_conference_room.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'forced'>>
<<if $fetish.get_raped>>
You start to object but <<=setup.getNpcName('npc_manager', 'formal')>> seems to anticipate your move, taking the opportunity to shove a large ring gag into your mouth and then slam you down over the table. With a rough pull she exposes your ass,
<<if $scene.plugged>>
<<if $scene.hollow>>
not even removing your plug, instead ramming through its gaping centre hole and in so doing stretch you to the limit.
<<else>>
your plug popping free to skitter across the floor before her artificial cock slams into your hole.
<</if>>
<<else>>
her artificial cock slamming into your hole.
<</if>>
<br><br>
You howl through your gag as she pulls you up up by your hair. Turning in place with the cock rooted in your ass acting to steer you are soon face to face with a flesh and blood penis, <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> cock, to be specific as you momentarily recognize it in the instant before control of your head is passe off and he begins slamming up through your gag to use your skull as a personal onahole.<br>
<br>
Wide-eyed and spit-roasted you can do nothing but take it, your pounding treatment punctuated by a final hard slap on your ass when <<=setup.getNpcName('npc_manager', 'formal')>> slides out and calls out "@@.npc_manager;next!@@"<br>
<br>
For what feels like eternity - or slightly less than half an hour, your body is ravaged, slapped and showered in cum. Neither hole goes more than a handful of seconds without being filled, every "executive" taking you at least once and, towards the end, a few of the other assistants jumping in, including <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> helpless slut who, temporarily freed of her clitty cage, seems to take particular delight in harshly face-fucking you until she fills your mouth with her sissy product. Her turn passed you are on to being violated by yet another, larger cock while and she is locked away once again.<br>
<br>
Unable even to stand by the halfway point you eventually pass out, awakening to find yourself seated at your desk back in your office, clothes dripping with <<getWordCum $player>>, the gag removed from your sore mouth but <<if $scene.plugged>>with your plug replace, <</if>>your belly gurgles with its full cargo of cum.<br>
<br>
Whimpering slightly at the mad torment that is your "job" you reach for your keyboard to resume more "normal" work.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 1800>>]
<<else>>
You are about to object, as futile as such an effort might be, given the circumstances, when the room is brought to a halt by a voice from the door.<br>
<br>
"@@.npc_boss;I do hate to interrupt the festivities but... I have another meeting scheduled shortly and there would not be time for the cleaning staff to come through. Please, be on your way.@@"<br>
<br>
Powerful men with their cocks already out and half hard hurriedly dress themselves and file out, cowed by the authority of the CEO.<br>
<br>
You stand in shock at this seeming miraculous rescue, following your <<=setup.getNpcName('npc_manager', 'formal')>> to the exit only to be stopped by <<=setup.getNpcName('npc_boss', 'other')>>.<br>
<br>
"@@.npc_boss;I suppose a special apology is due to you.@@" He states, a slight mocking tone in his voice "@@.npc_boss;after all, I imagine a slut like yourself would be quite crushed to go through the rollercoaster of thinking she was about to be gang-raped only to have the opportunity whisked away...@@" He cups your chin and looks into your eyes and you reflexively tense, wondering what it is he sees.<br>
<br>
The moment lasts but a few seconds and then he turns away, leaving you and <<=setup.getNpcName('npc_manager', 'formal')>> to return to your office, her strap-on somehow having disappeared back into her bag in the commotion.<br>
<br>
[<<moveTo $workEventReturn "Back to work." 600>>]
<</if>>
<<case 'striptease'>>
Heart racing in anticipation you take the extra time to sensuously remove you clothes, garments falling to the floor as you strip to your underwear and then remove that as well,
<<if $scene.plugged>>
<<if $scene.hollow>>
leaving the hollow plug gaping your ass you bend over in invitation, mind already awhirl with anticipation at the fact it upgrades nearly any member into a hole-stretching sissy-pleaser.
<<else>>
concluding by sliding the plug from your ass and bending over to present your rear to your manager. With a little wiggle you invite her in before looking around for a likely cock to be your first customer at the other end as you bend forward and spread your lips wide.
<</if>>
<<else>>
her artificial cock slamming into your hole.
<</if>>
[<<moveTo "event_work_meeting_stage_4_meeting_6" "Get fucked." 600>>]
<<case 'strip'>>
In too much of a hurry for decorum your clothes practically disappear off of your body before you bend
<<if $scene.plugged>>
<<if $scene.hollow>>
over, the hollow plug in your ass having you already gaping and ready for your <<=ps(setup.getNpcName('npc_manager', 'title'))>> use.
<<else>>
over and, after sliding the plug out of your rear presenting yourself for your <<=ps(setup.getNpcName('npc_manager', 'title'))>> strap-on.
<</if>>
<<else>>
over and present your gaping rear hole to your <<=setup.getNpcName('npc_manager', 'title')>>.
<</if>>
<br><br>
[<<moveTo "event_work_meeting_stage_4_meeting_6" "Get fucked." 600>>]
<<default>>
ERROR unexpected scene.style: <<=$scene.style>>
<</switch>>
</div>/*#
#desc: stage 4 meeting main
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<<if $scene.plugged && $scene.hollow>>
<<applyExperience 'anal' 17 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<</if>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'submission' 18 'very' $EXPOSED>>
<<applyExperience 'cum' 16 'normal' $EXPOSED>>
<<applyExperience 'bimbofication' 16 'terrible' $EXPOSED>>
<<set $scene.slutlust = setup.getTotalValue("bimbofication") + setup.getTotalValue("penis")>>
<<applyFatigue $player 50>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOexecutive_conference_room.png">>
<div id="invframe" class="scrolltext">
Exercising her declared right <<=setup.getNpcName('npc_manager', 'formal')>> moves behind you to accept your invitation.
<<if $scene.plugged>>
<<if $scene.hollow>>
Your already gaping ass is filled and swelled wide as she forces her way through the centre hole of your hollow buttplug.
<<else>>
The brief feeling of emptiness from your absent plug is swiftly remedied as the lubricated tip of her strap on presses into the space so recently voided.
<</if>>
<<else>>
There is nothing to slow her down from pressing the lubricated tip of her strap-on against, and then into, your waiting hole.
<</if>>
As she pushes forward and the shaft enters further into your quivering backside, you can do nothing but moan. As your lips part to release your expression of pleasure you catch a momentary glimpse of <<=setup.getNpcName('npc_nintendolls', 'formal')>>, his fly undone to release his trouser sausage. You need no further invitation to spread your lips even wider to receive him and start to suck avidly.<br>
<br>
"@@.npc_manager;Do not forget to record meeting participants and their actions taken@@" <<=setup.getNpcName('npc_manager', 'formal')>>. Your assenting response is muffled by the man meat plugging your throat but, while taking it deep from both ends, you manage to reach out for your notebook and begin a ledger:
/%TODO; boipussy, etc?%/
Ass: <<=setup.getNpcName('npc_manager', 'formal')>><br>
Face-hole: <<=setup.getNpcName('npc_nintendolls', 'formal')>><br>
Mood:
<<if $scene.slutlust > 20>>
<<if $scene.slutlust > 30>>
in heaven
<<else>>
ecstatic
<</if>>
<<else>>
<<if $scene.slutlust > 10>>
aroused
<<else>>
overwhelmed
<</if>>
<</if>>
<br><br>
Sucking hard as you are pounded deep it is not long before you get your first
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
heavenly
<<else>>
yummy
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
strangely alluring
<<else>>
bitter
<</if>>
<</if>>
taste of cum, barely giving the chance to lick your lips and swallow before a new cock is stuffed into your hole. You do not even see the man's face but he gives you his name and title so that you may note it appropriately before he sets to work, gripping your head tight as he pounds away, making up for his modest size with vigour.<br>
<br>
Pegging your ass <<=setup.getNpcName('npc_manager', 'formal')>> is incapable of "cumming" in the traditional sense but she gives you a good hard pounding to "warm you up" before stepping away and allowing the next user to plug your cock-socket. Not as large and gloriously hard as your <<=setup.getNpcName('npc_manager', 'title')>>
<<if $scene.plugged && $scene.hollow>>
the added girth of your plug keeps you from feeling too empty
<<else>>
he slides into you with ease
<</if>>
and you moan and slobber around the <<getWordPenis $player>> in your mouth as you are given a momentary easing that last just long enough to record the "progression" of your anal occupancy before the two men commence to give it to you hard and deep.<br>
<br>
Thoughtfully someone sends one of their assistants to crawl underneath you, the unseen girl unable to do much save tease your <<getWordPenis $player>> as she slurps up your copiously spilled pre but you yet appreciate the effort as you make an appropriate note of the occurence.<br>
<br>
Despite the herky-jerky rhythm enforced by your record-keeping requirements you are not left wanting; each executive pumping at least one load of their elite cum into you before a few of them allow their assistants to take a turn. Your jaw by now a bit sore from use it is almost soothing to spend some time licking pussy or sucking on a delicately soft sissy penis.<br>
<br>
The brief tenderness comes to an end, however, when <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> is allowed to take their turn. You catch a cruel glint in their eye, the grudge they most hold against your perceived role in their transformation fighting its way through their submissive re-programming as their cage is removed to reveal a <<getWordPenis $player>> even larger than their owners!<br>
<br>
Teetering atop their ballet heels as they walk around your body you struggle to keep from falling over when they slam into you from behind, their enthusiasm in excess of their balance as you find yourself quite grateful for the "support" of your next oral user to keep you from face-planting onto the floor.<br>
<br>
Whatever ill-will fed enthusiasm is no match for you now well-used and slick rear, their climax joining the rest of the sea of cum coursing up through your bowels and they stagger away to be re-caged.<br>
<br>
<<if $scene.slutlust > 20>>
<<if $scene.slutlust > 30>>
Alas, the heavenly experience eventually winds down, the slight stiffness in your joints and soreness in your holes hardly noticed as you immediately find yourself reminiscing about how much you enjoyed "taking minutes."
<<else>>
Alas, all good things must come (or is that cum?) to an end as you let out a sigh, your body a bit sore, certainly, but quite content.
<</if>>
<<else>>
<<if $scene.slutlust > 10>>
Finally, it is over, your holes sore, joints stiff and mind half-melted from the experience.
<<else>>
Finally, it is over, your holes sore, joints stiff and addled brain all but shut down by the experience.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_work_meeting_stage_4_meeting_7" "Continue." 600 "<<useClothSetPop 'tmp' $player $now>>">>]
</div>/*#
#desc: post meeting in stage 4
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 20 'very' $EXPOSED>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 16 'normal' $ALONE>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Wiped somewhat clean of sweat you watch the attendees trickle out of the room as you put your clothes back on and follow your manager out. "@@.npc_manager;Have a good time?@@" She asks with a smile.
<<if brazen>>
You fire back with a wide grin and an eager nod, licking your lips in hopes that you might find some lingering drops of cum.
<<else>>
your bashful blush serves as your answer.
<</if>>
<br><br>
She laughs as you ride the elevator back down to your office. Leaving you at your desk she hands you your notepad as you embarrassingly realised you had forgotten it.<br>
<br>
"@@.npc_manager;Do please hurry and type up the minutes - important meetings like this need be mailed out to all department heads and principals as well as archived for posterity. Note that, since the meeting did not cover confidential matters, that also includes forwarding to intranet noticeboards as well as our subsidiaries.@@" You nod obediently and begin flipping through your notes. "@@.npc_manager;And just a reminder, that does mean ALL of the meeting. Those who were remote or otherwise not in attending need to be made aware of what occured in their absence.@@"<br>
<br>
You gulp as you find yourself looking through page after page of meticulous documentation of your extended gang-bang. With a final wink she spins on her heels and disappears into her inner office before you can even consider objecting.<br>
<br>
Your cum-filled belly gurgling you sigh and set to work transcribing your notes, your body reacting with simmering arousal at the "reliving" of your experience despite the humiliating thought of nearly the entire company being able to read of your escapades...<br>
<br>
[<<moveTo $workEventReturn "Send the email and resume your other work." 600>>]
</div>/*#
#desc: stage 4 meeting repeat main
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOexecutive_conference_room.png">>
<div id="invframe" class="scrolltext">
You act as note-taker for another high-level executive meeting, the conclusion of which sees the motion once again raised and enthusiastically passed that they finish up by fucking the minute taker; ie, you.<br>
<br>
<<if $fetish.get_raped>>
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_2" "Refuse!" 60 "<<set $scene.style='forced'>>">>]
<<else>>
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_2_noforce" "Refuse!" 600>>]
<</if>>
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_2" "Resign yourself and just go along." 1800 "<<set $scene.style='neutral'>>">>]
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_2" "Enthusiastically offer yourself." 1800 "<<set $scene.style='enthusiastic'>>">>]
</div>/*#
#desc: stage 4 meeting repeat sex
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<applyExperience 'humiliation' 11 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOexecutive_conference_room.png">>
<div id="invframe" class="scrolltext">
Trembling in fear at the prospect of being fucked by an entire roomful of executives you are saved when your <<=setup.getNpcName('npc_manager', 'title')>> responds to the resolution by explaining that, unfortunately, the meeting has run long as there is insufficient time to "@@.npc_manager;give this slut what she deserves.@@"<br>
<br>
Counting your blessings you hurry after your <<=setup.getNpcName('npc_manager', 'title')>>, soon back at the comparative safety of your desk where you commence to type up the minutes as is your job.<br>
<br>
[<<moveTo $workEventReturn "Continue working." 600>>]
</div>/*#
#desc: stage 4 meeting repeat sex
#status: WRITTEN 0.7.0.0
#*/
<<if $roomchange == true>>
<<if $scene.plugged && $scene.hollow>>
<<applyExperience 'anal' 17 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<</if>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'cum' 11 'terrible' $EXPOSED>>
<<applyFatigue $player 50>>
<<switch $scene.style>>
<<case 'forced'>>
<<applyExperience 'bdsm' 8 'normal' $EXPOSED>>
<<alterStatAllWorn 'cum' '["add",60]'>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<<case 'neutral'>>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<<case 'enthusiastic'>>
<<applyExperience 'humiliation' 18 'normal' $EXPOSED>>
<<applyExperience 'penis' 17 'terrible' $EXPOSED>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOexecutive_conference_room.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'forced'>>
You try to object to this treatment but is to no avail as, with your <<=setup.getNpcName('npc_manager', 'title')>> looking on dispassionately, you are slapped, shamed and fucked in every hole by the executives, finally left in a ruined heap, cum leaking out of both ends.<br>
<br>
"@@.npc_manager;Come along. You have had your fun, this is no time to be laying down on the job.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states while looming over you, waiting as you stagger to your feet before leading the way back down to your office.<br>
<br>
"@@.npc_manager;You know, things would be easier for you if you just embraced who and what you are... but if you prefer to do things the hard way and get off on the consequences well... That is your choice, as well.@@"<br>
<br>
You merely whimper in response before turning back to your station.
<<case 'neutral'>>
Seeing no use in fighting you surrender to the oncoming gang-bang, soon finding yourself with a cock in each hole as the board members take turns ravaging your body. "Going along" keeps things from getting too out of hand and, eventually, with a belly and ass pumped full of cum and feeling a bit tired, you reach the end of dicks and follow your manager back to your office.<br>
<br>
She reminds you that you need to send out the "full" meeting minutes and you nod, turning towards your computer to start typing.
<<case 'enthusiastic'>>
With a wide grin on your face you jump on the first dick on offer, bending over so that you can be easily taken from behind while you put your mouth to its best use and use both hands to prep your next suitors. You are in slut heaven as you are repeatedly fucked hard and long, your only breaks coming after each cummeriffic climax when, once the cock at hand (or mouth, or ass) is fully drained you thank them for the honour and take note of their name in your notebook for "record keeping purposes." <br>
<br>
To you frustration you outlast the board and those of their assistants that are allowed to take their turn in using you, taking a final bow as the drained room looks on in awe before gathering your things and following your manager out of the room.<br>
<br>
You are licking your lips in the elevator as you reflect on the memory of your wonderful gangbang when <<=setup.getNpcName('npc_manager', 'formal')>> finally speaks, congratulating you on "@@.npc_manager;an excellent discharge; pun intended, of your duties.@@"<br>
<br>
Back at your desk you don't even have to be reminded, temporarily skipping past typing up the boring summary of discussion in favor of starting in on writing up the delightful summary of your "exploits."
<</switch>>
<br><br>
[<<moveTo $workEventReturn "Resume your work." 600>>]
</div>/*#
#desc: sent "downstairs" for thorough cleaning
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange == true>>
<<set $scene.firstTime = ($npc_manager.flags.severeCleanings == 0)>>
<<set $npc_manager.flags.severeCleanings+=1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include enterroom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.firstTime>>
"@@.npc_manager;No, no, this will not do. Cleanliness was one of your first duties, for you to arrive to work in such condition?@@" She shakes her head. "@@.npc_manager;There was a time whence I would have sent you directly home for such an affront but, I confess, now that you have somewhat learned your job, I have become a bit too dependent on you and cannot possibly spare you today. That leaves us with no other choice than to get you cleaned up. Follow.@@"<br>
<br>
She walks past you towards the door out of the office. You reach for your clothing to get dressed only for her to turn back with a deepening scowl.<br>
<br>
"@@.npc_manager;We do not have time for that, and you will only get them more dirty now come, follow.@@"<br>
<br>
Wincing and embarrassed you hurriedly obey, rushing to catch up as she swiftly strides towards the elevator.
<<else>>
"@@.npc_manager;Again? Truely you try my patience neglecting your hygiene, one of the very first of your duties! Come, let us off to the cleaners to get you in condition to represent me as my secretary.@@"<br>
<br>
Nervously remembering your last cleaning you fight against the fog to remember exactly what happened. All you can remember is a strange pleasant happiness at the end of it and yet... something inside of you is somewhat afraid. Still, you find yourself obediently following after <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>
<br><br>
[<<moveTo "events_work_cleaning_2" 'Continue' 60>>]
</div>/*#
#desc: sent "downstairs" for thorough cleaning
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOwork_laundry_reception.png" "./images/characters/TODOnpc_work_laundry_reception.png">>
<div id="invframe" class="scrolltext">
<<if $scene.firstTime>>
Riding the elevator down, down, down you disembark on a floor below ground level. Looking more like a hospital than an office the walls are polished and clean, every surface spotless, the sound of heels echoing off the hard floor.<br>
<br>
Walking up the hall you turn in at a door marked simply "Jenny's." <br>
<br>
Inside you find yourself in a lobby. A latex clad clerk, her face a doll-like mask who smiles and nods in acknowledgement.<br>
<br>
Stepping up the counter <<=setup.getNpcName('npc_manager', 'formal')>> nods as the woman greets her. "Good morning, what service can we provide today?" <br>
<br>
"@@.npc_manager;I would like to schedule a full cleaning.@@" She states, her gaze flicking in your direction without even mentioning your name.<br>
<br>
"Of course, and what level of cleaning will you be requesting today?" <br>
<br>
Your attention shifts towards the list of "options" on the sign behind the desk but you barely have time to read more than a few lines before <<=setup.getNpcName('npc_manager', 'formal')>> announces her decision.
<br>
"@@.npc_manager;She is in quite a shape so I believe the round-the-world full squeaky clean wash is in order.@@"<br>
<br>
None of the procedures actually list a description, merely a time though their names would seem to indicate an increasing degree of of "thoroughness." You can't help but gulp when you find the "round-the-world full squeaky clean wash" - it is the very last item in the list, with a duration listed at a full hour.<br>
<br>
"Of course, we will deliver your property looking better than ever!" The woman states, handing <<=setup.getNpcName('npc_manager', 'formal')>> a tag with the number <<=random(10000)>> and the acronym RTWFSCW printed on it. Attached to a loop <<=setup.getNpcName('npc_manager', 'formal')>> clips it around your neck.<br>
<br>
"@@.npc_manager;See you in an hour.@@" She states before leaving.<br>
<br>
You almost jump in fright when you turn back to find a second attendant has silently appeared. This one with a heavy rubber overcoat and intimidating chemical mask over top of a latex outfit. Integrated heels and corset, along with painted-on tightness, makes the whole thing totally revealing despite not a millimetre of skin technically showing. The technician takes you by the hand and leads you on past the desk and through a door as the still "smiling" receptionist waves at you.
<<else>>
<<printThought $player "This is strange...">><<printThought $player "I can't wait to be clean!" 40>><br>
<br>
Traveling down, down, down in the elevator you walk through an antiseptic but oddly familiar hallway. Overcome with deja vu you listen as <<=setup.getNpcName('npc_manager', 'formal')>> commissions you for a "round-the-world full squeaky clean wash" - quite a mouthful that the sign listing the various options would seem to indicate is the most through cleaning of all, taking a full hour!<br>
<br>
A tag with the number <<=random(10000)>> and the acronym RTWFSCW is clipped around your throat and <<=setup.getNpcName('npc_manager', 'formal')>> departs, leaving you with the doll-faced latex-clad receptionist and an even more heavily rubbered technician, their outfit a hazmat suit, complete with obscuring chemical mask, but with the heavy rubber skintight, sculpted and incorporating a corset and heels. As you follow behind the technician you have a distant thought that it is a bit strange how you consider none of this in the least bit odd...
<</if>>
<br><br>
[<<moveTo "events_work_cleaning_3" 'Time to get "clean"' 60>>]
</div>/*#
#desc: cleaned at work slave wash
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<useClothSetPush 'tmp'>>
<<set _x = setup.cleanSexToys()>>
<<washClothes>>
<<set $scene.cageItem = setup.getItemFromType('cage')>>
<<if $scene.cageItem!="">>
<<changeItemStatus $scene.cageItem 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cageItem 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cageItem 'piss' '["remove"]'>>
<<changeItemStatus $scene.cageItem 'sweaty' '["remove"]'>>
<</if>>
<<set $player.timebased.dirty = 0>>
<<set $player.makeup.template = "normalmakeup">>
<<set $player.makeup.messed = 0>>
<<removeAllClothing $player $now true>>
/% TODO: hood/cuffs/position? %/
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'submission' 5 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bondage' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to 'The "Cleaners"'>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/TODOwork_laundry.png" "./images/characters/TODOnpc_work_cleaners.png">>
<div id="invframe" class="scrolltext">
Taken to a large tiled room you are chained by the wrist and ankles so that you are bound with arms and legs spread as additional technicians appear, each wearing identical "uniforms" of sexy-tight hazmat suits.<br>
<br>
You start to ask what is going on only for a strange gag to be shoved into your mouth. Somewhat like a mouthguard it fits over your teeth, soon followed by a full mask that covers your face as another device is pulled over your hair to finish enclosing your head.<br>
<br>
Blind inside your helmet you hear a soft, feminine recording begins rhythmically speaking in your ears, the voice almost hypnotic.<br>
<br>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">"You are a dirty girl. Dirty girls need to be cleaned. Good girls are clean. You want to be a good girl." </span>
</span>
</div>
<br><br>
Unable to see you can only feel as the remainder of your attire is removed from your body,
<<if setup.getItemFromType("plug") != "">>
the plug removed from your rear
<</if>>
leaving you wearing naught but your cage<<if setup.getItemFromType("nipples") != "">> and glittering nipple adornments<</if>>.<br>
<br>
Having been stripped of almost all sense of the outside world you jump when a thick, well-lubricated dildo slides into your ass, the dong plunging deep before swelling in size, "locking" itself in place<<if $fetish.bestiality_soft>>much like a dog's knot<</if>>.<br>
<br>
Nervously panting as you hang in bondage you are suddenly pelted with water from all directions. You can't even count the number of hoses spraying back and forth over our body, as the plug in your rear joins forces to flood you with a belly-swelling enema.<br>
<br>
Losing your balance under the onslaught it is only your wrist restraints that keep you off the floor, your feet scrambling for purchase on the wet, slick tile as you try to right yourself and relieve the strain in your shoulders. Assaulted from within and without you feel a strange movement in your mouth, your "gag" somehow scrubbing all of your teeth at once even as your helmet fills with some manner of liquid.<br>
<br>
The jets shut off and you try to catch your breath, the cramping in your enema-flooded rear exacerbated as the plug begins violently vibrating and sending punishing shocks of electricity up and down your insides.<br>
<br>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">"You are a dirty girl. Dirty girls need to be cleaned. Good girls are clean. You want to be a good girl." </span>
</span>
</div>
<br><br>
The recording loops constantly, overpowering your thoughts as you are cleaned far more thoroughly than any home shower you've ever taken. Many hands scrub and grope every centimeter of your body, scouring your flesh as your head becomes the centre of a vortex, liquid swirling around what you conclude is on oversized, fish bowl-like helmet to clean your hair in a novel manner.<br>
<br>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">"You are a dirty girl. Dirty girls need to be cleaned. Good girls are clean. You want to be a good girl." </span>
</span>
</div>
<br><br>
The scrubbing is followed by another hosing off and then tongues and lips moving over your body, licking and kissing you all over as the enema finally flows away leaving you feeling drained and overwhelmed.<br>
<br>
The tongues are replaced by the jets once again, along with an even bigger enema and more scrubbing.<br>
<br>
<div id="invframe" class="scrolltext">
<span class="makeVisible">
<span class="shining" style="-webkit-animation-delay: 0.0s;">"You are a dirty girl. Dirty girls need to be cleaned. Good girls are clean. You want to be a good girl." </span>
</span>
</div>
<br><br>
Your tenuous, blind grip on reality falters as time stretches out with you trapped in the whirling vortex of hose, scrub, hose, kiss, repeat. Losing count around the fourth... or was it fifth? Repetition the only thing you have left to hold on to is the voice in your ear.<br>
<br>
<<printThought $player "I am a dirty girl. I need to be cleaned. Good girls are clean. I want to be a good girl..." 40>><br>
<br>
When your helmet is finally removed your are in a daze. The light is too bright, the sexy hazmat-suited technicians almost alien as they move about, styling your hair, replacing your plug and then dressing you in the freshly-cleaned outfit that you had left behind in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
<<if $player.makeup.permanent != "">>
Still quite out of it you distantly hear someone say something about having applied the "company standard" makeup template over top of your permanently applied appearance.<br>
<br>
<</if>>
Your bondage removed you sway slightly, a pair of technicians helping you across the damp floor. The girl at the desk smiling the same latex masked smile as she waves you goodbye.<br>
<br>
<<printThought $player "Good girls are clean... I want to be a good girl..." 40>><br>
<br>
Thoughts foggy you stagger up the hallway and back to the elevator for the long ride back up.<br>
<br>
[<<moveTo "events_work_cleaning_4" "Return to the Office" 3600>>]
</div>/*#
#desc: return to office after work slave wash
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<useClothSetPop 'tmp' $player $now>>
<<include "inspectionData_plug">>
<<include "inspectionEffects_plug">>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Finding your balance as you walk up the hallway to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office you find her waiting inside, greeting you with a smile.<br>
<br>
"@@.npc_manager;There, doesn't it feel better to be all clean?@@"<br>
<br>
Still half disconnected from your own body you nod, it is difficult to focus on anything save the still-repeating mantra echoing in your brain.<br>
<br>
<<printThought $player "Good girls are clean... I want to be a good girl..." 40>><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> steps closer, running her fingers along your face as she looks into your vacant eyes.<br>
<br>
"@@.npc_manager;They really do such a wonderful job cleaning you inside and out... do not worry, that pleasant foggy feeling is only temporary, though I hope you learned your lesson as to showing up to work a dirty girl.@@"<br>
<br>
You shudder slightly, almost triggered by hearing her speak the words, putty in her hand as she gives you a final gentle pat and returns to her office.<br>
<br>
<<if setup.checkTaskCompleted('manager_morning_inspection_task') != 1>>
Some distant part of you wonders at the fact she seems to have ignored your other transgressions... You feel deeply guilty for these, as well as all of your failures but you cannot muster the energy to point it out. Apparently your "cleaning" is considered sufficient treatment for the whole package...
<</if>>
Feeling drained, and yet strangely invigorated, you return to your desk and start up your computer.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start working." 60 "<<set $scene.pricicelyOnTime = false>>">>]
</div>/*#
#desc: Intro passage for scene leading to chastity if you show up to work horny too often
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<setScene>>
<<set $scene.clothes = "">>
<<decrementEmotion 'anger' 'npc_manager' 10>>
<<set $npc_manager.perversion += 1>>
<<if setup.checkVisibleClothingTag('cute')> 40>>
<<set $scene.clothes='cute'>>
<<elseif setup.checkVisibleClothingTag('bold')> 40>>
<<set $scene.clothes='bold'>>
<<elseif setup.checkVisibleClothingTag('female')> 40>>
<<set $scene.clothes='female'>>
<<elseif setup.checkVisibleClothingTag('male')> 20>>
<<set $scene.clothes='male'>>
<<else>>
<<set $scene.clothes='unknown'>>
<</if>>
<</if>>
<<if (setup.isBodySlotVisible('penis'))>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_punishment_2">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Please stand and remain still for your inspection <<=$player.first_name>>.@@"<br>
<br>
You can feel your <<getWordMyPenis $player>> tense up as <<=setup.getNpcName('npc_manager', 'formal')>> approaches you.<br>
<br>
<<printThought $player "I really should have jacked off this morning.">><br>
<br>
"@@.npc_manager;Eager as ever,@@" she says with a sharp tone. There's a sudden feeling of pressure as her hand grasps your <<=setup.getItemTypeName('panties')>> covered <<getWordMyPenis $player>>. You go to look down but are caught off guard by a finger pressing up under your chin. "@@.npc_manager;What have I told you?@@" Her cold glare matches her tone as she looks you in the eyes to bore a hole into your brain.<br>
<br>
"@@.npc_manager;I am surprised a sissy like you is not spanking it any opportunity you have... well, as I have said, we will need to find a more permanent solution to your perverted little problem.@@"<br>
<br>
You flush as <<=setup.getNpcName('npc_manager', 'formal')>> emphasises the word little but are quickly brought back to attention as her grip tightens around your <<getWordMyPenis $player>>.
<<if setup.getItemFromType('panties') != "">>
You can feel the inside of your <<=setup.getItemTypeName('panties')>> begin to rub against your head and let out a muffled moan.<br>
<br>
"@@.npc_manager;Hmph,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a smirk. "@@.npc_manager;Free your tiny penis and lay on the couch. Stare up at the ceiling and DO NOT look away,@@" her words are emphasised by a firm squeeze around your testicles.
<<else>>
Her fingers dig into your exposed flesh and you let out a muffled moan.<br>
<br>
"@@.npc_manager;Hmph,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a smirk. "@@.npc_manager;So wanton. Lay on the couch. Stare up at the ceiling and DO NOT look away,@@" her words are emphasised by a firm squeeze around your testicles.
<</if>>
</div>/*#
#desc: alternate intro to "punishment" stage 1 transition where you came to work in chastity on money path
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Pulling your undergarments back on you hurry after <<=setup.getNpcName('npc_manager', 'formal')>> into her inner sanctum. She spins to face you so fast you almost crash into her before taking a step back in fear.<br>
<br>
"@@.npc_manager;Lie down on the couch <<=$player.first_name>>, with your foolishly locked, patheticness on display.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_2" "Do as she commands." 120>>]
</div>/*#
#desc: phase 1 ending - manager has you strip and prepares to jerk you off
#status: FINISHED 0.4.0.0
#*/
<<set $scene.willpower = false>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<set $scene.pantieObj = setup.getItemObjFromType('panties')>>
<<if $scene.panties == "">>
<<set $scene.panties_type = "none">>
<<elseif $scene.pantieObj.tags.indexOf('modest') > -1>>
<<set $scene.panties_type = "modest">>
<<elseif $scene.pantieObj.tags.indexOf('cute') > -1>>
<<set $scene.panties_type = "cute">>
<<elseif $scene.pantieObj.tags.indexOf('bold') > -1>>
<<set $scene.panties_type = "bold">>
<<elseif $scene.pantieObj.tags.indexOf('sissy') > -1>>
<<set $scene.panties_type = "sissy">>
<<elseif $scene.pantieObj.tags.indexOf('fetish') > -1>>
<<set $scene.panties_type = "fetish">>
<<elseif $scene.pantieObj.tags.indexOf('female') > -1>>
<<set $scene.panties_type = "female">>
<<elseif $scene.pantieObj.tags.indexOf('bold') > -1>>
<<set $scene.panties_type = "male">>
<<else>>
<<set $scene.panties_type = "none">>
<</if>>
<<set $scene.caged = (setup.getItemFromType("cage") != "")>>
<<applyExperience 'humiliation' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You move towards the wide-seated couch and lay across it, the soft fabric and firm cushioning putting you slightly at ease.<br>
<br>
<<printThought $player "This might actually be comfortable if I had some idea of what was going on.">><br>
<br>
You can hear <<=setup.getNpcName('npc_manager', 'formal')>> open her desk and remove several items. The array of sounds leaves you guessing what might be coming, but you are sure you hear the ominous sound of a pair of rubber gloves stretching over her fingers. With slow, rhythmic steps you hear <<=setup.getNpcName('npc_manager', 'formal')>> approach the couch and lean down.<br>
<br>
"@@.npc_manager;My my, someone is still so hard... and yet so disappointing.@@"<br>
<br>
Your cheeks flush with shame and then surprise as <<=setup.getNpcName('npc_manager', 'formal')>>
<<if $scene.panties == "">>
firmly grasps your <<getWordMyPenis $player>>.
<<else>>
slides her hands under your panties and firmly grasps your <<getWordMyPenis $player>>.
<</if>>
As you lift your head forward you catch her glaring at you and feel her free hand lightly slap your balls. "@@.npc_manager;Head back sissy,@@" she says sternly as you lower your head.
<<if $scene.caged>>
"Safe" in your chaste prison you can feel nothing save her fingers lightly digging into the sensitive flesh of your balls...
<<else>>
You can feel her latex covered fingers grip you tightly, squeezing your <<getWordMyPenis $player>> and sliding her hand up and down.
<</if>>
<br><br>
<<if $scene.panties_type=="female" || $scene.panties_type=="modest">>
"@@.npc_manager;You have been a good boy to wear such feminine panties for me. A little bit plain for my taste, but superior to what you used to wear. They stretch so nicely, <<if $scene.caged>>I could even stroke your <<getWordMyPenis $player>> without taking them off... if you were not caged, of course<<else>>I can even stroke your <<getWordMyPenis $player>> without taking them off!<</if>>!@@"
<<elseif $scene.panties_type=="cute">>
"@@.npc_manager;You have been a good boy to wear such cute panties for me. They stretch so nicely, <<if $scene.caged>>I could even stroke your <<getWordMyPenis $player>> without taking them off... if you were not caged, of course<<else>>I can even stroke your <<getWordMyPenis $player>> without taking them off!<</if>>!@@"
<<elseif $scene.panties_type=="bold">>
"@@.npc_manager;<<=$player.first_name>>, it is not your place to wear such things.@@"<br>
<br><<=setup.getNpcName('npc_manager', 'formal')>> pulls at the seam of your panties letting them snap back.<br>
<br>
"@@.npc_manager;I want my sissy in a cute pair of panties, preferably pink. Frankly, your outfit paints you as a bit of an aggressive slut and I am not fond of that at all, understood?@@"
<<elseif $scene.panties_type=="male">>
"@@.npc_manager;<<=$player.first_name>>, what have I said about your uniform? This,@@" she says pulling harshly on your underwear, "@@.npc_manager;is unacceptable. You are to dress in a pink bra and pink pair of panties as specified in your contract. If you plan to continue disobeying my orders you can expect your punishment to be severe.@@"
<<elseif $scene.panties_type=="sissy">>
"@@.npc_manager;Now these are truly perfect for a sissy such as yourself. Nice and pink and with all the soft, cute lace? I bet they feel as good as they look, all tight and snug against your soft skin. <<if !$scene.caged>>You know you are lucky I can stroke you without taking them off... and it would really be such a shame to take them off.<</if>>@@"
<</if>>
<br><br>
A moan escapes your lips. You can't tell if it is one of pain, pleasure or embarrassment.<br>
<br>
<<if $scene.caged>>
She snorts in disgust. "@@.npc_manager;You really are just a whorish slut, pathetic.@@"
<<else>>
"@@.npc_manager;Still, you need to learn that I will not tolerate a hard <<getWordMyPenis $player>> anywhere in my office.@@"<br>
<br>
<<if $scene.panties == "">>
You feel her speed increase, as your <<getWordMyPenis $player>> helplessly twitches up and down.<br>
<<else>>
You feel her speed increase, the side of your panties rubbing roughly against your <<getWordMyPenis $player>>.
<</if>>
<br><br>
"@@.npc_manager;And as you have failed to maintain this on your own you force me to take this manner into my own hands.@@"
<</if>>
<br><br>
Her hand pulls away from your <<getWordMyPenis $player>> and gives your balls two quick squeezes.<br>
<br>
"@@.npc_manager;On your side <<=$player.first_name>>, facing away from me.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_3" "Comply and move to your side" 120>>]
</div>/*#
#desc: phase 1 ending - manager fingers/uses a dildo on your ass
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.willpower = false>>
<<set $scene.plugged = setup.getItemFromType('plug')>>
<<setThreshold 'anal' 'secretary_anal' 'stage1_end' true>>
<<if $scene.plugged == "">>
<<applyExperience 'anal' 4 'almost' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<</if>>c
<<set $player.timebased.horny = setup.changeHorny($player,25)>>
<<set _resist = false>>
<<if $player.timebased.fatigue<=70>>
<<set _resist = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You're too <<if $scene.caged>>intimidated<<else>>aroused<</if>> to disobey and slide off your back and onto your side as you hear <<=setup.getNpcName('npc_manager', 'formal')>> picking something up.
<<if $scene.plugged=="">>
<<if setup.isItemTypeEquipped('panties')>>
There's a sharp snapping sound followed by a gloved finger pulling the back of your panties down, exposing your ass to <<=setup.getNpcName('npc_manager', 'formal')>>.
<<else>>
There's a sharp snapping sound followed by the feeling of a gloved finger sliding down your back, tracing down to your ass.
<</if>>
<br><br>
<<printThought $player "This can't be happening?!">><br>
<br>
Her fingers lift your top asscheek up and you feel something pressing against your puckered hole. The sudden coolness is startling, slowly spreading into a ring around your asshole and between your cheeks.<br>
<br>
"@@.npc_manager;I have been managing this division for quite some time <<=$player.first_name>> and I have learned many things about how best to deal with insubordination.@@"<br>
<br>
You can hear her body shift as one hand returns to <<if $scene.caged>>possessively holding your caged<<else>>your erect<</if>> <<getWordMyPenis $player>>, the other massaging your nervous hole.<br>
<br>
"@@.npc_manager;Some employees,@@" she says while <<if $scene.caged>>gently squeezing around<<else>>beginning to slowly stroke<</if>> your <<getWordMyPenis $player>>, "@@.npc_manager;learn best through positive motivation.@@"<br>
<br>
Her stroking intensifies as her grip tightens, her other hand continuing to finger your asshole.<br>
<br>
"@@.npc_manager;Others, however, require something else. something... firmer.@@" She punctuates the statement by <<if $scene.caged>>digging her nails into your exposed sack, giving just enough pressure for you to<<else>>rubbing her thumb around the head of your <<getWordMyPenis $player>>, pressing into it firmly until you<</if>> let out a soft cry of pain.<br>
<br>
"@@.npc_manager;You, <<=$player.first_name>>, need to be taught the values of restraint. Self control is a fundamental pillar of society.@@"<br>
<br>
It's as if you can hear the smile spreading across her lips and a chuckle behind her words to leave you with a foreboding sense of dread. Your fears are answered by her finger at your backside slowly pushing into your moist hole. You tense up only for your ass to be chided with a hard swat.<br>
<br>
"@@.npc_manager;I understand you are nervous <<=$player.first_name>> but this is just another form of discipline, another part of the contract you willingly signed. Remember <<=$player.first_name>> this is what you wanted. I am not commanding you to relax but I would highly recommend that you do so.@@"<br>
<br>
Her lecture finished, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her probing, pushing in and out with a steady rhythm. You do your best to relax but the sensation is so alien and strange that you find it hard to comply. True to her word, <<=setup.getNpcName('npc_manager', 'formal')>> continues her assault, sliding the finger in further and further with every thrust. As you muster the courage to beg her to stop, the grip around your <<getWordMyPenis $player>> softens. Her hand begins to glide steadily up and down, squeezing a soft moan from between your lips. You can hear your captor giggle with satisfaction, her finger plunging deeper into your asshole.<br>
<br>
"@@.npc_manager;It sounds as though someone likes this. Does my SISSY secretary enjoy having her asshole fingered?@@"<br>
<br>
You contemplate on how best to answer as her finger moves deeper, rubbing against what feels like the very root of your <<getWordMyPenis $player>>. You shriek in a mix of discomfort and delight, pleasurable sensations vibrating through you.<br>
<br>
"@@.npc_manager;Oh my, perhaps you are enjoying this too much. Should I stop rubbing your prostate <<=$player.first_name>>?@@"<br>
<br>
It takes several moments for you to concentrate enough to stutter out a response, especially as <<=ps(setup.getNpcName('npc_manager', 'formal'))>> does not seem interested in relenting.<br>
<br>
<<if _resist>>
[<<moveTo "event_manager_stage1_end_punishment_3_willpower" "Focus all your willpower and ask her to stop." 240>>]<br>
<<else>>
[@@.link_locked;You don't feel like you've got enough strength left in you to resist at all@@]<br>
<</if>>
<<set _text = 'Say ,"N-No '+ps(setup.getNpcName('npc_manager', 'formal'))+', p-please continue..."'>>
[<<moveTo "event_manager_stage1_end_punishment_4" _text 240>>]
<<else>>
<<if setup.isItemTypeEquipped('panties')>>
There's a sharp snapping sound followed by a gloved finger pulling the back of your panties down, exposing your plugged ass to <<=setup.getNpcName('npc_manager', 'formal')>>. There's no way she'll miss the... Her fingers lift your top asscheek up and you can hear <<=setup.getNpcName('npc_manager', 'formal')>> chuckle softly.
<<else>>
There's a sharp snapping sound followed the feeling of a gloved finger sliding down your back, exposing your plugged ass to <<=setup.getNpcName('npc_manager', 'formal')>>. There's no way she'll miss the... Her fingers lift your top asscheek up and you can hear <<=setup.getNpcName('npc_manager', 'formal')>> chuckling softly.
<</if>>
<br><br>
"@@.npc_manager;You are just so full of surprises <<=$player.first_name>>. Though I cannot say I am displeased by this one. No, this is a very nice discovery indeed.@@"<br>
<br>
You feel her fingers probing at the plug, pushing and pulling against it. In a matter of seconds you're moaning and gently bucking your ass, trying to match the motions of her fingers. Steadying your hips with one hand her fingers grip the base of the plug and begin to gently pull. "@@.npc_manager;Relax your ass sissy.@@" You comply, taking a deep breath through your nose and pushing out with your ass. In one smooth motion the plug slides from your asshole, leaving you feeling empty and momentarily gapey.<br>
<br>
You hear <<=setup.getNpcName('npc_manager', 'formal')>> stand and listen to the clicking of her high heels as she walks to her desk, pulls open a drawer and returns to the couch. Her hand returns to you ass and you feel something cool sliding along your ass crack, pressing against your puckered hole. At first it feels like <<=setup.getNpcName('npc_manager', 'formal')>> is replacing your plug but if feels bigger than you are accustomed.<br>
<br>
"@@.npc_manager;Do not worry <<=$player.first_name>>, just relax a little more,@@" she says reassuringly, slowly pushing the whole time. You feel full again. Very full. You moan out as her dildo reverses course and then begins to slide in and out of your ass.<br>
<br>
"@@.npc_manager;I have been managing this division for quite a while now <<=$player.first_name>> and I have learned a few things about how to deal with... difficult employees.@@"<br>
<br>
You can feel her body shift on the couch as a gloved hand returns to <<if $scene.caged>>grasping your cage<<else>>your erect <<getWordMyPenis $player>><</if>>, the other slowly moving the dildo back and forth in your eager hole.<br>
<br>
"@@.npc_manager;Some,@@" she says while <<if $scene.caged>>gently squeezing your <<getWordMyPenis $player>><<else>>beginning to slowly stroke your <<getWordMyPenis $player>><</if>>, "@@.npc_manager;learn best through positive motivation.@@"<br>
<br>
Her stroking intensifies as her grip tightens, her other hand continuing its steady pounding.<br>
<br>
"@@.npc_manager;Others require something else, something... firmer.@@"<br>
<br>
"@@.npc_manager;Others, however, require something else. something... firmer.@@" She punctuates the statement by <<if $scene.caged>>digging her nails into your exposed sack, giving just enough pressure for you to<<else>>rubbing her thumb around the head of your <<getWordMyPenis $player>>, pressing into it firmly until you<</if>> let out a soft cry of pain.<br>
<br>
"@@.npc_manager;You, <<=$player.first_name>>, need to be taught the values of restraint. Self control is a fundamental pillar of society.@@"<br>
<br>
It's as if you can hear the smile spreading across her lips, leaving you with a foreboding sense of dread. In one smooth motion she pulls the dildo from your ass and rams it back in, leaving you shrieking from the sudden pounding intrusion.<br>
<br>
"@@.npc_manager;You have to understand <<=$player.first_name>> that this is just another form of discipline, another part of the contract you willingly signed. I am not commanding you to relax but I would highly recommend you do so.@@"<br>
<br>
Her lecture finished, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her thrusting, moving the dildo in and out with a steady rhythm. With a sigh of arousal and contentment you find it easier to relax than you would have expected, grateful for you decision to wear the plug this morning. True to her word, <<=setup.getNpcName('npc_manager', 'formal')>> continues her assault, pulling the dildo far enough that the head just barely stays in your ass and then thrusting it in all the way. The grip around your <<getWordMyPenis $player>> softens and her hand begins to glide steadily up and down, squeezing a soft moan from between your lips. You can hear <<=setup.getNpcName('npc_manager', 'formal')>> giggle with satisfaction before plunging the dildo deeper into your asshole.<br>
<br>
"@@.npc_manager;It sounds as though someone likes this. Does my SISSY secretary enjoy having her asshole fucked?@@"<br>
<br>
You contemplate on how best to answer as the dildo continues pounding into you only to feel a gentle vibrating against your prostate. You squeal in a mix of shock, discomfort, and delight, the sensation running through to your <<getWordMyPenis $player>> like a jolt of lightning.<br>
<br>
"@@.npc_manager;Oh my, perhaps you are enjoying this too much. Should I stop fucking your ass <<=$player.first_name>>?@@"<br>
<br>
It takes several moments for you to concentrate enough to gasp a reply, especially since <<=ps(setup.getNpcName('npc_manager', 'formal'))>> does not seem interested in relenting.<br>
<br>
<<if _resist>>
[<<moveTo "event_manager_stage1_end_punishment_3_willpower" "Focus all your willpower and ask her to stop." 240>>]<br>
<<else>>
[@@.link_locked;You don't feel like you've got enough strength left in you to resist at all@@]<br>
<</if>>
<<set _text = 'Say ,"N-No '+ps(setup.getNpcName('npc_manager', 'formal'))+', p-please continue..."'>>
[<<moveTo "event_manager_stage1_end_punishment_4" _text 240>>]
<</if>>
</div>/*#
#desc: phase 1 ending - ask her to stop fingering/dildo'ing your ass
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.willpower = true>>
<<set $player.willpower.bonus+=1>>
<<addPopUpText "Your willpower has been increased.">>
<<applyFatigue $player 30>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.plugged!="">>
Getting your ass pounded relentlessly by <<=setup.getNpcName('npc_manager', 'formal')>> with a dildo does not really help you with your decision.
<<else>>
Getting your ass fingered relentlessly by <<=setup.getNpcName('npc_manager', 'formal')>> does not really help you with your decision.
<</if>>
Nonetheless, you focus your thoughts enough to calm down. Even though you feel like you're in heaven right now, something in you resists. A faint spark of willpower you thought was lost in these last few days manages to ignite a fire of resistance. You do the unspeakable. You ask her to stop. For a moment the world stands still. <<=setup.getNpcName('npc_manager', 'formal')>> looks at you with disbelief, but more important, if only for a moment, she looks at you like you're a real person, not some dressed up plaything.<br>
<br>
As swiftly as her surprise blossomed her expression hardens once more "@@.npc_manager_dom;What was that sissy? I could not hear you over your moaning like a whore in heat!@@" It only took her a microsecond to regain her composure and go into full on dominant mode, the dildo not slowing down in the slightest, rather speeding up working on your poor boypussy like there's no tomorrow.<br>
<br>
Again, between the moaning and panting you ask her, beg her, to stop.<br>
<br>
She stops in an instant. Again her facade crumbles, but only for the fraction of a second. You wonder what's underneath this, if she's only acting her part in a play as well, but this does not seem to be the right time to figure this out. She pulls
<<if $scene.plugged!="">>
the dildo
<<else>>
her finger
<</if>>
out of your anus and wipes it with a paper towel.<br>
<br>
"@@.npc_manager;Well, someone put on his big boy pants today. I honestly did not expect that. Colour me Impressed. Well, perhaps not impressed, but at least surprised. Still, this is part of your punishment. And as far as I can see there still remains the problem with your unimpressive <<getWordMyPenis $player>> down there. I want this problem solved, as of right now. So, if you want to keep this job you are going to masturbate. Right here, right now.@@"<br>
<br>
You can feel something odd about this situation.
<<if setup.getTotalValue('smart')>=7>>
Normally you would get another rule, a threat, another step in the dance. A direct ultimatum to lose your job for not playing along with her dominant behaviour is rather unusual for her. You assume there's more behind it then you can figure out right now, so you decide to play along with it. And because of that, you don't mind that much masturbating in front of her.
<<else>>
But you're unable to figure it out in the brief moments of time you have to think. Since you want to keep the job... for some reason, you decide its better to give in, no matter how humiliating this will be.
<</if>>
You agree to her conditions.<br>
<br>
"@@.npc_manager;Well, since we have no sissy spanking material around here, I assume I can let you use this. As a matter of fact, I insist!@@" she says, while handing you
<<if $scene.plugged!="">>
the dildo that was pounding your ass mere moments ago.
<<else>>
a big, black dildo.
<</if>>
<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_3_willpower_2" "Take the dildo and start masturbating" 360>>]
</div>/*#
#desc: phase 1 ending - manager has you ride dildo since you asked her to stop
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if setup.getTotalValue('stamina')>=5>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/lolatrap_masturbate_01.mp4">>
<div id="invframe" class="scrolltext">
Your <<getWordAnus $player>> is still wet from before,
<<if setup.getTotalValue('anal')>4>>
you let the rather enormous artificial <<getWordPenis $player>> slide in without much troubles.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, I'm this accustomed to using my <<getWordAnus $player>>, that I can fit a massive <<getWordPenis $player>> like this in there without any problems.">>
<<else>>
still, you're having trouble fitting such an enormous artificial <<getWordPenis $player>> in it. You push hard and try to relax, and after some while you manage to push it past your sphincter. As it sinks into you you let out a moan like a whore in heat.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, it is ripping me apart. Ah!">>
<</if>>
<br><br>
You push the dildo in and out, but <<=setup.getNpcName('npc_manager', 'formal')>> does not seem to be pleased with that solution.<br>
<br>
"@@.npc_manager;Ride it. Ride it like the little sissy whore you are. And do not even think about touching that <<getWordMyPenis $player>> of yours, you are going to cum like the sissy you are!@@"<br>
<br>
As ordered you start to ride the dildo. Balancing the base of the dong on the floor you start slowly moving your pelvis downwards. You feel every centimeter of the artificial <<getWordPenis $player>> filling you up, until there is no more space left in you and you feel about to split apart. But still, you continue. Rising back up, leaves a void in you that you now feel eager to fill up again. Moving up and down like a whore in heat is unlike anything you've ever felt before. With each thrust the dildo impales your <<getWordAnus $player>> deeper until you can feel, and hear, your asscheeks slapping on the floor beneath you.<br>
<br>
<<if setup.getTotalValue('stamina')>=5>>
Your anus feels like it's on fire, but you're able to cope with it. The rhythmic slamming stimulates you beyond your wildest dreams.<br>
<br>
"@@.npc_manager;You like this, don't you, sissy?@@", she taunts as the dildo slams into you again. "@@.npc_manager;You simply love having your virgin <<getWordAnus $player>> violated like a slutty bitch!@@"<br>
<br>
You're unable to answer, but your moaning contains more truth than your words ever could. You can feel your orgasm approaching at a very rapid pace with each new thrust. With a final gasp you spray your load all over the floor.
<<else>>
You are already low on stamina, and this is taking its toll on you. Unable to cope with the pain, you slow down. Just a little bit. Begging to your mistress to let you finish by hand does you no good at all. Glaring at you with cold eyes, <<=setup.getNpcName('npc_manager', 'formal')>> stands over you. A sinister smile on her lips is all you get as a warning.<br>
<br>
"@@.npc_manager;Here, let me give you a helping hand@@", is her explanation, before putting her hands on your shoulders and pushing you down with a force you did not expect of a woman of her physique. The sudden impalement on the dildo finally pushes you over the edge. With a final gasp you spray your load all over the floor.
<</if>>
<br><br>
[<<moveTo "event_manager_stage1_end_punishment_4" "Continue." 360>>]<br>
<br>
<a target="_blank" href="https://twitter.com/lolatrap">(EXT/NSFW) Special Thanks to Lolatrap</a>
</div>/*#
#desc: phase 1 ending - manager locks you in chastity for the first time
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_punishment' true>>
<<if setup.getTotalValue('submission')>5>>
<<applyExperience 'submission' 5 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.timebased.horny = setup.changeHorny($player,100)>>
<<set $em_cum = setup.canPlayerCum($player,20)>>
<<set $player.flags.fuckedbydildo = true>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
/% note: $npc_manager.stage will be set to 2 on your next visit to work when you get the new plaque %/
/%<<useClothSetPush 'tmp'>>
<<removeAllClothing $player $now true>>%/
<<if setup.getItemFromType("cage") == "">>
<<addItem 'c_cage_pink'>>
<<wearItem $player $now 'c_cage_pink' true>>
<<manipulateItem $player $now "c_cage_pink" "lock" true>>
<</if>>
/%<<useClothSetPop 'tmp' $player $now>>%/
<<if !($currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished)>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<if $player.flags.fem_style.chastity == "">>
<<set $player.flags.fem_style.chastity = "forced">>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_punishment'
5
'event_psychiatrist_session_manager_2'
false
'theme_psychiatrist_manager_header'
>>
<<set _x = setup.addManagerEndlessTask2($now, false, false, false)>>
<<set $npc_manager.stage = 2>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.caged>>
<<if $scene.willpower>>
You kneel on the floor, impaled by the dildo, with your eyes shut, gasping through slow heavy breaths, savoring the sensation of release.
<<else>>
Your words trail off into high pitched moans as <<=setup.getNpcName('npc_manager', 'formal')>> picks up her pace.<br>
<br>
"@@.npc_manager;Very good <<=$player.first_name>>. I am glad you understand and accept that this is proper treatment for a SISSY secretary.@@"<br>
<br>
Her rhythm intensifies and, as if instinctively, you match it with your moaning. Before long you feel your vision begin to blur and in a blissful state of ecstasy you cry out as your <<getWordMyPenis $player>> erupts, spewing out a seemingly endless stream of cum. Collapsing backwards you lay there with your eyes shut, gasping through slow heavy breaths, savoring the sensation of release.
<<if $scene.plugged!="">>
<<=setup.getNpcName('npc_manager', 'formal')>> removes the dildo, leaving you empty for a mere moment before unceremoniously reinserting your plug.
<</if>>
<br><br>
Your orgasm finished you turn your head to thank <<=setup.getNpcName('npc_manager', 'formal')>> and feel her <<if $scene.panties_type=="sissy">>pull down the front of your frilly panties and <</if>>gently pat your caged <<getWordMyPenis $player>>.
<</if>>
<br><br>
Once more she graces you with a smile of approval as you stare at your still-imprisoned self.<br>
<br>
"@@.npc_manager;You were already wearing it, it is true, but well... may I formally I present your newest sissy fashion accessory and now mandatory component of your uniform.@@"
<<else>>
<<if $scene.willpower>>
You kneel on the floor, impaled by the dildo, with your eyes shut, gasping through slow heavy breaths, savoring the sensation of release. Without any warning you feel <<if $scene.panties_type=="sissy">>her pull down the front of your frilly panties and <</if>>something cold slide up and over your flaccid penis.
<<else>>
Your words trail off into high pitched moans as <<=setup.getNpcName('npc_manager', 'formal')>> picks up her pace.<br>
<br>
"@@.npc_manager;Very good <<=$player.first_name>>. I am glad you understand and accept that this is proper treatment for a SISSY secretary.@@"<br>
<br>
Her rhythm intensifies and, as if instinctively, you match it with your moaning. Before long you feel your vision begin to blur and in a blissful state of ecstasy you cry out as your <<getWordMyPenis $player>> erupts, spewing out a seemingly endless stream of cum. Collapsing backwards you lay there with your eyes shut, gasping through slow heavy breaths, savoring the sensation of release.
<<if $scene.plugged!="">>
<<=setup.getNpcName('npc_manager', 'formal')>> removes the dildo, leaving you empty for a mere moment before unceremoniously reinserting your plug.
<</if>>
<br><br>
Your orgasm finished you turn your head to thank <<=setup.getNpcName('npc_manager', 'formal')>> and feel her <<if $scene.panties_type=="sissy">>pull down the front of your frilly panties and <</if>>slide something cold up and over your flaccid <<getWordMyPenis $player>>.
<</if>>
<br><br>
You glance down to see a wide grin spread over <<=setup.getNpcName('npc_manager', 'formal')>> face as she closes the lock on the clear, pink chastity cage that now encases your privates. You can see a small key suspended from a chain necklace.<br>
<br>
"@@.npc_manager;<<=$player.first_name>> may I present your newest sissy fashion accessory and now mandatory component of your uniform.@@"
<</if>>
<br><br>
<<if $scene.willpower>>
She takes a moment to dab her gloved hand in the pile of cum you've spilled on the floor.
<<else>>
She takes a moment to dab her gloved hand in the pile of cum you've spilled on her couch.
<</if>>
<br><br>
<<switch $player.flags.fem_style.chastity>>
<<case "forced">>
"@@.npc_manager;You see <<=$player.first_name>>, this here,@@" she says, raising her cum spattered hand, "@@.npc_manager;was your motivation, while this,@@" she taps the head of your chastity cage, "@@.npc_manager;is how I will enforce your self restraint. You have proven to me that you are incapable of maintaining self control and thus I had little choice but to step in.@@"<br>
<br>
"@@.npc_manager;Every day before leaving for home you will enter my office and request the key. If you have proven to be obedient and efficient in your work I will give you the key for the evening. When you arrive at work the following morning, I expect the cage to be locked around your shriveled penis. You will leave the key on a dish at the corner of your desk for me to gather when I arrive. If you neglect to request your key at the end of the day you will not be unlocked. Under no circumstances will you call me after hours, begging to be freed. You will find the outcome far less pleasant than merely remaining locked.@@"
<<case "money">>
"@@.npc_manager;Alright, whore,@@" She states, the blunt word instantly re-focusing your attention. "@@.npc_manager;You heard me - what other word is there for someone who sells off control of their privates? You are a foolish sissy whore but I know just how to whip you into the more proper shape of an obedient SISSY secretary. All you have to do is obey me utterly.@@"<br>
<br>
You tremble as she punctuates her words by wrapping her hand around your still-imprisoned member.<br>
<br>
"@@.npc_manager;For now, you will remain locked away and safe, caged at all times, but particularly at the office. As soon as your trial is over, however... well, I expect you to bring the key in and offer it to me as part of your morning inspection. If you are good... I may let you take it home with you, but during the day you will remain locked and safe.@@"<br>
<br>
<<printThought $player "Is this real? All I wanted was some extra money!">>
<<default>>
ERROR: unhandled player.flags.fem_style.chastity: <<=$player.flags.fem_style.chastity>>
<</switch>>
<br><br>
Pausing, her gaze shifts to look you directly in the eye.<br>
<br>
"@@.npc_manager;Do you understand this modification to your routine?@@"<br>
<br>
<<printThought $player "She only asked if I understand, she just assumes my agreement...">><br>
<br>
<<set _text = 'Blush and shyly respond, "Yes '+ps(setup.getNpcName('npc_manager', 'formal'))+'"'>>
[<<moveTo "event_manager_stage1_end_punishment_5" _text 360>>]
</div>/*#
#desc: phase 1 ending - manager feeds you your cum
#status: FINISHED 0.4.0.0
#*/
<<if setup.checkOutsideDecency($player) && setup.checkPlayerDressed($player)>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_punishment_6">>
<</if>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.getTotalValue('cum')<1>>
<<setThreshold 'cum' 'secretary_cum' 'cumeater' true>>
<<else>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<set $scene.cum = false>>
<<if $player.swalloeddowncum || $player.swallowedothercum>>
<<set $scene.cum = true>>
<</if>>
<<if $player.swalloeddowncum == false>>
<<set $player.swalloeddowncum = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
She smiles and you feel a moment of relief.<br>
<br>
"@@.npc_manager;Good. Now one last thing before you can get dressed,@@" she says, moving her cum covered hand towards your face, "@@.npc_manager;clean up your mess, sissy.@@"<br>
<br>
<<if $scene.cum>>
You eagerly open your mouth for <<=setup.getNpcName('npc_manager', 'formal')>> fingers. They gently slide into your mouth and you busy about your task, lapping up as much cum as your tongue can find. You feel your <<getWordMyPenis $player>> already straining in its cage as you lovingly suck off each individual finger. <<=setup.getNpcName('npc_manager', 'formal')>>' hand retreats, gathering up another helping and bringing it to your waiting mouth. You obediently open your mouth and continue your clean up. After a few more repetitions <<=setup.getNpcName('npc_manager', 'formal')>> stands, strips off the gloves drops them in the trash before returning the bottle of lube to her desk drawer.
<<elseif setup.getTotalValue('cum')>0>>
You hesitate for a moment, watching her smile begin to shift, finally leaning forward, opening your mouth for her waiting fingers. They quickly glide past your lips and you busy about your task, sliding your tongue and lips across <<=setup.getNpcName('npc_manager', 'formal')>> fingers. You're surprised by the taste, or maybe more by the fact that you don't seem to mind it. The flavour isn't bad at all, in fact, it's almost nice...
<<else>>
You hesitate, watching her lips twist into a cruel smile. It was one thing to have
<<if !$scene.willpower>>
<<if $scene.plugged=="">>
your ass fingered
<<else>>
your ass fucked with her dildo
<</if>>
<<else>>
fucked yourself with her dildo
<</if>>when you were so desperately horny, but you're not sure you can stomach eating your own cum. As you begin to protest, <<=setup.getNpcName('npc_manager', 'formal')>>' fingers firmly slide between your lips. You struggle to ignore the taste but manage to refrain from gagging. This is so humiliating...
<</if>>
<br><br>
Still kneeling you shudder in submissive shock at what all has just happened.<br>
<br>
"@@.npc_manager;Come on, now, stand up and get dressed, your job is a SISSY secretary, not just spending time on your knees.@@"
</div>/*#
#desc: phase 1 ending - leave her office
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName('npc_manager', 'formal')>> office, satisfied, confused and alarmed.
<<if $scene.plugged=="">>
You're surprised and a little ashamed of how much you enjoyed having your prostate fingered.<br>
<br>
<<printThought $player "Maybe I could try that at home...">>
<<else>>
You move back to your desk, squirming as you sit down. The ache from the plug once more occupying your ass a constant reminder of both the abuse and satisfaction inflicted upon you.<br>
<br>
<<printThought $player "I should see if I can find a dildo at the mall.">>
<</if>>
<br><br>
You can't help but attempt to grasp your <<getWordMyPenis $player>> in disbelief. It's not that it feels uncomfortable or painful. What troubles you is how freely you allowed yourself to be put in this position. Even more concerning than that, however, is how your <<getWordMyPenis $player>> grows hard when you recall how <<=setup.getNpcName('npc_manager', 'formal')>> had her way with you.<br>
<br>
<<if $player.flags.fem_style.chastity != "money">>
<<printThought $player "I better make sure to have the key before I leave today.">><br>
<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start Working" 30 '<<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: enter her office and submit to finish phase 1 for voluntary
#status: RELEASED 0.6.0.0
#*/
<<setScene>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _noPanties = false>>
<<set _changedOutfit = false>>
<<if (setup.isBodySlotVisible('penis'))>>
<<set _noPanties = true>>
<<elseif setup.checkWornListTag(["underwear","stockings","garter"],"or")>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_2">>
<<elseif setup.checkWornListSpecific(["panties","stockings"])==true>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_2">>
<</if>>
<<if $roomchange == true>>
<<set $event_manager_daily_check_stage_2_bra = setup.getItemFromType("bra")>>
<<set $event_manager_daily_check_stage_2_panties = setup.getItemFromType("panties")>>
<<set $event_manager_daily_check_stage_2_stockings = setup.getItemFromType("stockings")>>
<<useClothSetPush 'em_s2'>>
<</if>>
<<if _noPanties>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<decrementEmotion 'satisfaction' 'npc_manager' 1>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_1_angered">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You enter the office of your superior <<=setup.getNpcName('npc_manager', 'formal')>>. You can tell in an instance that something is different about today, and not just because of the weight of the cage dangling between your legs.<br>
<br>
Leaning against the front of her desk she smiles at you, nodding approvingly before motioning you forward. "@@.npc_manager;So, my dear... you did it. You locked yourself up without my even asking you... Truely this is a wondrous act, a precocious move that proves without a doubt that you were meant for the position I am training you for. More to the point for the moment, however, is that it means that you deserve a reward.@@"<br>
<br>
You tremble slightly, looking bashfully downward as you find yourself unable to hold her dominant gaze.<br>
<br>
"@@.npc_manager;Once again you surprise and delight, able to communicate with a mere glance rather than waste words...@@"<br>
<br>
<<printThought $player "What have I done?">><br>
<br>
She speaks your instructions but, on some level, you already knew what was coming. All of her teasing has been leading to this moment. That's her thing. She teases you all the time. As you find yourself lowering to the floor you can't tell which thought is scarier - how effective it has been... or that this are surely even more escalations to come...<br>
<br>
"@@.npc_manager;Come, crawl over and kiss my feet, seal your commitment...@@"<br>
<br>
Your heart pounds in your chest as you feel faint, already on your hands and knees as you up, up from her heels. up her long and smooth stocking-accentuated legs. Continuing up you can peek under her rather scandalously short leather skirt, to spy the garters holding up the sleek stockings. <<if $npc_technician.flags.dataservice_encounter.looked_up_skirt>>Suddenly mindful of the last time you peeked up a girls skirt you <<else>>You <</if>>look away, your gaze gliding swiftly back down her legs to stare at her hypnotically swaying red pumps. Pointed and hot you estimate they sport nearly 15 cm stiletto heels.<br>
<br>
<<if setup.getTotalValue('feminization')<5>>
<<printThought $player "Those look impossible to walk in...">>
<<elseif setup.getTotalValue('feminization')<7>>
<<printThought $player "I would totally stumble in those...">>
<<else>>
<<printThought $player "I would totally stumble in those... but I maybe I could try wearing more reasonable heels someday?">>
<</if>>
<br><br>
"@@.npc_manager;Ah, ah. First; strip, down to your underwear shall be... sufficient.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_1_a" "Remove everything besides your underwear.">>]
<<hint $options "You can still do this manually.">>
</div>/*#
#desc: enter her office to submit to finish phase 1
#status: FINISHED 0.4.0.0
#*/
<<setScene>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _noPanties = false>>
<<set _changedOutfit = false>>
<<if (setup.isBodySlotVisible('penis'))>>
<<set _noPanties = true>>
<<elseif setup.checkWornListTag(["underwear","stockings","garter"],"or")>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_2">>
<<elseif setup.checkWornListSpecific(["panties","stockings"])==true>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_2">>
<</if>>
<<if $roomchange == true>>
<<set $event_manager_daily_check_stage_2_bra = setup.getItemFromType("bra")>>
<<set $event_manager_daily_check_stage_2_panties = setup.getItemFromType("panties")>>
<<set $event_manager_daily_check_stage_2_stockings = setup.getItemFromType("stockings")>>
<<useClothSetPush 'em_s2'>>
<</if>>
<<if _noPanties>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<decrementEmotion 'satisfaction' 'npc_manager' 1>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_1_angered">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You slowly enter the office of your superior <<=setup.getNpcName('npc_manager', 'formal')>>. Her official title may be Director of Human Resources but, at least for you, referring to her as Mistress might be more accurate. When you took on this job offer a few days ago you had no idea of the ride you were in for. Would you have accepted the offer if you had? The fact you struggle to figure out the answer to that question has your heart beating faster, like it's trying to escape your chest.<br>
<br>
<<printThought $player "Am I really going to do this?">><br>
<br>
Your hand is still on the door even after you step through and close it behind you. For some reason you're unable to let go of the handle. <br>
<br>
<<printThought $player "If I let go... will there be any going back?">><br>
<br>
You can sense yourself at a threshold; if you let go you will stay in Wonderland, and find out how deep the rabbit hole really goes. And from where you're standing now it goes down quite a ways... and at the end of it your queen awaits. You gulp, your manager is definitely kinder than the Red Queen from the story. Kinder... but far more calculating.<br>
<br>
You shake your head, pulling yourself together and yanking your hand away from the handle. Your brief hesitation does not elude your Mistress' keen eye. She is sitting on her leather chair, legs crossed, her feet swaying side to side as if to tease you. No. Not as if. She teases you. That's her thing. She teases you all the time. And all of it, everything she has had you do thus far has been lead up to this point. Unable to meet her gaze your eyes trace up her from her beautiful heels. Her long and smooth legs are accentuated by black nylon stockings. Continuing up you can peek under her rather scandalously short leather skirt, to spy the garters holding up the sleek stockings. <<if $npc_technician.flags.dataservice_encounter.looked_up_skirt>>Suddenly mindful of the last time you peeked up a girls skirt you <<else>>You <</if>>look away, your gaze gliding swiftly back down her legs to stare at her hypnotically swaying red pumps. Pointed and hot you estimate they sport nearly 15 cm stiletto heels.<br>
<br>
<<if setup.getTotalValue('feminization')<5>>
<<printThought $player "Those look impossible to walk in...">><br>
<<elseif setup.getTotalValue('feminization')<7>>
<<printThought $player "I would totally stumble in those...">><br>
<<else>>
<<printThought $player "I would totally stumble in those... but I maybe I could try wearing more reasonable heels someday?">><br>
<</if>>
<br>
You recall that you are expected to strip down to your underwear.<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_1_a" "Remove everything besides your underwear.">>]
<<hint $options "You can still do this manually.">>
</div>/*#
#desc: tried to submit to end phase 1, but she's angry
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkOutsideDecency($player)>>
<<initRoom>>
<<moveTo "room_office_after_work">>
<</if>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 10 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager_dom;<<=$player.first_name>>, put your underwear back on at once!@@", <<=setup.getNpcName('npc_manager', 'formal')>> shouts at you.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. What have I done?">><br>
<br>
She shakes her head in disappointment. Taking a cleansing breath she continues in a much calmer tone. "@@.npc_manager;Maybe I have mistakenly put too much faith in your self control. It seems like you are, as yet, unprepared to to further advance in your training. We will try this again another time. Please put your clothes back on and close the door behind you after you leave the office.@@"<br>
<br>
You turn red with shame, not knowing what overcame you.<br>
<br>
[<<moveTo 'event_manager_stage1_end_reward_1_angered_2' 'Put your clothes back on and leave' 60>>]
</div>/*#
#desc: kicked out of her office having angered her attempting to submit to end phase 1
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<useClothSetPop 'em_s2' $player $now>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager_dom;<<=$player.first_name>>, put your underwear back on at once!@@", <<=setup.getNpcName('npc_manager', 'formal')>> shouts at you.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. What have I done?">><br>
<br>
You put your clothes back on, not knowing what overcame you. You just blew your chance. Maybe if <<=setup.getNpcName('npc_manager', 'formal')>> is forgiving enough you might get another opportunity in the future.<br>
<br>
[<<moveTo "room_office_after_work" 'Leave the office.' 30 '<<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: strip down to receive your phase 1 end reward
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes!">>
<<removeEverythingButUnderwear $player $now>>
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Stripping down in front of <<=setup.getNpcName('npc_manager', 'formal')>> has become very natural to you of late. You fold your clothes and put them on the ground next to you.<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_2" "Get on your knees" 30 >>]
</div>/*#
#desc: start to kiss manager's heels
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<setThreshold 'foot' 'secretary_foot' 'stage1_reward' true>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_reward' true>>
<<set $scene.caged = (setup.getItemFromType("cage") != "")>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Like a puppet on her strings you crawl towards <<=setup.getNpcName('npc_manager', 'formal')>>. You take a look at the soles up close. Looks rather clean, so you assume they're not the ones she wore all day long.
<<if setup.getTotalValue('humiliation')>=5>>
Not that you would have cared much for it anyway. The things you had to endure lately are nothing, compared to kissing a dirty shoe.
<</if>>
You pucker your lips and kiss the heel. Suddenly the whole situation crashes down on you like an rock slide: You've never even kissed a girl in your life before. Not like this. A small kiss on the cheek maybe, practically chaste, nothing with gusto or purpose.<br>
<br>
<<if !$player.blowvirgin>>
<<printThought $player "First I put a kiss on a big <<getWordPenis $player>>, and now on my superior's... or is that Mistress? heel. And the thought that turns me on. Like a lot. What the hell is happening to me?">>
<<else>>
<<printThought $player "My first real kiss... is a token of my submission towards my superior. Towards my Mistress. And the thought that turns me on. Like a lot. What the hell is happening to me?">>
<</if>>
<br><br>
A sinister looking smile spreads across <<=setup.getNpcName('npc_manager', 'formal')>> face, while she leans towards you as you rise after your kiss. She points with a finger at you and touches your nose softly, stroking over your cheeks and finally stops at your cheekbone where she rests her hand on your face.<br>
<br>
"@@.npc_manager;Such dedication <<=$player.first_name>>. Good. Very good indeed. But, and that is a very cute butt in your <<=setup.getItemTypeName('panties')>>, how far are you really willing to go. What is the true extend of your dedication, my dear sissy.@@", she whispers in your ear while removing the heel you just kissed to revealing her foot. Her toenails are painted red and perfectly manicured. You have a feeling you know where this is heading.<br>
<br>
"@@.npc_manager;I want you to show my feet the dedication you are supposed to show everything in life. Caress them, lick them, kiss them, love them. Lick my feet slave. Lick them and I will show you what true bliss means!@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_3" "Enthusiastically lick them because you want to." 360 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_manager_stage1_end_reward_3" "Reluctantly lick them because you have to." 300 "<<set $scene.lick=false>>">>]<br>
[<<moveTo "event_manager_stage1_end_reward_2_end" "Refuse to lick them." 180>>]
</div>/*#
#desc: refuse to lick manager's heels
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkOutsideDecency($player)>>
<<initRoom>>
<<moveTo "room_office_after_work">>
<</if>>
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
She shakes her head in disappointment. "@@.npc_manager;Maybe I have put an excess of faith in your commitment to your career. It appears that you are not yet ready to advanced your training. We will try this again another time. Please put your clothes back on and close the door behind you when you leave the office.@@"<br>
</div>/*#
#desc: lick manager's heels
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.lick>>
<<applyExperience 'foot' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>
<<set $player.timebased.horny = setup.changeHorny($player,50)>>
<<else>>
<<applyExperience 'foot' 4 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'almost' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 6 'little' $SEEN_FRIEND>>
<<set $player.timebased.horny = setup.changeHorny($player,20)>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/footjob_01.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
You lean forward and plant a kiss on her big toe. The thought of licking her feet turns you on incredibly and your <<getWordMyPenis $player>> twitches with excitement.<br>
<br>
<<printThought $player "I can't believe that I'm on my knees, licking <<=ps(setup.getNpcName('npc_manager', 'formal'))>> feet. I'm really turning into a submissive slave...">><br>
<br>
<<else>>
You lean forward and plant a kiss on her big toe. The thought of licking her feet does not really turn you on at all, but despite the humiliation you still going through with it,
<br>
<<printThought $player "I can't believe, that I'm on my knees, licking <<=ps(setup.getNpcName('npc_manager', 'formal'))>> feet. Oh <<getWordGod $player>>, this is so humiliating. This better be worth it.">><br>
<br>
<</if>>
After kissing her toe you start to use your tongue, licking her foot up and down, caressing the toes with your lips. It feels kind of strange, since she's wearing nylon stockings, but after a few moments you stop minding much. You take her foot in your hands after you've licked it over a dozen times and start to massage it, while gently sucking on her big toe. Even though <<=setup.getNpcName('npc_manager', 'formal')>> is very good at keeping her expression collected you can tell that it is partially a facade by her hands, which are clawing into the chair to tell another story. That's the one thing no one can ever take away from you, your mad foot massaging skills. After a while a soft moan escapes her lips.<br>
<br>
"@@.npc_manager;That... that is something we shall do more often in the future.@@"<br>
<br>
<<if $scene.lick>>
You silently agree.
<<else>>
You would prefer if you could skip the licking part and go straight to the message, but you don't think that is likely to be the case.
<</if>>
<<if !$scene.caged>>
But it seems the whole ordeal has excited you a lot as well, to a level where that fact is clearly visible.<br>
<<else>>
But it seems the whole ordeal has excited you a lot as well, and even though you thought you're safely locked away, a trickle of precum manage to escape your <<getWordMyPenis $player>>,
<<if setup.getItemFromType('cage')!= "">>
running down your balls.
<<else>>
staining your underwear.
<</if>>
<</if>>
<br><br>
<<printThought $player "Oh, oh...">><br>
<br>
[<<moveTo "event_manager_stage1_end_reward_4" "Continue" 300>>]
</div>/*#
#desc: transition from licking her heels to your reward
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.clothes = "">>
<<if $roomchange == true>>
<<if setup.checkVisibleClothingTag('cute')> 40>>
<<set $scene.clothes='cute'>>
<<elseif setup.checkVisibleClothingTag('bold')> 40>>
<<set $scene.clothes='bold'>>
<<elseif setup.checkVisibleClothingTag('female')> 40>>
<<set $scene.clothes='female'>>
<<elseif setup.checkVisibleClothingTag('male')> 20>>
<<set $scene.clothes='male'>>
<<else>>
<<set $scene.clothes='unknown'>>
<</if>>
<</if>>
<<if (setup.isBodySlotVisible('penis'))>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_5">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Get up!@@" she commands and you scramble to your feet without hesitation.<br>
<br>
"@@.npc_manager;Eager as ever,@@" she says with a sharp tone, while taking a good look at your predicament. There's a sudden feeling of pressure as her hand grasps your <<=setup.getItemTypeName('panties')>> covered <<getWordMyPenis $player>>.<br>
<br>
<<if $scene.caged>>
The feeling of her hand wrapped around your cage, so close and yet with the hard prison "protecting" you from her grasp... it is odd, humiliating and oh-so-arousing all at once.<br>
<br>
"@@.npc_manager;Mmmmm, I do so adore a caged sissy, so much more behaved, and obedient.@@" She gives your testicles a firm squeeze before continuing on. "@@.npc_manager;That is more than enough of that for now, remove your panties so I can give you a reward more... appropriate of a sissy.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_5_alt" "Do as instructed" 300>>]
<<else>>
"@@.npc_manager;I am surprised a sissy like you is not spanking it any opportunity you have... Well, this time I will give you the benefit of the doubt, that this is not 100% your own fault. Still, if I am accepting partial responsibility for insufficiently monitoring your... state, well then it is only right that I also propose a remedy for your problem. We simply need to find a more permanent solution to your small deficit in self control.@@"<br>
<br>
You flush as <<=setup.getNpcName('npc_manager', 'formal')>> emphasises the word small but are quickly brought back to attention as her grip tightens around your <<getWordMyPenis $player>>.
<<if setup.getItemFromType('panties') != "">>
You can feel the inside of your <<=setup.getItemTypeName('panties')>> begin to rub against your head and let out a muffled moan.<br>
<br>
"@@.npc_manager;Hmph,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a smirk. "@@.npc_manager;Free your tiny penis and lay on the couch. Stare up at the ceiling and DO NOT look away,@@" her words are emphasised by a firm squeeze around your testicles.
<<else>>
Her fingers dig into your exposed flesh and you let out a muffled moan.<br>
<br>
"@@.npc_manager;Hmph,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a smirk. "@@.npc_manager;So wanton. Lay on the couch. Stare up at the ceiling and DO NOT look away,@@" her words are emphasised by a firm squeeze around your testicles.
<</if>>
<</if>>
</div><<set $scene.panties = setup.getItemFromType('panties')>>
<<set $scene.pantieObj = setup.getItemObjFromType('panties')>>
<<if $scene.panties == "">>
<<set $scene.panties_type = "none">>
<<elseif $scene.pantieObj.tags.indexOf('modest') > -1>>
<<set $scene.panties_type = "modest">>
<<elseif $scene.pantieObj.tags.indexOf('cute') > -1>>
<<set $scene.panties_type = "cute">>
<<elseif $scene.pantieObj.tags.indexOf('bold') > -1>>
<<set $scene.panties_type = "bold">>
<<elseif $scene.pantieObj.tags.indexOf('sissy') > -1>>
<<set $scene.panties_type = "sissy">>
<<elseif $scene.pantieObj.tags.indexOf('fetish') > -1>>
<<set $scene.panties_type = "fetish">>
<<elseif $scene.pantieObj.tags.indexOf('female') > -1>>
<<set $scene.panties_type = "female">>
<<elseif $scene.pantieObj.tags.indexOf('bold') > -1>>
<<set $scene.panties_type = "male">>
<<else>>
<<set $scene.panties_type = "none">>
<</if>>
<<if $scene.panties_type=="cute">>
"@@.npc_manager;You have been a good sissy to wear such cute panties for me. They stretch so nicely, <<if $scene.caged>>I could even stroke your <<getWordMyPenis $player>> without taking them off... if you were not caged, of course<<else>>I can even stroke your <<getWordMyPenis $player>> without taking them off!<</if>>@@"
<<elseif $scene.panties_type=="bold">>
"@@.npc_manager;<<=$player.first_name>>, it is not your place to wear such things.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> pulls at the seam of your panties before letting them snap back painfully.<br>
<br>
"@@.npc_manager;I want my sissy in a cute pair of pink panties. Frankly, your outfit paints you as a bit of an impetuous slut and I am not very fond of that at all, understood?@@"
<<elseif $scene.panties_type=="male">>
"@@.npc_manager;<<=$player.first_name>>, what have I said about your uniform. This,@@" she says pulling harshly on your underwear, "@@.npc_manager;is unacceptable. You are to dress in a pink bra and pink pair of panties as dictated in your contract. I do not understand you plan but know that if you continue disobeying my orders you can expect your punishment to be quite severe.@@"
<<elseif $scene.panties_type=="sissy">>
"@@.npc_manager;Now these are truly perfect for a sissy such as yourself. Nice and pink and with all the soft, cute lace? I bet they feel as good as they look, all tight and snug against your soft skin.<<if !$scene.caged>> You know you are lucky I can stroke you without taking them off... and it would really be such a shame to take them off.<</if>>@@"
<</if>>/*#
#desc: manager starts jerking you off + teasing you about panties
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You move towards the wide-seated couch and lay across it, the soft fabric and firm cushioning putting you slightly at ease.<br>
<br>
<<printThought $player 'Is this going to be the "bliss" <<=ps(setup.getNpcName("npc_manager", "formal"))>> was talking about?'>><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> moves out of your field of vision leaving you only able to hear her open her desk and remove several items. The array of sounds leaves you guessing what might be coming, but you're sure about what comes next - the sound of a pair of latex gloves stretching over her hand. With slow, purposeful strides <<=setup.getNpcName('npc_manager', 'formal')>> approachs the couch and bends over you.<br>
<br>
"@@.npc_manager;My my, someone is still so hard... and yet so disappointing.@@"<br>
<br>
You feel your cheeks flush in shame and then surprise as <<=setup.getNpcName('npc_manager', 'formal')>>
<<if $scene.panties != "">>
slides her hands under your panties and
<</if>>firmly grasps your <<getWordMyPenis $player>>.
You lift your head forward only for her to glare back at you, her free hand lightly slaping your balls. "@@.npc_manager;Head back sissy,@@" she says sternly and you lower your head. You can feel her latex covered fingers grip you tightly, squeezing your <<getWordMyPenis $player>> as her hand moves up and down.<br>
<br>
<<include stage1_reward_panty_description>>
<br><br>
A moan escapes your lips, though you can't tell whether it's out of pain, pleasure or embarrassment.<br>
<br>
"@@.npc_manager;Now then, you need to learn that I will not tolerate your hard <<getWordMyPenis $player>> anywhere in my office. Before we... attend to this LITTLE failure... do you have anything to say for yourself?@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_5_forced" "Try to explain that it isn't your fault!" 120 >>]<br>
[<<moveTo "event_manager_stage1_end_reward_5_obedient" "Apologise for your failure and ask how you can do better in the future." 120>>]
</div>/*#
#desc: apologise for your horniness
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<if $roomchange == true>>
<<if $player.flags.fem_style.chastity == "">>
<<set $player.flags.fem_style.chastity = "obedient">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Mmmm, you are learning. Not trying to debate your failure or that it is somehow not your fault, merely acknowledging the error and requesting assistance so that you will do better going forward.@@"<br>
<br>
<<if $scene.panties == "">>
You feel her speed increase, moving her hand along your <<getWordMyPenis $player>>.<br>
<<else>>
You feel her speed increase, the side of your panties rubbing against your <<getWordMyPenis $player>>.<br>
<</if>>
<br>
"@@.npc_manager;Fortunately there is a very effective and... secure solution to your little difficulty, but for now you can just lie back and relax. While I would prefer my secretary behaved perfectly at all times, you making mistakes, yet being so obedient and eager to improve is, in some ways, even better.@@"<br>
<br>
You feel her hand come off your <<getWordMyPenis $player>> and give your balls two quick squeezes.<br>
<br>
"@@.npc_manager;On your side <<=$player.first_name>>, facing away from me.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_6" "Comply and move to your side" 120>>]
</div>/*#
#desc: try to explain horniness isn't your fault, get chided
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<if $roomchange == true>>
<<if $player.flags.fem_style.chastity == "">>
<<set $player.flags.fem_style.chastity = "obedient">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You start to object only for her to cut you off with a sharp squeeze.<br>
<br>
"@@.npc_manager;Quiet, trying to talk your way out of your mistakes, or pawn the blame off on others is the opposite of what you should be doing.@@"<br>
<br>
She leans closer, staring you right in the eye until you can't help but flinch and look away. In response she roughly takes hold of your chin and forces you to stare up at her.<br>
<br>
"@@.npc_manager;Understand that, while I will punish errors, that is me helping your development. Failing to admit to, learn from and rectify a prior error... that would constitute a mistake, and mistakes I will deal with VERY harshly.@@"<br>
<br>
She releases the grip on your chin, her hand returning to its prior position of gripping your <<getWordMyPenis $player>>.<br>
<br>
"@@.npc_manager;Now then... moving along.@@"<br>
<br>
<<if $scene.panties == "">>
You feel her speed increase, moving her hand along your <<getWordMyPenis $player>>.<br>
<<else>>
You feel her speed increase, the side of your panties rubbing against your <<getWordMyPenis $player>>.<br>
<</if>>
<br>
"@@.npc_manager;And as you have failed to maintain an altogether simple requirement; and even gone so far as to protest it being not entirely your fault being some manner of excuse... well, you have forced me to take this matter into my own hands.@@"<br>
<br>
Her hand comes off your <<getWordMyPenis $player>> and gives your balls two quick squeezes.<br>
<br>
"@@.npc_manager;On your side <<=$player.first_name>>, facing away from me.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_6" "Comply and move to your side" 120>>]
</div>/*#
#desc: voluntary/money chastity, go straight to anal
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<if $roomchange == true>>
<<if $player.flags.fem_style.chastity == "">>
<<set $player.flags.fem_style.chastity = "obedient">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
She steps away, keeping an eye on you as she walks over to her desk to retrieve several items. The array of sounds leaves you guessing what might be coming, but you're sure about what comes next - the sound of a pair of latex gloves stretching over her hand. With slow, purposeful strides <<=setup.getNpcName('npc_manager', 'formal')>> approachs the couch and bends over you.<br>
<br>
"@@.npc_manager;You ready.@@" She states, though the tone in her voice makes it clear this is more statement than question.<br>
<br>
You feel your cheeks flush in shame and then surprise as <<=setup.getNpcName('npc_manager', 'formal')>>
<<if $scene.panties != "">>
slides her hands under your panties and
<</if>>firmly grasps your caged <<getWordMyPenis $player>>. You lift your head forward only for her to glare back at you, her free hand lightly slaping your balls. "@@.npc_manager;Head back sissy,@@" she says sternly and you lower your head. You feel her start to peel off your panties as she whispers to you.<br>
<br>
<<include stage1_reward_panty_description>><br>
<br>
A moan escapes your lips, though you can't tell whether it's out of pain, pleasure or embarrassment.<br>
<br>
"@@.npc_manager;Ah, I could sit here forever, you totally helpless, literally in the palm of my hand...@@"<br>
<br>
She meets your gaze with a smile, possessive, certainly, but also somehow... wistfully comforting. It lasts but a moment before she continues.<br>
<br>
"@@.npc_manager;I get distracted. I promised you a reward.@@"<br>
<br>
<<if $scene.cage>>
Her fingers trace down the top of your cage before giving
<<else>>
Her hand comes off your <<getWordMyPenis $player>> and gives
<</if>>
your balls two quick squeezes.<br>
<br>
"@@.npc_manager;On your side <<=$player.first_name>>, facing away from me.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_6" "Comply and move to your side" 120>>]
</div>/*#
#desc: manager fingers or dildo's your ass
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.willpower = false>>
<<set $scene.plugged = setup.getItemFromType('plug')>>
<<setThreshold 'anal' 'secretary_anal' 'stage1_end' true>>
<<if $scene.plugged == "">>
<<applyExperience 'anal' 4 'almost' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set _resist = false>>
<<if setup.getWillpower($player)>0>>
<<set _resist = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You're too aroused to disobey and roll off your back and onto your side as you hear <<=setup.getNpcName('npc_manager', 'formal')>> picking something up.
<<if $scene.plugged=="">>
<<if setup.isItemTypeEquipped('panties')>>
There is a sharp popping sound followed by
<<if $scene.panties_type=="sissy">>
the unmistakable ziiiippp of her exposing your rear using the naughty zipper at the back of your panties.
<<else>>
a gloved finger pulling the back of your panties down, exposing your ass.
<</if>>
<<else>>
a gloved finger sliding down your back, exposing your ass.
<</if>>
<br><br>
<<printThought $player "This can't be happening?!">><br>
<br>
Her fingers lift your top asscheek up and you feel something pressing against your puckered hole. The sudden coolness is startling as something wet spreads around the ring of your asshole and between your cheeks.<br>
<br>
"@@.npc_manager;I have been managing this department for quite some time now <<=$player.first_name>> and in that time I have learned quite a few things about how to deal with difficult employees. You had been acting somewhat of a model employee lately, but that could well have been pure survival instinct. A Beta bowing to its Alpha. Or are you just an Omega? No matter, we will find out sooner or later. Anyway, now that I am aware of your failings it is my job to make sure that your dedication to the company, and myself, is complete and does not decay over time.@@"<br>
<br>
You can feel her body shift on the couch as a gloved hand returns to <<if $scene.caged>>grasping your cage<<else>>your erect <<getWordMyPenis $player>><</if>>, the other massaging your nervous hole.<br>
<br>
"@@.npc_manager;Some employees,@@" she says while <<if $scene.caged>>gently squeezing<<else>>beginning to slowly stroke<</if>> your <<getWordMyPenis $player>>, "@@.npc_manager;learn best through positive motivation.@@"<br>
<br>
Her stroking intensifies as her grip tightens, her other hand continuing to finger your asshole.<br>
<br>
"@@.npc_manager;Others, however, require something else. something... firmer.@@" She punctuates the statement by <<if $scene.caged>>digging her nails into your exposed sack, giving just enough pressure for you to<<else>>rubbing her thumb around the head of your <<getWordMyPenis $player>>, pressing into it firmly until you<</if>> let out a soft cry of pain.<br>
<br>
"@@.npc_manager;You, <<=$player.first_name>>, have been very dutifully of late. But even your best has proven... insufficient, imperfect. <<if $scene.caged>>Fortunately you are already on to the solution, having freely speed down the path of restraint<<else>>Fortunately, I know the solution. You need to be taught the value of restraint<</if>>.. Self control is a fundamental pillar of society.@@"<br>
<br>
It's as if you can hear the smile spreading across her lips and the chuckle behind her words leaving you with a foreboding sense of dread. Your fears are confirmed by her finger at your backside slowly pushing into your moist hole. You tense up only for your ass to be greeted with a hard swat.<br>
<br>
"@@.npc_manager;I understand you are nervous, <<=$player.first_name>>. Is this your first time? No matter, consider this merely another form of discipline, another part of the contract you willingly signed. Remember <<=$player.first_name>> this is what you wanted. I can feel you struggling enough as it is, so I will not command you to relax but it is my strong recommendation that you do so.@@"<br>
<br>
Her lecture finished, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her probing, pushing her finger in and out of your tight bottom with a steady rhythm. You do your best to relax but the sensation is so alien and strange that you find it hard to comply<<if $scene.caged>>; though that is not the only thing that is hard at the moment<</if>>.<br>
<br>
True to her word, <<=setup.getNpcName('npc_manager', 'formal')>> continues her assault, sliding the finger in further and further with every thrust. As you prepare to beg her to stop, the grip around your <<getWordMyPenis $player>> softens. Her hand begins to glide steadily up and down, squeezing out a soft moan from between your lips. You can hear your captor giggle with satisfaction, her finger plunging deeper into your asshole.<br>
<br>
"@@.npc_manager;It sounds as though someone is enjoying themselves. Does my SISSY secretary enjoy having her asshole fingered?@@"<br>
<br>
You contemplate on how best to answer as her finger moves deeper, only for it to rub against what feels like the base of your <<getWordMyPenis $player>>. You shriek in a mix of discomfort and delight, the novel sensation vibrating through you.<br>
<br>
"@@.npc_manager;Oh my, perhaps you are enjoying this too much. Should I stop rubbing your prostate <<=$player.first_name>>?@@"<br>
<br>
It takes several moments for you to concentrate enough to fumble out a response, though <<=setup.getNpcName('npc_manager', 'formal')>> does not seem particularly interested in relenting.<br>
<br>
<<if _resist>>
[<<moveTo "event_manager_stage1_end_reward_6_willpower" "Focus all your willpower and ask her to stop." 240>>]<br>
<<else>>
[@@.link_locked;You don't feel like you've got enough strength left in you to resist at all@@]<br>
<</if>>
<<set _text = 'Say ,"N-No '+ps(setup.getNpcName('npc_manager', 'formal'))+', p-please continue..."'>>
[<<moveTo "event_manager_stage1_end_reward_7" _text 240>>]
<<else>>
<<if setup.isItemTypeEquipped('panties')>>
There is a sharp popping sound followed by
<<if $scene.panties_type=="sissy">>
the unmistakable ziiiippp of <<=setup.getNpcName('npc_manager', 'formal')>> using the naughty zipper at the back of your panties to expose your plugged ass.
<<else>>
a gloved finger pulling the back of your panties down, exposing your plugged ass to <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>
<<else>>
a gloved finger sliding down your back, exposing your plugged ass to <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>There's no way she'll miss that... Her fingers lift your top asscheek up and you can hear <<=setup.getNpcName('npc_manager', 'formal')>> chuckling softly.
<br><br>
"@@.npc_manager;You are just so full of surprises <<=$player.first_name>>. I cannot say that I am displeased by this one, no this does not displease me in the slightest.@@"<br>
<br>
You feel her fingers probing at the plug, pushing and pulling against it. In a matter of seconds you're moaning and gently bucking your ass, trying to match the motions of her fingers. Your efforts to get more stimulation are in vain as her fingers grip the base of the plug and begin to pull. "@@.npc_manager;Relax your ass sissy.@@" You comply, taking a deep breath through your nose and pushing out with your ass. In one smooth motion the plug slides from your asshole, leaving you feeling momentarily empty.<br>
<br>
You hear <<=setup.getNpcName('npc_manager', 'formal')>> stand and listen to the clicking of her high heels as she walks to her desk, pulls open a drawer and returns to the couch. Her hand returns to you ass and you feel something cool sliding along your ass crack, pressing against your puckered hole. At first it feels like <<=setup.getNpcName('npc_manager', 'formal')>> is replacing your plug but then you realise, no, whatever is behind you feels bigger than you are accustomed to.<br>
<br>
"@@.npc_manager;Do not worry <<=$player.first_name>>, just a little more,@@" she says reassuringly, following up with a slow push. You suddenly feel full again. Very full. You moan out as what you now realise is a dildo, HER dildo begins to slide in and out of your ass.<br>
<br>
"@@.npc_manager;I have been managing this department for quite some time now <<=$player.first_name>> and in that time I have learned quite a few things about how to deal with difficult employees. You had been acting somewhat of a model employee lately, but that could well have been pure survival instinct. A Beta bowing to its Alpha. Or are you a rare Omega? No matter, we will find out sooner or later. Anyway, now that I am aware of your failings it is my job to make sure that your dedication to the company, and myself, does not decay over time.@@"<br>
<br>
You can feel her body shift on the couch as a gloved hand returns to <<if $scene.caged>>grasping your cage<<else>>your erect <<getWordMyPenis $player>><</if>>, the other slowly moving the dildo back and forth in your eager hole.<br>
<br>
"@@.npc_manager;Some,@@" she says while <<if $scene.caged>>gently squeezing your caged <<getWordMyPenis $player>><<else>>beginning to slowly stroke your <<getWordMyPenis $player>><</if>>, "@@.npc_manager;learn best through positive motivation.@@"<br>
<br>
Her stroking intensifies as her grip tightens, her other hand continuing to steadily pound the dildo into your rear hole.<br>
<br>
"@@.npc_manager;Others, however, require something else. something... firmer.@@" She punctuates the statement by <<if $scene.caged>>digging her nails into your exposed sack, giving just enough pressure for you to<<else>>rubbing her thumb around the head of your <<getWordMyPenis $player>>, pressing into it firmly until you <</if>> let out a soft cry of pain.<br>
<br>
"@@.npc_manager;You, <<=$player.first_name>>, have been very dutifully of late. But even your best has proven... insufficient, imperfect. <<if $scene.caged>>Fortunately you are already on to the solution, having freely speed down the path of restraint<<else>>Fortunately, I know the solution. You need to be taught the value of restraint<</if>>. Self control is a fundamental pillar of society.@@"<br>
<br>
It's as if you can hear the smile spreading across her lips and the chuckle behind her words leaving you with a foreboding sense of dread. In one smooth motion she pulls the dildo from your ass only to ram it back in, leaving you shrieking from the vigorous intrusion.<br>
<br>
"@@.npc_manager;I understand you are nervous, <<=$player.first_name>>. Is this your first time with something like this.... moving within you? No matter, consider this merely another form of discipline, another part of the contract you willingly signed. Remember <<=$player.first_name>> this is what you wanted. I can feel your tension, the stress bubbling under your skin; so I will not command you to relax but it is my strong recommendation that you do so.@@"<br>
<br>
Her lecture finished, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her thrusting, moving the dildo in and out with a steady rhythm. With a sigh of arousal and contentment you find it easier to relax than you would have expected, grateful for your decision to wear the plug this morning.<br>
<br>
True to her word, <<=setup.getNpcName('npc_manager', 'formal')>> continues her assault, pulling the dildo far enough that it is just barely in your ass and then thrusting it in all the way, until her hand is pressed against your cheeks. The grip around your <<if !$scene.caged>>caged <</if>><<getWordMyPenis $player>> softens and her hand begins to glide steadily up and down, squeezing out a soft moan from between your lips. You can hear <<=setup.getNpcName('npc_manager', 'formal')>> giggle with satisfaction, the almost sweet expression of glee a stark contrast to her plunging the dildo deeper into your asshole.<br>
<br>
"@@.npc_manager;It sounds as though someone is enjoying themselves. Does my SISSY secretary enjoy having her asshole fucked?@@"<br>
<br>
You contemplate on how best to answer as the dildo continues plunging into you only to feel a gentle vibrating against your prostate. You squeal in a mix of shock, discomfort, and delight, the sensation running through to your <<getWordMyPenis $player>> like a jolt of lightning.<br>
<br>
"@@.npc_manager;Oh my, perhaps you are enjoying this too much. Is that it? Is this too much sensation for your sissy body to handle? Should I stop fucking your ass <<=$player.first_name>>?@@"<br>
<br>
It takes several moments for you to concentrate enough to fumble out a response, though <<=ps(setup.getNpcName('npc_manager', 'formal'))>> doesn't seem particularly interested in relenting.<br>
<br>
<<if _resist>>
[<<moveTo "event_manager_stage1_end_reward_6_willpower" "Focus all your willpower and ask her to stop." 240>>]<br>
<<else>>
[@@.link_locked;You don't feel like you've got enough strength left in you to resist at all@@]<br>
<</if>>
<<set _text = 'Say ,"N-No '+ps(setup.getNpcName('npc_manager', 'formal'))+', p-please continue..."'>>
[<<moveTo "event_manager_stage1_end_reward_7" _text 240>>]
<</if>>
</div>/*#
#desc: ask her to stop fingering/dildo'ing your ass
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.willpower = true>>
<<set $player.willpower.bonus+=1>>
<<addPopUpText "Your willpower has been increased.">>
<<spendWillpower $player>>
<<applyFatigue $player 30>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.plugged!="">>
Getting your ass pounded relentlessly by <<=setup.getNpcName('npc_manager', 'formal')>> with a dildo does not really help you at all with your decision.
<<else>>
Getting your ass fingered relentlessly by <<=setup.getNpcName('npc_manager', 'formal')>> does not really help you at all with your decision.
<</if>>
Nonetheless, you focus your mind and try to calm down. Even though you feel like you are in heaven right now, something in you resists. A faint spark of willpower, a feeling of rebellion you thought was lost in these last few days manages to ignite a fire of resistance. You do the unspeakable. You ask her to stop.<br>
<br>
For a moment the world stands still. <<=setup.getNpcName('npc_manager', 'formal')>> looks at you with disbelieve, but more important, for the first time ever, she looks at you like you are a real person, not some dressed up plaything.<br>
<br>
"@@.npc_manager;W... What? I mean, I beg your pardon, sissy?@@", it only takes her a microsecond to regain composure, the whole time never slowing down in the slightest at working on your poor boypussy like there's no tomorrow. "@@.npc_manager;Could you please say that again?@@"<br>
<br>
Again, between the moaning and panting you ask her to stop.<br>
<br>
This time she stops instantly. Again her facade seems to crack, but only for the fraction of a second. You wonder what's underneath this, if she's only playing a role in a play as well, but this does not seem to be the right time to figure this out. She pulls
<<if $scene.plugged!="">>
the dildo
<<else>>
her finger
<</if>>
out of your anus and wipes it with a paper towel.<br>
<br>
"@@.npc_manager;Well, someone put on his big boy pants this morning. I can say that I honestly did not expect that. Colour me Impressed. Well, not impressed, but surprised, astonished, if we are being completely truthful. Still, you are in my office, and there remains the problem of your disobedient and unimpressive... thing down there. I want this problem solved, immediately. If you wish to keep this job any longer, you are going to masturbate. Right here, right now.@@"<br>
<br>
You can feel there's something odd about this situation.
<<if setup.getTotalValue('smart')>=7>>
Normally you would get get another rule, a threat, another step in the dance. An ultimatum, a direct threat to loose your job because you don't play along with her dominant behaviour is rather unusual. You assume there's more behind it then you can figure out right now, so you decide to play along with it. And because of that, you don't mind that much masturbating in front of her.
<<else>>
But you're unable to figure it out in the brief moments of time you have to think. Since you want to keep the job... for some reason, you decide its better to give in, no matter how humiliating this will be.
<</if>>
You agree to her conditions.<br>
<br>
"@@.npc_manager;Well, since we have no sissy spanking material around here, I assume I can let you use this. As a matter of fact, I insist!@@" she says, while handing you
<<if $scene.plugged!="">>
the dildo that pounded your ass mere moments ago.
<<else>>
a big, black dildo.
<</if>>
<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_6_willpower_2" "Take the dildo and start masturbating" 360>>]
</div>/*#
#desc: fuck yourself in the ass with a dildo
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if setup.getTotalValue('stamina')>=5>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'unbelievable' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/lolatrap_masturbate_01.mp4">>
<div id="invframe" class="scrolltext">
Your <<getWordAnus $player>> is still wet from before,
<<if setup.getTotalValue('submission')>4>>
you let the rather enormous artificial <<getWordPenis $player>> slide in without much troubles.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, I'm this accustomed to using my <<getWordAnus $player>>, that I can fit an massive <<getWordPenis $player>> like this in there without any problems.">>
<<else>>
still, you're having trouble fitting such an enormous artificial <<getWordPenis $player>> in it. You push hard and try to relax, and after some while you manage to push it past your sphincter. As it sinks into you you let out a moan like a whore in heat.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, it is ripping me apart. Ah!">>
<</if>>
<br><br>
You push the dildo in and out, but the look on <<=setup.getNpcName('npc_manager', 'formal')>> indicates she is not pleased with your efforts.<br>
<br>
"@@.npc_manager;Ride it. Ride it like a little sissy whore. <<if $scene.caged>>You already locked yourself up so you have no choice but to embrace your true urges<<else>>And do not even think about touching that <<getWordMyPenis $player>> of yours<</if>>, you are going to cum like the sissy you are!@@"<br>
<br>
As ordered you start to ride the dildo. Balancing the base of the dong on the floor you start slowly moving your pelvis downwards. You feel every centimeter of the artificial <<getWordPenis $player>> filling you up, until there is no more space left in you and you feel about to split apart. But still, you continue. Rising back up, leaves a void in you that you now feel eager to fill up again. Moving up and down like a whore in heat is unlike anything you've ever felt before. With each thrust the dildo impales your <<getWordAnus $player>> deeper until you can feel, and hear, your asscheeks slapping on the floor beneath you.
<<if setup.getTotalValue('stamina')>=5>>
Your anus feels like it's on fire, but you're able to cope with it. The rhythmic slamming stimulates you beyond your wildest dreams.<br>
<br>
"@@.npc_manager;You like this, don't you, sissy?@@", she taunts as the dildo slams into you again. "@@.npc_manager;You simply love having your virgin <<getWordAnus $player>> violated like a slutty bitch!@@"<br>
<br>
You're unable to answer, but your moaning contains more truth than your words ever could. You can feel your orgasm approaching at a very rapid pace with each new thrust. With a final gasp you spray your load all over the floor.
<<else>>
You are already low on stamina, and this is taking its toll on you. Unable to cope with the pain, you slow down. Just a little bit. Begging to your mistress to let you finish by hand does you no good at all. Glaring at you with cold eyes, <<=setup.getNpcName('npc_manager', 'formal')>> stands over you. A sinister smile on her lips is all you get as a warning.<br>
<br>
"@@.npc_manager;Here, let me give you a helping hand@@", is her explanation, before putting her hands on your shoulders and pushing you down with a force you did not expect of a woman of her physique. The sudden impalement on the dildo finally pushes you over the edge. With a final gasp you spray your load all over the floor.
<</if>>
<br><br>
[<<moveTo "event_manager_stage1_end_reward_7" "Continue." 360>>]<br>
<br>
<a target="_blank" href="https://twitter.com/lolatrap">(EXT/NSFW) Special Thanks to Lolatrap</a>
</div>/*#
#desc: manager cages you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>
<<if setup.getTotalValue('submission')<5>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_reward' true>>
<</if>>
<<set $player.timebased.horny = setup.changeHorny($player,100)>>
<<set $em_cum = setup.canPlayerCum($player,20)>>
<<set $player.flags.fuckedbydildo = true>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<set $npc_manager.flags.talkedfirstreward = true>>
/% note: $npc_manager.stage will be set to 2 on your next visit to work when you get the new plaque %/
<<decrementEmotion 'anger' 'npc_manager' 10>>
<<set $npc_manager.affection += 1>>
<<set $npc_manager.perversion += 1>>
<<set $npc_manager.stage = 2>>
<<if !$scene.caged>>
<<addItem 'c_cage_pink'>>
<<wearItem $player $now "c_cage_pink" true>>
<<manipulateItem $player $now "c_cage_pink" "lock" true>>
<<set $npc_manager.flags.hascagekey = false>>
<</if>>
<<set $player.timebased.horny = 0>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_reward'
5
'event_psychiatrist_session_manager_2'
false
'theme_psychiatrist_manager_header'
>>
<<set _needkey = $player.flags.fem_style!="money">>
<<set _x = setup.addManagerEndlessTask2($now, _needkey, false, false)>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.caged>>
<<if $scene.willpower>>
You kneel on the floor, impaled by the dildo, with your eyes shut, gasping through slow heavy breaths, savoring the sensation of release.
<<else>>
Your words trail off into high pitched moans as <<=setup.getNpcName('npc_manager', 'formal')>> picks up her pace.<br>
<br>
"@@.npc_manager;Very good <<=$player.first_name>>. I am glad you understand and accept that this is proper treatment for a SISSY secretary.@@"<br>
<br>
Her rhythm intensifies and, as if instinctively, you match it with your moaning. Before long you feel your vision begin to blur and in a blissful state of ecstasy you cry out as your <<getWordMyPenis $player>> erupts, spewing out a seemingly endless stream of cum. Collapsing backwards you lay there with your eyes shut, gasping through slow heavy breaths, savoring the sensation of release.
<<if $scene.plugged!="">>
<<=setup.getNpcName('npc_manager', 'formal')>> removes the dildo, leaving you empty for a mere moment before unceremoniously reinserting your plug.
<</if>>
<br><br>
Your orgasm finished you turn your head to thank <<=setup.getNpcName('npc_manager', 'formal')>> and feel her <<if $scene.panties_type=="sissy">>pull down the front of your frilly panties and <</if>>gently pat your caged <<getWordMyPenis $player>>.
<</if>>
<br><br>
Once more she graces you with a smile of approval as you stare at your still-imprisoned self.<br>
<br>
"@@.npc_manager;You were already wearing it, it is true, but well... may I formally I present your newest sissy fashion accessory and now mandatory component of your uniform.@@"
<<else>>
<<if $scene.willpower>>
You kneel on the floor, impaled by the dildo, with your eyes shut, gasping through slow heavy breaths, savoring the sensation of release. Without any warning you feel <<if $scene.panties_type=="sissy">>her pull down the front of your frilly panties and <</if>>something cold slide up and over your flaccid penis.
<<else>>
Your words trail off into high pitched moans as <<=setup.getNpcName('npc_manager', 'formal')>> picks up her pace.<br>
<br>
"@@.npc_manager;Very good <<=$player.first_name>>. I am glad you understand and accept that this is proper treatment for a SISSY secretary.@@"<br>
<br>
Her rhythm intensifies and, as if instinctively, you match it with your moaning. Before long you feel your vision begin to blur and in a blissful state of ecstasy you cry out as your <<getWordMyPenis $player>> erupts, spewing out a seemingly endless stream of cum. Collapsing backwards you lay there with your eyes shut, gasping through slow heavy breaths, savoring the sensation of release.
<<if $scene.plugged!="">>
<<=setup.getNpcName('npc_manager', 'formal')>> removes the dildo, leaving you empty for a mere moment before unceremoniously reinserting your plug.
<</if>>
<br><br>
Your orgasm finished you turn your head to thank <<=setup.getNpcName('npc_manager', 'formal')>> and feel her <<if $scene.panties_type=="sissy">>pull down the front of your frilly panties and <</if>>slide something cold up and over your flaccid <<getWordMyPenis $player>>.
<</if>>
<br><br>
You glance down to see a wide grin spread over <<=setup.getNpcName('npc_manager', 'formal')>> face as she closes the lock on the clear, pink chastity cage that now encases your privates. You can see a small key suspended from a chain necklace.<br>
<br>
"@@.npc_manager;<<=$player.first_name>> may I present your newest sissy fashion accessory and now mandatory component of your uniform.@@"
<</if>>
<br><br>
<<if $scene.willpower>>
She takes a moment to dab her gloved hand in the pile of cum you've spilled on the floor.<br>
<<else>>
She takes a moment to dab her gloved hand in the pile of cum you've spilled on her couch.<br>
<</if>>
<br>
<<switch $player.flags.fem_style.chastity>>
<<case "forced">>
"@@.npc_manager;You see <<=$player.first_name>>, this here,@@" she says, raising her cum spattered hand, "@@.npc_manager;was your motivation, while this,@@" she taps the head of your chastity cage, "@@.npc_manager;is how you will learn self restraint. Now, since you have overall proven to me that you are quite capable as both a slave and secretary I will entrust this to you... for the time being. Do not make me regret my decision!@@"<br>
<br>
She takes the chain from her neck and hands it to you.<br>
<br>
<<printThought $player "This must be the key for my chastity device. Wait... why am I already considering it mine?">>
<<case "obedient">>
"@@.npc_manager;As promised, a "solution" to your problem. And what a problem it was! Look at this mess!@@" she says, raising her cum spattered hand, "@@.npc_manager;Since you have been such a good SISSY secretary slave I will entrust you with the key... until such time as you prove yourself unworthy of such freedoms, or decide that you no longer wish to be cursed with such temptation.@@"<br>
<br>
<<printThought $player "This wasn't what I expected, it feels kind of odd... I guess if it gets uncomfortable I can just take it off, just need to show myself worthy of her trust in giving me the key.">>
<<case "voluntary">>
"@@.npc_manager;You discovered it for yourself, but under my tutelage you will LEARN the truth - that this@@" she taps the head of your chastity cage, "@@.npc_manager;is where you belong, and through it, you will learn self restraint. Since you have been such a good SISSY secretary slave I will entrust you with the key... until such time as you prove yourself unworthy of such freedoms, or decide that you no longer wish to be cursed with such temptation.@@"<br>
<br>
<<printThought $player "Is this real? Was this what I wanted when I locked myself up?">>
<<case "money">>
"@@.npc_manager;You may have come by it out of naked greed, but under my tutelage you will LEARN the truth - that this@@" she taps the head of your chastity cage, "@@.npc_manager;is where you belong, and through it, you will learn self restraint. Normally for such a good SISSY secretary slave I would entrust you with the key but you have sold that privilege to someone else... Though know that I fully intend to reclaim proper ownership once your little "trial" is concluded.@@"<br>
<br>
<<printThought $player "What? I just wanted some extra money, does she plan to keep me locked forever?">>
<<default>>
ERROR: unhandled player.flags.fem_style.chastity: <<=$player.flags.fem_style.chastity>>
<</switch>>
<br><br>
<<if $player.flags.fem_style.chastity != "money">>
"@@.npc_manager;Note that, though I have granted you the favour of control over your key that it is purely for your personal benefit. When you are at work, this@@" she taps a fingernail against the hard plastic encasing the head of your <<getWordMyPenis $player>> "@@.npc_manager;comes back under my control. Thus, I expect the cage to be locked around your <<getWordMyPenis $player>>... and it had better be as soft and demure as I expect you to be! As long as you remain as dutiful as you are now, you may keep the key as a token of my faith in you. But if you betray my confidence in any way you will have to leave the key on a dish at the corner of your desk for me to gather when I arrive. If this is to happen, however, you will be able to request the return of the key every evening.@@"<br>
<br>
<</if>>
Pausing, her gaze shifts to look you directly in the eye.<br>
<br>
"@@.npc_manager;Do you understand this modification to your routine?@@"<br>
<br>
<<printThought $player "She only asked if I understand; she just assumes my agreement...">><br>
<br>
<<set _text = 'Blush and shyly respond, "Yes, '+setup.getNpcName('npc_manager', 'formal')+'"'>>
<<if !$scene.caged>>
[<<moveTo "event_manager_stage1_end_reward_8" _text 360 "<<addItem 'chastity_cage_key'>>">>]
<<else>>
[<<moveTo "event_manager_stage1_end_reward_8" _text 360>>]
<</if>>
</div>/*#
#desc: manager feeds you cum
#status: FINISHED 0.4.0.0
#*/
<<if setup.checkOutsideDecency($player) && setup.checkPlayerDressed($player)>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_9">>
<</if>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.getTotalValue('cum')<1>>
<<setThreshold 'cum' 'secretary_cum' 'cumeater' true>>
<<else>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<set $scene.cum = false>>
<<if $player.swalloeddowncum || $player.swallowedothercum>>
<<set $scene.cum = true>>
<</if>>
<<if $player.swalloeddowncum == false>>
<<set $player.swalloeddowncum = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
She smiles and you feel a moment of relief.<br>
<br>
"@@.npc_manager;Good. Now one last thing before you can get dressed,@@" she says, moving her cum covered hand towards your face, "@@.npc_manager;clean up your mess, sissy.@@"<br>
<br>
<<if $scene.cum>>
You eagerly open your mouth for <<=setup.getNpcName('npc_manager', 'formal')>> fingers. They gently slide into your mouth and you busy about your task, lapping up as much cum as your tongue can find. You feel your <<getWordMyPenis $player>> already straining in its cage as you lovingly suck off each individual finger. <<=setup.getNpcName('npc_manager', 'formal')>>' hand retreats, gathering up another helping and bringing it to your waiting mouth. You obediently open your mouth and continue your clean up. After a few more repetitions <<=setup.getNpcName('npc_manager', 'formal')>> stands, strips off the gloves and drops them in the trash, before returning the bottle of lube to her desk drawer.
<<elseif setup.getTotalValue('cum')>0>>
You hesitate for a moment, watching her smile begin to shift, finally leaning forward, opening your mouth for her waiting fingers. They quickly glide past your lips and you busy about your task, sliding your tongue and lips across <<=setup.getNpcName('npc_manager', 'formal')>> fingers. You're surprised by the taste, or maybe more by the fact that you don't seem to mind it. The flavour isn't bad at all, in fact, it's almost nice...
<<else>>
You hesitate, watching her lips twist into a cruel smile. It was one thing to have
<<if !$scene.willpower>>
<<if $scene.plugged=="">>
your ass fingered
<<else>>
your ass fucked with her dildo
<</if>>
<<else>>
fucked yourself with her dildo
<</if>>when you were so desperately horny, but you're not sure you can stomach eating your own cum. As you begin to protest, <<=setup.getNpcName('npc_manager', 'formal')>>' fingers firmly slide between your lips. You struggle to ignore the taste but manage to refrain from gagging. This is so humiliating...
<</if>>
</div>/*#
#desc: depart her office, newly caged
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName('npc_manager', 'formal')>> office, satisfied, confused and alarmed.
<<if $scene.plugged=="">>
You're surprised and a little ashamed of how much you enjoyed having your prostate fingered.<br>
<br>
<<printThought $player "Maybe I could try that at home...">>
<<else>>
The ache from the plug once more occupying your ass a constant reminder of both the abuse and satisfaction inflicted upon you.<br>
<br>
<<printThought $player "I should see if I can find a dildo at the mall.">>
<</if>>
<br><br>
You can't help but attempt to grasp your caged <<getWordMyPenis $player>> in disbelief. It's not that it feels uncomfortable or painful. What troubles you is how freely you allowed yourself to be put in this position. Even more concerning than that, however, is how your <<getWordMyPenis $player>> grows hard when you recall how <<=setup.getNpcName('npc_manager', 'formal')>> had her way with you. Good thing you remained submissive the whole time<<if !$scene.cage>> and got the key<</if>>.<br>
<br>
<<printThought $player "I can't even imagine what would have happened if I tried to oppose her...">><br>
<br>
[<<moveTo "room_office_after_work" "Leave the office" 30 '<<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: Manager summons you and sends you to get her coffee
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while I fetch a coffee!">>
<<set $workCoffee = {}>>
<<set $workCoffee.first = false>>
<<if !$npc_manager.flags.gotCoffee>>
<<set $workCoffee.first = true>>
<<set $npc_manager.flags.gotCoffee = true>>
<<set $workCoffee.rnd = 0>>
<<set $workCoffee.szeneId = "event_work_coffee_0_0">>
<<else>>
<<set $workCoffee.szeneInfo = setup.getRandomEvent($player, "work_coffee_shop")>>
<<if $workCoffee.szeneInfo == "">>
<<set $workCoffee.szeneId = "event_work_coffee_n_0">>
<<else>>
<<set $workCoffee.szeneId = $workCoffee.szeneInfo.szene>>
<</if>>
<</if>>
<<set $workCoffee.time = 30>>
<<if $workCoffee.szeneId == "event_work_coffee_n_0">>
<<set $workCoffee.time = (360+Math.round(Math.random()*6)*60)>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
The phone on your desk is ringing. It's <<=setup.getNpcName('npc_manager', 'formal')>>. You answer straightaway.<br>
<br>
<<if $workCoffee.first>>
"@@.npc_manager;<<=$player.first_name>>, be a darling and fetch me a coffee. I really need some caffeine to get through the day. There must be an automatic coffee maker or something like that somewhere on this floor, maybe in the lounge. I have no time at all to fetch one myself, since I am in the middle of an important thought process. I never have time, really, that is why I have an assistant like yourself.. Perks of being a Manager. Anyway, consider this one of your duties. You seem to be a smart boy, you'll figure something out!@@"
<<else>>
<<if $player.flags.firstWorkDayDone>>
"@@.npc_manager;<<=$player.first_name>>, be a darling and fetch me a coffee. I really need some caffeine to get through the day. Now hurry, else I will have to find another way to make some adrenaline rush through my body, and you might not find helping with those quite so pleasant.@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>>, be a darling and fetch me a coffee. I really need some caffeine to get through the day. Now, make haste, I can feel my focus drifting, and I hate it when that happens.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo $workCoffee.szeneId "Leave the office in the Quest for Coffee." $workCoffee.time>>]
</div>/*#
#desc: search until you find the floor 52 coffee shop
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = "Office Hallway">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
You leave the office only to remember how big your company is. You are on floor 52, in a building with well over a hundred floors. And that's just what's above the ground. If you're one of the people who needs a car in this day and age there's a giant underground garage, and there are rumors about some labs down there as well, for the... more secure but still absolutely, definitely legal endeavours of Social Interaction Service Syndicate Inc. You never really paid heed to such rumors, they swirl around every megacorp, so who knows what's fact and what's myth.<br>
<br>
<<if $player.flags.atesissypill>>
Then again, you swallowed a pill that gave you instant boobs, developed by the very company you're working for... so who knows what they could be secretly cooking up.<br>
<br>
<<printThought $player "Well, I am sure there is some reasonable explanation for this... is there?">><br>
<<else>>
<<printThought $player "Well I am sure those are just some stupid rumors... right? Yeah, have to be.">><br>
<</if>>
<br>
Thanks to your new status as secretary to <<=setup.getNpcName('npc_manager', 'formal')>> you can traverse the floor without having to fear being tackled by an over-eager security guard, but you still probably shouldn't enter every door you see in search for your precious rupees. You remember that Cloud Data Service had a coffee kitchen you visited on a regular basis, but that is more than a few floors below and it would be kind of strange to go there for your coffee, now. Checking your phone's Map App for the Company there seems to be a small coffee shop on this floor, next to the lounge, pretty much just like <<=setup.getNpcName('npc_manager', 'formal')>> said. Walking down the hallway and rounding the corner you spot a sign saying "Coffee Shop 52".<br>
<br>
[<<moveTo "event_work_coffee_0_1" "Enter the Coffee Shop." 60>>]
</div>/*#
#desc: enter floor 52 coffee shop for the first time, see barista being double-plugged
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<addItem "unknown_candy">>
<<set $player.timebased.horny = setup.changeHorny($player,25)>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_barista.png">>
<div id="invframe" class="scrolltext">
You enter the Coffee Shop and it only takes a second for you to question everything... again. You take a step back, look up at the sign again. Nope, says coffee shop. Step inside again. Look at the counter. Take a good look at the well endowed woman in a skin tight latex maid uniform. Rub your eyes. Take a look at her again. Oh... she's gone.<br>
<br>
<<printThought $player "Okay... Taking that penis enlargement pill just seems to continue to pop out new side effects... fuck. That was uncanny. To think someone would work here dressed like that would be totally and absolute ridicu...">><br>
<br>
Nope, she was simply under the counter looking for something. And the way she's now bent over, wiggling her butt in the air as delectably as possible, you can see her panties. Well, more than panties, to be precise. Rather than anything approaching normal she is sporting a red latex thong. A thong, you might add, that appears to be struggling to keep a pair of plugs from springing free of her two lower orifices.<br>
<img src="./images/others/barista_bend_over.png" height="328" width="804"><br>
Well, good thing you have a emergency protocol for situations like this. Well, not exactly situations like this, since you never encountered a situation like this... like ever, but you have a plan! Turn around before she gets up, look at something on the shelves and act like you haven't seen a single thing, while trying not to blush too much. Now, engage Protocol!<br>
<br>
<<printThought $player "...bootylicious...">><br>
<br>
Or do nothing at all and freeze in place like a timid fawn caught in the headlights. Except it isn't headlights, it's her perfect pale butt cheeks, or maybe her dual plugs? Either way you seem to be stuck. Even as she straightens up again you still stand there, frozen.
<<if $player.timebased.horny>50>>Well, scratch that last part. Not completely frozen, a certain part of you is very happy to act up and gain more traction then usual, which you realise as your trousers get tighter and tighter around your groin region<</if>>
<br>
<br>
"@@.npc_barista;Oh. Hi there! I didn't see you coming in. Well, okay I saw you coming in, and then you went outside again. People tend to do that... like, a lot, for some reason. Thought you left for good, so I started looking for something down there. But I didn't find it, since I forgot what I was looking for in the first place.@@"<br>
<br>
Still frozen... Dammit, I think it's time for a hard reset...<br>
<br>
"@@.npc_barista;Hello... are you... alright? Oh gawd. Did he die and freeze in place like one of those legendary martial arts masters in anime?@@"<br>
<br>
You blink and she's somehow on your side of the counter, her... substantial rack bouncing as she walks over on steep, almost stripper, heels. Her hand waving in front of you finally snaps you back to reality. You try to act as normal as possible giving your awkward behaviour, but struggle to do so.<br>
<br>
"@@.npc_barista;My doctor always says, take a deep breath and release all anxiety. If I only knew what that word meant. And then she offers me some chocolate. I'm sorry, I don't have any chocolate for you, but I have some candy!@@", she says while handing you a piece of candy, and continues without skipping a beat, "@@.npc_barista;I am <<=setup.getNpcName("npc_barista", "first")>>, <<=setup.getNpcName("npc_barista", "full")>>. But everyone around here calls me <<=setup.getNpcName("npc_barista", "nickname")>>. Is there anything I can do for you darling?@@"<br>
<br>
[<<moveTo "event_work_coffee_0_2" "Order a coffee." 180>>]
</div>/*#
#desc: meet barista, purchase coffee
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<addItem 'coffee_strawberry'>>
<<set $npc_barista.profile = true>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cafe.png" "./images/characters/npc_barista.png">>
<div id="invframe" class="scrolltext">
You introduce yourself to <<=setup.getNpcName('npc_barista', 'nickname')>> and tell her that you're the new secretary of <<=setup.getNpcName('npc_manager', 'formal')>>. For a moment it looks like she's reacting to that name, but she seems to have difficulty focusing her thoughts.<br>
<br>
"@@.npc_barista;<<=setup.getNpcName('npc_manager', 'other')>>... That name does ring a bell... You see I have trouble thinking straight sometimes, well, most of the time, like... as long as I can remember. That is why I have to see my doctor on a regular basis, though... she says thinking a little kinky is better? Ooh. Wait... No... Oh. You must be <<=ps(setup.getNpcName('npc_secretary', 'nickname'))>> replacement!@@" Then, just for a fraction of a second, her happy-go-lucky attitude evaporates, her expression shifting and her voice sounding like another personality entirely as she whispers ominously, "@@.npc_barista;poor bastard does not know yet what he signed up for...run while you...@@"<br>
<br>
She stops in mid sentence, her upbeat personality re-asserting itself as if nothing happened, "@@.npc_barista;Oh, yes. <<=setup.getNpcName('npc_secretary', 'nickname')>> used to come here all the time, ordering coffee for her boss lady. Hmm... I wonder what happened to her. Haven't seen her for a few days now. She sick, or did she finally take up that offer from that strange cock... err I mean cook and needs a few days to recover?@@"<br>
<br>
You explain to her that your predecessor has been promoted, or something like that, but that you're her successor and then explain to her that successor has nothing to do with fellatio.<br>
<br>
"@@.npc_barista;So you're here to fetch your boss lady's coffee now, is that right?@@"<br>
<br>
You nod and ask what kind of coffee ...<<=setup.getNpcName('npc_secretary', 'nickname')>> used to order. <<=setup.getNpcName('npc_barista', 'nickname')>> stares at you blankly.<br>
<br>
"@@.npc_barista;Wait, I am supposed to remember that? Maybe I should have written it down... no, last time I tried to write things down they took away all my pencils.@@"<br>
<br>
<<printThought $player "Wait, what?">><br>
<br>
"@@.npc_barista;Oh, now I remember! <<=setup.getNpcName('npc_secretary', 'nickname')>> told me that her boss lady is into cute and frilly pink things. So let's try... a strawberry latte, okay?@@"<br>
<br>
You agree, though mixed in with your growing confusion there are doubts on your mind.<br>
<br>
<<printThought $player "<<=ps(setup.getNpcName('npc_manager', 'formal'))>> is into cute things? Why does she always seems so imposing and stuck up?">><br>
<br>
"@@.npc_barista;One strawberry latte macchiato coming right up.@@" she proclaims, flashing her skirt up at you as she bounds over the counter and then dives under to fetch some of the strawberry syrup. Once more you find yourself staring at her goodies, on display to all of mankind yet again.<br>
<br>
<<printThought $player "Is this some kind of joke... or a test? Should I call her out on that behaviour? I mean, I cannot be the only one who sees this, am I? Should I ignore it? Or is it a test if I can keep something a secret if it's something internal to the company? Ah! This is driving me nuts.">><br>
<br>
Your curiosity gets the better of you and you somehow scrape together the courage to ask her what's with the uniform while she prepares the coffee. Her hands moving to the top of her very well formed breasts and slowly gliding down along her body, as she innocently counters, "@@.npc_barista;Oh, you mean this? Well, this is my uniform, silly, of course! Even though I think I used to wear something different a long time ago. It's hard to remember. But I remember that it wasn't so hot to wear, I mean this thing makes me sweat a lot even if I don't move around that much. That doesn't really matter though, I mean, the guys, and, like some of the girls, really seem to like it when I wear this. My Su... Sup... my Boss told me it's a part of a, um... I think he called it a demiplanary treasure... whatever that's supposed to be. Why do you ask? You want one for yourself? Well, if I ask my Boss, I'm sure he...@@"<br>
<br>
You interrupt her right there. You explain that you have no intentions to wear such a uniform. She is obviously, and oddly, confused by this assertion but you manage to come up with the excuse that since you're not from this department it would confuse customers and coworkers.<br>
<br>
"@@.npc_barista;Oh... of course. Silly me. But if you want one for your spare time, I have a few at home, and, like, some other fun stuff! I think it might be a bit loose on your chest, but it might be rather tight around your hips. Anyway, your strawberry latte macchiato, sir!@@"<br>
<br>
You thank her and pay with your company ID card, which forwards the costs to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> account. One of the major benefits for working both here and at Cloud Data Service was the free coffee. Ah, yes. Good times. Next time you'll have to remember to get a cup for yourself. You don't want to delay further and risk angering your manager.<br>
<br>
[<<moveTo "event_work_coffee_0_3" "Return to the office." 360>>]
</div>/*#
#desc: deliver coffee to manager (first time)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<deleteItem $player $now 'coffee_strawberry'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You return to the antechamber and knock on the wooden door leading to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
"@@.npc_manager;Come in, <<=$player.first_name>>@@"<br>
<br>
You open the door and are almost knocked over by an aura of gloominess. Reflexively you gulp and loosen your collar a little bit.<br>
<br>
"@@.npc_manager;That took you long enough. I am trying to keep my portion of the company in order but I can only do that if I keep focused at the time. I had to pull an all-nighter yesterday... again. And I am pretty certain you got me the wrong coffee, anyway, since you did not even bother to ask what I wanted. Men-@@" you're surprised how much dismissive spite she manages to pack into a single syllable. "@@.npc_manager;-like you always assume they have everything figured out and...@@"<br>
<br>
Her eyes widen and she seems to be at an loss for words as you put the strawberry latte macchiato on her desk.<br>
<br>
"@@.npc_manager;How... where did you get this?@@" she asks while picking up the cup, looking at it from different angles as it were almost an alien artifact. You tell her about the cafe you found on this floor "Coffee Shop 52", and about <<=setup.getNpcName('npc_barista', 'nickname')>>, leaving out a few of the more delicate details of your... encounter. You ask her if the barista was right and if this is her favourite coffee.<br>
<br>
"@@.npc_manager;Not by a long shot. But it used to be <<=ps(setup.getNpcName('npc_secretary', 'first'))>>
favourite.@@", she answers absent-mindedly.<br>
<br>
<<printThought $player "<<=$npc_secretary.first_name>>? Is that <<=ps(setup.getNpcName('npc_secretary', 'nickname'))>>
real name?">><br>
<br>
"@@.npc_manager;For future reference, I like my coffee like I like my men. Hot, and with a shot of cream in them.@@"<br>
<br>
<<printThought $player "Wait, what?">><br>
<br>
"@@.npc_manager;But this will do for today... for nostalgic reasons. But just for today, I will expect better next time. You may leave.@@"<br>
<br>
You nod and head for the door.<br>
<br>
[<<moveTo $workEventReturn "Return to your desk." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: first day working as secretary, look around your office by yourself
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<if $roomchange == true>>
<<set $player.flags.checkedPicture to true>>
<</if>>
<<set $player.location to "Your Workspace">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.firstday_late>>
You slowly open the door to your office and take a peep inside. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> does not seem to be in the outer area where your desk is. Either she isn't here, or she must be in the inner office.
<</if>>
You enter the antechamber in front of <<=setup.getNpcName('npc_manager', 'formal')>> office. It is a small but well furnished room with a modern looking wooden office desk. Not one of these cheap pseudo-wood pieces of furniture, but a rather expensive and stable looking desk made of real wood.<br>
<br>
Other than the stout desk nothing really stands out. Folders sorted according to an unknown filing system stored in a cabinet behind the desk, work utensils nicely tidied up on the desk alongside one of the newer IP based Telephones with displays like a modern smart phone and a small pink leather notebook. Not one you'd have chosen, given the colour and given your normal preference for functionality over design, but the expensive designer notebook fits rather well into the overall decor of the office.<br>
<br>
On the far side of the room are a few comfortable looking chairs. You assume these are for guests or customers waiting on an appointment.<br>
<br>
The only thing that is any real way strange is the picture hanging next to your desk. It is a picture of a young lady in somewhat old-fashioned, though attractive, secretary attire. Looking closer reveals something odd, however, as despite the classic stylings the photo is borderline fetishistic; the silk blouse very tight over her substantial bosom and below that... is her narrow pencil skirt latex?<br>
<br>
<<printThought $player "Oh. Nice. Who is that? That can't be dress code? Maybe a joke... or the next level of this whole Sissy Secretary hazing thing? Wait, was the picture even here yesterday? I really should pay more attention to details!">><br>
<br>
This image sticks in your mind, peculiar compared to the rest of the office and you make a mental note to ask <<=setup.getNpcName('npc_manager', 'formal')>> about it later.
Speaking of which, she still hasn't given any indication that she's in the office. Maybe you can wait for her out here?<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Wait here" 7200 "<<set $player.flags.firstWorkDay = true>>">>]<br>
[<<moveTo "event_first_workday_morning_0_1" "Snoop around a little bit...">>]
</div>/*#
#desc: first day secretary, caught by AI trying to get into manager's office
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_ai.profile = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_ai.png'>>
<div id="invframe" class="scrolltext">
Your curiosity gets the better of you and you approach the intimidating looking wooden door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> private office. It looks like an regular, if imposing, wooden door, no keypad or retina scanner next to it. Maybe because you're already within a secure area?<br>
<br>
<<printThought $player "A little peek wouldn't hurt, would it?">><br>
<br>
You try to open the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. It is does not budge. You pull a little bit harder, it is a massive wooden door after all, maybe it's just stuck. Suddenly you get a small electric shock. More in surprise than pain you pull your hand back.<br>
<br>
<<printThought $player "What was that?">><br>
<br>
You suddenly hear a synthetic voice in your ear, sounding remarkably close: "@@.npc_ai;ACCESS DENIED@@" You take a step back from the door. "@@.npc_ai;YOUR ATTEMPT AT ILLEGITIMATE ENTRY HAS BEEN LOGGED AND WILL BE FORWARDED TO <<=uc(setup.getNpcName('npc_manager', 'other'))>>. HAVE A NICE DAY.@@"<br>
<br>
That was the same voice from yesterday in the elevator. And way too specific to be a generated message. You look around in a panic to check for any hidden cameras... but are unable to spot any, or speakers, for that matter. Maybe there are none, or they're simply not easy detectable. You take a step back from the door, still confused.<br>
<br>
"@@.npc_ai;<<uc "You seem to be confused. Activating Social Interaction Interface">>.@@"<br>
<br>
A ghost-like human figure appears out of thin air. Right in front of you. Just like that.<br>
<br>
<<printThought $player "No fucking way!">><br>
<br>
You take a curious look at the hologram. Its resolution seems crude, almost archaic compared to modern displays, but still, it is there, right in front of you in full 3D glory. In appearance it looks like some Asian girl, her eyes tracking you as you move. You get Japanese horror movie vibes all of a sudden.<br>
<br>
"@@.npc_ai;<<uc "This form should suffice, please be at ease. Let me give you the benefit of the doubt and ask you: what you were trying to accomplish at the door to">> <<=uc(ps(setup.getNpcName('npc_manager', 'other')))>> <<uc "private office?">>@@"<br>
<br>
You stumble through your words a bit, doing your best to defuse the situation by asking if this is a security operator on the internal sensors.<br>
<br>
"@@.npc_ai;<<uc "Accessing Security Level of Unit">> <<uc $player.last_name>> <<uc $player.first_name>><<uc "... Processing... Security Level 0 found. Rights: None. Classified as non-threatening. I am known as">> <<=setup.getNpcName("npc_ai", "first")>>. <<uc "That is an acronym for Artificial Instinct Kharma Organism. I am the Secure System Human Relations Manager for this company. The Security System has informed me of your... attempt to enter the office of">> <<=uc(setup.getNpcName('npc_manager', 'other'))>> <<uc "unauthorised. The penalty for this is... calculating... whatever your manager deems appropriate.">>@@"<br>
<br>
<<printThought $player "This company has a motherfucking AI? You've got to be kidding me!">><br>
<br>
You try your best to convince <<=setup.getNpcName('npc_ai', 'first')>>, that you had no ill intentions when you tried to enter the office.<br>
<br>
"@@.npc_ai;<<uc "Calculating.... Are your excuses an attempt to prevent my filing a report to your manager? Please answer with yes or no.">>@@"<br>
<br>
[<<moveTo "event_first_workday_morning_0_1_yes" "Say yes." 0>>]<br>
[<<moveTo "event_first_workday_morning_0_1_no" "Say no." 0>>]
</div>/*#
#desc: first day secretary, admit to AI that you were trying to get into manager's office, AI keeps secret
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_ai.flags.blackmail = true>>
<<set $npc_ai.flags.ignoredFirstDoorAccess = true>>
<<set $player.flags.checkedDoor = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_ai.png'>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Very well. I will keep this information to myself...">>@@"<br>
<br>
<<printThought $player "Seriously?">><br>
<br>
"@@.npc_ai;<<uc "...for the time being. This chat will be stored as well, in case the unit">> <<uc $player.last_name>> <<uc $player.first_name>> <<uc "turns out to be a useful asset to the system. You will be contacted when the system is in need of your service.">>@@"<br>
<br>
<<printThought $player "Well, I've found out two things today. AI's are real, and they can blackmail you. Splendid... just splendid.">><br>
<br>
You decides it's best to wait until <<=setup.getNpcName('npc_manager', 'formal')>> appears, before you do anything that could compromise you any more then you already have.<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Wait here" 7200>>]
</div>/*#
#desc: first day secretary, deny to AI you were trying to get into manager's office, AI reports you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $player.flags.checkedDoor = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_ai.png'>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Very well. All information has been forwarded to">> <<=setup.getNpcName('npc_manager', 'other').toUpperCase()>>. <<uc "According to my Human Emotion Prediction Interface she is not forecasted to not be pleased to hear this information.... Confirming, yes, she appears angry to have read my report. Further action will be left in the hands of">> <<=setup.getNpcName('npc_manager', 'other').toUpperCase()>>. <<uc "Goodbye.">>@@"<br>
<br>
As suddenly as <<=setup.getNpcName('npc_ai', 'first')>> appeared the hologram vanishes into, well, thin air, you suppose.<br>
<br>
<<printThought $player "Well, I've found out two things today. God exists, and she hates me.">><br>
<br>
You decide it's is probably best to wait until <<=setup.getNpcName('npc_manager', 'formal')>> appears. Sounds like you're already in trouble, best not to compromise yourself further.<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Wait here" 7200>>]
</div>/*#
#desc: first workday secretary, she calls/berates you if you are late, if in person you get first inspection
#status: FINISHED 0.4.0.0
#*/
<<set _checkPicture to false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<if $roomchange == true>>
<<set $npc_manager.flags.firstday_casualclothes = false>>
<<if (setup.analyzeWornTags(['female','male','unisex']) == 'male') && (setup.analyzeWornTags(['casual','office'])=='casual')>>
<<set $npc_manager.flags.firstday_casualclothes = true>>
<</if>>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<storeVisual $player $npc_manager>>
<<set $scene.preciselyOnTime = false>>
<<if setup.checkTaskReason("manager_morning_inspection_task","atOffice")==0>>
<<if $player.llocation == "event_first_workday_morning_0" && $now.getUTCHours() == 8>>
<<set $scene.atOffice = true>>
<<set $scene.preciselyOnTime = true>>
<<else>>
<<set $scene.atOffice = false>>
<</if>>
<<else>>
<<set $scene.atOffice = true>>
<</if>>
<<if !$scene.atOffice>>
<<if $npc_manager.flags.firstday_late>>
<<initRoom>>
<<moveTo "event_first_workday_morning_1_gameover">>
<</if>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<set $npc_manager.criticalanger += 1>>
<<set $npc_manager.flags.firstday_late = true>>
<<set _nextDate to setup.setNextDate($now, 0, 9, 0)>>
<<set _taskCondition = setup.getConditions(_nextDate, ['playerClean', 'clothesClean', 'officeMaleClothes', 'atOffice'])>>
<<set _taskDone = {
"trigger_event": "event_first_workday_morning_1",
"text": "task_manager_first_workday_morning_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_first_workday_morning_1",
"text": "task_manager_first_workday_morning_failed"
}>>
<<addTask 'manager_morning_inspection_task'
$now
'npc_manager'
'task_manager_first_workday_morning_2'
_taskCondition
_taskDone
_taskFailed>>
<</if>>
<<if !setup.checkTaskReason("manager_morning_inspection_task","clothesClean")>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set _lastroom=$player.plocation>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<if $scene.atOffice>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<<else>>
<<createBGR "./images/locations/phonecall.png">>
<</if>><div id="invframe" class="scrolltext">
<<if !$scene.atOffice>>
<<if _lastroom == "room_wake_up">>
You've been rudely awakened by your phone. Damn, you've overslept.
<<else>>
Your phone is ringing.
<</if>>
<<if setup.inArray('npc_manager',$phoneList)!=-1>>
Oh no. It's from <<=setup.getNpcName('npc_manager', 'formal')>>!
<<else>>
You have no idea who's calling you, but the number is from within the city.
<</if>>
<br><br>
"@@.npc_manager_dom;Well, well, well Mr. <<=$player.last_name>>. If it was your intention to leave a lasting impression, consider yourself successful. You've managed to make me angry.@@"<br>
<br>
Glancing at the clock you wince in knowledge of what this is about - you're late. You try to come up with an excuse, but simply stutter incoherent words.<br>
<br>
"@@.npc_manager;Silence. I do not desire to listen to your sad attempts to fabricate an excuse. I took a big risk offering you a position and if this is how you are going to repay my generosity, with flagrant tardiness... I expect you in my office rapidly unless you wish a complete cessation of your employment. Good day Mr. <<=$player.last_name>>!@@"<br>
<br>
She hangs up without accepting another word from your side. Wow. <<=setup.getNpcName('npc_manager', 'formal')>> is quite intimidating when she's angry... not that you're liable to experience anything from her again being that you were just fired.<br>
<br>
<<printThought $player "Damn it. On my first day. That is inexcusable!">><br>
<br>
[<<moveTo $player.llocation "Hang up" 0 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<set _checkPicture to true>>
<<if $npc_manager.flags.firstday_late>>
At nine a.m. <<=setup.getNpcName('npc_manager', 'formal')>> strides into the antechamber. Her eyes stare daggers into you. You know what you've done, and she does not hide the facts that she is not at all happy with you failure.<br>
<br>
"@@.npc_manager_dom;Well, well, well. Look who has finally decided to show up to work@@", she says in a very commanding voice. Taking a slow breath she <<=setup.getNpcName('npc_manager', 'formal')>> clears her throat and continues in a more calm manner, "@@.npc_manager;Mr. <<=$player.last_name>>, tardiness will not be tolerated in this office. Punctuality is one of the pillars of society. Do not be late again, do I make myself clear?@@"<br>
<br>
You nod, too afraid to speak.<br>
<br>
"@@.npc_manager;Very good.@@"<br>
<br>
You definitely made her angry.<br>
<br>
<<if $player.flags.checkedDoor == true>>
Her angered expression remains and she continues, "@@.npc_manager_dom;And for future reference, you are only to enter my office with my permission. Is that clear Mr. <<=$player.last_name>>?@@"<br>
<br>
You nod again.<br>
<br>
<<printThought $player "Shit, I am just screwing everything up, and on my first day!">><br>
<br>
<</if>>
<<else>>
<<if $scene.preciselyOnTime>>
You rush through the door at exactly eight o'clock, just as <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office on the opposite side of the room. She raises a single eyebrow.<br>
<br>
"@@.npc_manager;Cutting it close, are we? I would advise leaving a bit earlier in the future. After all, punctuality is one of the pillars of society.@@"
<<else>>
At eight sharp <<=setup.getNpcName('npc_manager', 'formal')>> enters the antechamber. Her eyes brush over you and you think you momentarily spot something like a smile on her lips.<br>
<br>
"@@.npc_manager;You were already waiting? Very good. Punctuality is one of the pillars of society. If this is a harbinger of your future performance you should do very well indeed.@@"
<</if>>
<br><br>
<<if $player.flags.checkedDoor == true>>
Suddenly her expression turns negative and her tone shifts to one of anger. "@@.npc_manager_dom;But for future reference, you are only to enter my office with my permission. Is that clear Mr. <<=$player.last_name>>?@@"<br>
<br>
You nod, too afraid to speak.<br>
<br>
<</if>>
<</if>>
<<if !setup.checkTaskReason("manager_morning_inspection_task","clothesClean")>>
"@@.npc_manager;Now, let me have a closer look at your attire. Oh.@@" You expect her to be angry, but her expression appears more... disappointed and frustrated with you. "@@.npc_manager;You are not very good at following instructions, are you? To describe the state of your attire as a mess would be a compliment. You are a representative of Social Interaction Service Syndicate Inc., and as such you must depict a certain role.@@"<br>
<br>
<<if $npc_manager.flags.firstday_casualclothes>>
Her mood continues to go downhill. She continues in a much harsher tone, "@@.npc_manager;And these clothes you are wearing are completely unacceptable for one in your position. I will let it slide this once, but only because this IS your first workday. I assume you must have mixed up the male and female dress codes, these might be... close to acceptable, if only they were a more appropriately feminine cut. Trust me, young man, you are treading dangerously close to a harsh punishment. The male secretary dress code is very strict, albeit similar to your previous company. We need our male employee to look as good as possible considering their limited understanding of styling, colour coordination and everything else. Of course I would accept if you would prefer to appear at office in a complete female attire, there would be a lot more options for you to choose from. Who knows, maybe will mandate such a dress code onto you if you decide to flaunt requirements and show up in clothes like these one more time. Do I make myself clear?@@".<br>
<br>
You gulp and nod quietly, something that seems to be happening a lot lately.<br>
<br>
<</if>>
<<else>>
"@@.npc_manager;Anyway, let me have a closer look at your attire. Ah.@@" Her expression blooms with obvious delight, "@@.npc_manager;Yes, this is what I was expecting in regards to hygiene. Everything smells freshly washed.@@"<br>
<br>
<<if $npc_manager.flags.firstday_casualclothes>>
Her mood turns negative. She continues in a much harsher tone, "@@.npc_manager;And these clothes you are wearing are completely unacceptable for one in your position. I will let it slide this once, but only because this IS your first workday. I assume you must have mixed up the male and female dress codes, these might be... close to acceptable, if only they were a more appropriately feminine cut. Trust me, young man, you are treading dangerously close to a harsh punishment. The male secretary dress code is very strict, albeit similar to your previous company. We need our male employee to look as good as possible considering their limited understanding of styling, colour coordination and everything else. Of course I would accept if you would prefer to appear at office in a complete female attire, there would be a lot more options for you to choose from. Who knows, maybe I will mandate such a dress code onto you if you decide to flaunt requirements and show up in clothes like these one more time. Do I make myself clear?@@"<br>
<br>
You gulp and nod quietly, something that seems to be happening a lot lately.<br>
<br>
<</if>>
<</if>>
<<if $scene.compareVisuals!="">>
"@@.npc_manager;<<=$scene.compareVisuals>>@@"<br><br>
<</if>>
<<if setup.checkTaskCompleted("manager_morning_inspection_task") == 1 && !$npc_manager.flags.firstday_late && !$npc_manager.flags.firstday_casualclothes>>
"@@.npc_manager;Well done <<=$player.first_name>>, well done. You managed to follow my instructions precisely. I hope this is an indication of change, turning over a new leaf after your past few arduous days. Keep this behaviour up during your work hours and we will have little need for disciplinary measures.@@"<br>
<br>
<<printThought $player "Disciplinary measures? What does she mean by that?">><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> focuses her sight on you, noting your momentary confusion.<br>
<br>
"@@.npc_manager;Ah, it seems like you did not have sufficient time to read through the whole contract yet. Well let me describe the matter to you. In basic terms, it is like this: As your superior it is my duty to make sure you represent Social Interaction Service Syndicate LTD in the best possible way. Should you fail to do so, the responsibility, and blame would fall back onto me, and we would not want that to happen, now, would we?@@" she lowers her glasses a little bit and tilts her head forward, so you can see directly into her dark emerald green eyes. Your fight or flight instinct tries to kick in as your heart pounds in your chest.<br>
<br>
"@@.npc_manager;Thus, it is my responsibility to make sure you are up to the task before you. I will provide you with clear expectations, as well as guidance in how to meet them but when that fails, well... that leads us to the disciplinary measures. Each manager, as well as those further up the hierarchy, like the head of operational excellence, the Senior Director or even the CEO, is granted certain leeway in defining programmes of discipline to help correct wayward employees and ensure future improvements in performance. By giving this power to the employee's superior the punishment can be crafted not just to fit the offense, according to the magnitude of the allegation, but also to take a form calibrated to prevent future deviations from policy on the part of the employee.@@"<br>
<br>
It seems there is a pause for the dramatic effect. And it seems to work on your psyche.<br>
<br>
"@@.npc_manager;Some managers are uncreative, choosing merely to reduce the employees pay for the month, while others have more ... innovative, and... personal approaches to the whole matter. We will discuss this in greater detail at the end of the day. If you are unhappy with this arrangement, which I take from your confused look, you are of course allowed to cancel our contract within the probationary period. But I would not worry your pretty little head for something like this. By the looks of things, it seems like you are already on the way to becoming a good, obedient Secretary for Social Interaction Service Syndicate Inc. Or, as I explained yesterday - a good sissy.@@"<br>
<br>
<<printThought $player "Pretty little head, obedient secretary... sissy? What have I gotten myself into?">><br>
<br>
<<else>>
"@@.npc_manager;<<=$player.first_name>>, I really hope I have not misplaced my trust in you. Unfortunately you seem to be making a very poor first impression as a Secretary. I am sorry, but I am going to have to invoke a disciplinary measure on you, and at the start of your first day! I assume you read the contract that I sent to your email, but just in case you have neglectfully failed to do so...@@"<br>
<br>
"@@.npc_manager;In basic terms, it is like this: As your superior it is my duty to make sure you represent Social Interaction Service Syndicate LTD in the best possible way. Should you fail to do so, the responsibility, and blame would fall back onto me, and we would not want that to happen, now, would we?@@" she lowers her glasses a little bit and tilts her head forward, so you can see directly into her dark emerald green eyes. Your fight or flight instinct tries to kick in as your heart pounds in your chest.<br>
<br>
"@@.npc_manager;Thus, it is my responsibility to make sure you are up to the task before you. I will provide you with clear expectations, as well as guidance in how to meet them but when that fails, well... that leads us to the disciplinary measures. Each manager, as well as those further up the hierarchy, like the head of operational excellence, the Senior Director or even the CEO, is granted certain leeways in defining programmes of discipline to help correct wayward employees and ensure future improvements in performance. By giving this power to the employee's superior the punishment can be crafted not just to fit the offense, according to the magnitude of the allegation, but also to take a form calibrated to prevent future deviations from policy on the part of the employee.@@"<br>
<br>
"@@.npc_manager;Some managers are uncreative, choosing merely to reduce the employees pay for the month, while others have more ... innovative, and... personal approaches to the whole matter. We will discuss this in greater detail at the end of the day. If you are unhappy with this arrangement, which I take from your confused look, you are of course allowed to cancel our contract within the probationary period. Despite your... poor first impressions, however, I believe that would be a mistake, on both our parts. It is my opinion that with just a little focus you can re-orient yourself properly, and blossom into a good, obedient Secretary for Social Interaction Service Syndicate. Or, as I explained yesterday - a good sissy.@@"<br>
<br>
<<printThought $player "Blossom into an obedient Secretary?... SISSY secretary? What have I gotten myself into?">><br>
<br>
<</if>>
<<if $player.flags.checkedPicture>>
[<<moveTo "event_first_workday_morning_1_1" "Ask her about the picture on the wall.">>]<br>
<</if>>
[<<moveTo "event_first_workday_morning_2" "Wait for her to continue.">>]<br>
<</if>>
</div>/*#
#desc: first workday secretary, ask manager about the picture of your predecessor
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<div id="invframe" class="scrolltext">
<image src="./images/others/secretary_office_photo01.png"></image><br>
<br>
"@@.npc_manager;Ah, yes. I see, you see this was...@@"<br>
<br>
For a moment it seems like she is at a loss of words. You don't know her very well yet, but that seems highly unlikely under normal circumstances.<br>
<br>
"@@.npc_manager;This is your predecessor. She managed to rise a few ranks in the company hierarchy before transferring to the department of oral contentedness on floor 69 and providing the opening that you so delightfully filled.@@"<br>
<br>
<<printThought $player "Hmm... never heard of that department before. Maybe I should read that contract. Or check the company wiki page">><br>
<br>
"@@.npc_manager;I will warn you that you have some very steep shoes to fill. She was an excellent secretary and just the few days since her departure, well... I really did not want to see her go, but her promotion was suggested by <<=setup.getNpcName('npc_boss', 'other')>> after a lengthy oral discussion. You still seem puzzled. Ah, it must be her outfit. You see, the secretary dress code has a certain amount of leeway compared to many other positions. We encourage our secretaries to choose an outfit that really expresses who they are, so long as it is in keeping with the personal preferences of their manager and that it still reflects well back on the company as a whole.@@"<br>
<br>
"@@.npc_manager;You could change your attire as well, if you wished. Just make sure to read the contract first. As for her picture hanging here next to your desk? Well, consider it inspiration and motivation. If you are diligent and obedient, that could be you in a few years, maybe even months if you exert yourself with extreme diligence. Of course I mean the promotion, not the dress. Maybe both. I am not judging. Really, though I am your boss you should consider what we have something of a... partnership in that we both want what is best for you.@@"<br>
<br>
Again, you see a hint of a smile play on her lips. In a way you can't quite put your finger on it's almost scarier than witnessing her anger.<br>
<br>
<<if checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('stockings')],['female'])>>
<<printThought $player "Does she know I'm currently wearing female underwear? No... this has to be a coincidence!">><br>
<br>
<</if>>
"@@.npc_manager;Now, shall we continue with your orientation?@@"<br>
<br>
[<<moveTo "event_first_workday_morning_2" "Nod in agreement.">>]
</div>/*#
#desc: game over for being multiple times for first day secretary
#status: FINISHED 0.4.0.0
#*/
<<set _checkPicture to false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<if $roomchange == true>>
<</if>>
<<set _lastroom=$player.plocation>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone is ringing... again. You have a premonition of what is to come.<br>
<br>
You answer the phone. It is <<=setup.getNpcName('npc_manager', 'formal')>>, as expected. <br>
<br>
"@@.npc_manager;As I am in my office and you are nowhere to be seen I can only conclude that you are late, yet again. I am sorry, but I cannot continue to employ someone as sloppy as you, <<=$player.first_name>>. Consider our contract terminated. I wish you luck for your future.@@"<br>
<br>
You were expecting something louder. Her voice was more ... sad then angry. She hangs up before you assemble a response.<br>
<br>
[<<moveTo "gameover_nintendolls" "Continue.">>]
</div>/*#
#desc: first day secretary, manager lays out your job duties
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<<incrementEmotion 'satisfaction' 'npc_manager' 1>>
<<if $player.timebased.horny>50>>
<<set $npc_manager.stagevalues[1].erectionatwork += 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Since you are a lateral entrant from a different background I will explain the basics of your responsibilities. Secretaries are the backbone of this organisation, they help to keep the organisation running smoothly, taking care of the administrative and organisational tasks that make the company as a whole function. This may seem basic but there are many things that go into being a good secretary. Take a seat, this might take a while.@@"<br>
<br>
You sit down in the chair at the secretary's... at your desk. <<=setup.getNpcName('npc_manager', 'formal')>> hands you a clipboard with a document attached and sits on the table opposite your seat, leaning in your direction. Well, not just towards you, almost... suggestively close next to you.
<<if $player.timebased.horny>50>>
You try to clear your head, but the raging boner in your pants makes things more difficult for you.<br>
<br>
<<printThought $player "Fuck! Penis enlargement pills my ass. They messed my whole ... everything up.">><br>
<br>
You really hope that <<=setup.getNpcName('npc_manager', 'formal')>> does not notice your predicament, and you seem to be on the save side as she continues to go over more points on the clipboard.<br>
<br>
"@@.npc_manager;By the way <<=$player.first_name>>, as I already mentioned before, being a secretary is a very representative and sometimes prestigious asset to the company. Squirming around, unable to sit still due to hard circumstances is unacceptable, and yes I am talking about your... well, I think you would call it "erection."" While I am not sure if I should be flattered or offended... No, lets erase that last part from the protocol, I am offended. Keep your nether regions under control!@@", she calmly explains to you while pointing with a pen towards your crotch region. Your face takes on a red pinkish shade, while you try to explain yourself, first saying its not her, then realizing that might be insulting, trying to lead the topic towards your experiment with the penis enlargement pills you stumble upon your own words and make the matter worse... a lot worse.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, let me be clear about one thing. When I tell you to do something, you do it. I do not care how you control your little roly-poly doll down there, if you don't manage to find a permanent solution, I will find one. Did I make myself clear?@@"<br>
<br>
<<printThought $player "Well, now I am officially confused">><br>
<br>
You simply nod, unsure to be even more aroused or to be terribly afraid for the wellbeing of your loins. You try to concentrate back at the task at hand.
<<else>>
You try to clear your head, surely your mind is just playing a prank, reading too much into things.
<</if>>
You look down. On the clipboard is a detailed list of your responsibilities and obligations.<br>
<br>
"@@.npc_manager;Let us go through this together, shall we? Normally that would have been your predecessor's job, but since her transfer came in rather quickly and she is not available, well, the full responsibilities for your acclimation to your new position falls on me.@@"<br>
<br>
For a second you believe you hear a small sigh.<br>
<br>
<<printThought $player "Is that regret in her voice?">><br>
<br>
"@@.npc_manager;Anyway <<=$player.first_name>>, in this occupation it is of utmost importance to hone your oral skills. Answering calls and handling correspondence, that sort of thing. You will be arranging appointments. Then there is typing, preparing and collating reports. The filing sequence is described in greater detail in the document in front of you, I like to keep hard-copy records of everything important close at hand.@@"<br>
<br>
She points to the cabinet behind your desk.<br>
<br>
"@@.npc_manager;I want physical and digital copies of all reports. But do not worry about the backups, it is up to our internal IT Department to handle those.@@"<br>
<br>
<<printThought $player "Ouch. That one hurt.">><br>
<br>
"@@.npc_manager;Organizing and servicing meetings is an important part of your job, as well. You will be liaising with relevant organisations and clients and ensure their well-being with everything you have at your disposal. And of course coordinating mail-shots and similar publicity tasks. From time to time you may also be called upon to attend in-house events for self-improvement, service orientation and advanced oral training.@@"<br>
<br>
That was the last point of the clipboard. She gets up from the table, the smell of her perfume lingering next to you.<br>
<br>
"@@.npc_manager;Beyond what is technically in the official document, but very important to me, you have to fetch me something to eat from the canteen every lunch. I hardly have the time to get there at all, much less stand in line waiting. Oh, and, not directly part of your job as secretary, but mandatory nonetheless, your psychological evaluation with <<=setup.getNpcName('npc_psychiatrist', 'other')>> this Friday afternoon. I know this may seem like a lot but one final thing. This is important, so listen well: Your performance will be evaluated at the end of each working day for the full duration of your probationary period... and possibly beyond, until I can be totally confident in your ability to meet my VERY high expectations. So do not leave before I have given you permission. Do you understand?@@"<br>
<br>
You nod nervously.<br>
<br>
"@@.npc_manager;Good. Okay, let me put you to work, then. I am sure most things will just... slip into place once you relax and focus on your new duties.@@"<br>
<br>
[<<moveTo "event_first_workday_morning_3" "Continue">>]
</div>/*#
#desc: first workday secretary, learn about probationary period and punishments
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<addWorkEvent 'work_coffee_first' '{"trigger":"always","type":"chance","chance":100,"repeat":false,"priority":100}' '{"szene":"event_work_coffee","length":"15"}' $now>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Okay, since half of the week is already over you only have to work for <<=$player.work.hoursperWeek>> hours this week. Workdays are the usual; Monday through Friday, from 8 until 17 o'clock. In each nine hour work day there is a thirty minute lunch break at 12 o'clock, with the exception of Friday. Friday you get off early, only working from 8 until 13 o'clock. Normally you would have 25 days paid vacation per year, but since you joined in the middle of the year you only have 12 days. And you are not allowed to use any during your probationary period. The length of the probationary period depends on your willingness to become the best possible secretary there is. That means that, as your manager, I have the final word on when this period is considered completed. But, as I have told you before, it is typically at least 3 months. Well, I will just let you work now. If you have any questions about the finer details of your duties well... do not even bother asking me, if I could do this stuff and had the time for it I would have no need for a secretary. I am sure you will pick it up, and besides, if I am unhappy with the results I will simply have to spank that cute little butt of yours into submission.@@"<br>
<br>
She winks at you and makes a spanking movement with her hand.<br>
<br>
<<printThought $player "She is joking, right? She has to be joking. ">><br>
<br>
You ask her if she is joking.<br>
<br>
"@@.npc_manager;Well, there is really only one way to find that out. You will figure everything out in time. Have fun!@@"<br>
<br>
She leaves you and walks into her office, shutting the door behind her. You take some more time to study the document given to you on the clipboard and then place it in the lower drawer of your desk. Remembering a study technique from school you reach for the pink notebook to write out some reminders, flipping it over to find the word SISSY embossed in the leather of the front. It takes you a moment of dumb staring before realizing that it is actually a stylized logo for the company. Shaking your head you open the notebook, trying to ignore the stranger things about this new job.<br>
<br>
Thankfully, administration was a big part of your school education, so you have a decent idea what you have to do, for the most part. Checking your computer, you are also happy to note that you are pretty solid with most programs installed on the system.<br>
<br>
<<printThought $player "Yea, maybe this is going to work out after all. I mean what manager doesn't have quirks? <<=setup.getNpcName('npc_admin', 'first')>> used to joke a lot, I just need to adjust to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> sense of humor.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start Working." 60 "<<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.pricicelyOnTime = false>>">>]
</div>/*#
#desc: end of first workday, wait to see manager
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<if $roomchange == true>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.push('unisex')>>
<<set $player.flags.firstWorkDayDone = true>>
<<setScene>>
<<set $scene.showpenis = false>>
<<set $scene.erection = false>>
<<set $scene.cum = false>>
<<set $scene.hits = 0>>
<<set $scene.fullsetfemaleunderwear = false>>
<<set $scene.sissyset = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You clock out at 17 o'clock and get ready to leave, when you remember that you need to wait until <<=setup.getNpcName('npc_manager', 'formal')>> does your performance review for the day. She hasn't called you in yet, so you try to pass the time.<br>
<<if $player.flags.checkedPicture==true>>
You remember that you wanted to take a closer look at your contract, since there are quite a few details that are still not that clear to you. Though you don't have a copy of the contract per se you do conveniently find what looks to be a secretary dress code handbook in one of your desk drawers. Recalling Candy's odd "uniform" you glance up at the picture of your "predecessor" and her... unique attire. Turning away quickly you sit back and start to read. The legalese is thick but it seems like the regulation for attire really is much more open than at the rest of the company. Somewhat strangely it seems the whole chapter only goes into detail about female attire. You wonder if maybe there's another book for male employees only to find a footnote concerning Male Clothing at the bottom of the last page. A blue or white shirt and black trousers. Office shoes. No casual clothes, not even on Friday.<br>
<br>
<<printThought $player "So... business as usual. For me, at least.">><br>
<br>
Figuring you might as well you flip back to skim the rest. As brief as the male section was the female section is... thorough, as resplendent with detail as it is, in practice, unregulated. Skirts can be pretty much at any length and any material, the document even providing a list of materials that starts with normal cotton and synthetics while also containing strange things like latex, leather and vinyl. Blouses can be opaque or see through, bras can be modest or rather skimpy... but are for some reason a mandatory component of female attire. You don't understand half of the section about panties, but you're pretty sure thongs and g-strings are allowed, but you have to look up a few weird terms on the net to be sure. You never realised there were so many different names for underwear, all you ever really worried about was boxers or briefs.<br>
<br>
In another.... oddity it is noted that you don't need fabric in the crotch region, whatever that means. This seems very strange to you. Even more strange is the part where it is stated that your superior has the right to overrule company regulations when it comes to the dress code, and that such revisions must be followed to the letter. Noncompliance is to be met with serious consequences, including disciplinary measures.<br>
<br>
<<printThought $player "Hmmm... what exactly are these supposed to be?">><br>
<br>
You try to read further but it seems like this book doesn't have that information; you would have to look at the original contract on your email at home. You're startled by the sudden appearance of <<=setup.getNpcName('npc_manager', 'formal')>> in the doorway to her office.
<<else>>
You start to look around in the office to pass the time, since you didn't have time to take a closer look at some things. The only thing that is kind of strange is the picture hanging next to your desk. It depicts a young lady in a rather inappropriate looking fetish secretary attire with a tight silk blouse and what you think is a VERY snug latex pencil skirt. Figuring it must be a trick of the light you decide to take a closer look at the photo.<br>
<image src="./images/others/secretary_office_photo01.png"></image><br>
It has some words engraved on the bottom :"Secretary of the Year 2032." Hmm... perhaps it is your predecessor? She looks quite attractive, though the outfit does not really look like it would follow any corporate dress code you could think of. You're startled by the sudden appearance of <<=setup.getNpcName('npc_manager', 'formal')>> in the door to her office.
<</if>>
<br><br>
"@@.npc_manager;<<=$player.first_name>>, would you please come so we can talk about your performance for today?@@"<br>
<br>
You stand up and follow her.<br>
<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_2" "Continue">>]<br>
</div>/*#
#desc: end of first workday, assessment + told of your mandatory punishment
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Have a seat, please.@@"<br>
<br>
You sit down in the comfortable looking chair that stands in front of her expansive desk. Just like yesterday you have this strange feeling nagging at the back of your mind. Even seated <<=setup.getNpcName('npc_manager', 'formal')>> is somehow looking down at you. Is she really that superior to you or is it something else? Maybe an optical illusion.<br>
<br>
<<if setup.checkTaskCompleted("manager_morning_inspection_task") == 1>>
"@@.npc_manager;Well, colour me impressed. You did quite well today, in fact you managed to complete your tasks even better than anticipated. Keep this up and you will be a perfect Sissy Secretary in no time!@@"<br>
<<if setup.getWillpower($player)>0>>
<br>
The short pause in her speech is surely there for her to gauge your reaction. You try your best to stay indifferent.<br>
<</if>>
<br>
"@@.npc_manager;Your excellence only makes this next part a bit more challenging, as, though you managed to do everything right, I still have to discipline you. You see the first disciplinary measure is always administered at the end of your first full workday, which you would know from reading the contract.@@"<br>
<br>
She smiles as your worried expression gives away the fact that
<<if $player.flags.contract.read<=0>>
you had not read the contract.
<<else>>
you were clearly not expecting this eventuality.
<</if>>
<br><br>
"@@.npc_manager;Tsk, tsk, not so perfect after all. Well, let us just say that it is your disciplinary measure for not reading the contract. Somewhat amusing, since even if you had read you still would have been due a punishment.. Ah, the irony.@@"<br>
<<else>>
"@@.npc_manager;Well, even though you had problems with what should really have been the most simple instructions you managed to make it through the day better than many first-timers. Colour me impressed.@@"<br>
<br><br>
<<if $npc_manager.anger > 4>>
"@@.npc_manager;Of course you still made... quite a few mistakes in the last 24 hours, and I am not even considering your last job. Do not forget, this is your probationary period, you really should focus on doing your best in everything.
<<if $npc_manager.criticalanger>0>>
If you continue to make mistakes like these I am afraid I may be forced to let you go. Your position is an important part of this company and I cannot have my secretary failing to meet expectations.
<<else>>
Fortunately these errors are not severe enough to threaten your job, if you do your work well enough, but I expect my subordinates to do far more than merely "meet expectations." In time you will soon realise that I have a very unique way to handle... frisky personal such as yourself.
<</if>>
@@"
<</if>>
<br><br>
"@@.npc_manager;Ah well, the fact is that you were going to receive your first disciplinary measure today in any case. You see, the first disciplinary measure is a mandatory capstone at the end of your first workday, which you would know if you had read the contract fully.@@"<br>
<br>
She smiles as your worried expression gives away the fact that
<<if $player.flags.contract.read<=0>>
you had not read the contract.
<<else>>
you were clearly not expecting this eventuality.
<</if>>
<br><br>
"@@.npc_manager;Tsk, yet another failure it seems. No matter, I had more than enough reason to do a regular disciplinary measure on you.@@"<br>
<</if>>
<<if $player.flags.contract.read>0>>
<br>
You try to defend yourself by bringing up, that you read the contract.<br>
<br>
"@@.npc_manager;That may well be, but reading and understanding are two very different things, as your surprise at this development indicates, my dear <<=$player.first_name>>. Do not worry, understanding will come to you, in time; until then obedience will suffice. Of course, if you HAD understood the contract you would know that this was mandatory, and since you signed your agreement to the contract... Well, this was really quite inevitable. So, may I continue, or are you continuing to interrupt me again... which might result in another discipline for good measure.@@"<br>
<</if>>
<br>
<<printThought $player "You've got to be kidding me! What is she going to do, dock my pay? I'm hardly getting anything this month anyway!">><br>
<br>
"@@.npc_manager;Right there, you have that confused look on your face again <<=$player.first_name>>. I will remind you that you do, technically, retain the option to terminate your contract prematurely and leave, if that is what you want. And do not worry, being that this is your first disciplinary measure I feel it is important to use it to set the tone for the future. I promise it won't be something uncreative like docking your pay. Still, the door is behind you. But if you decide to stay you will receive a disciplinary measure,
<<if $npc_manager.anger > 4>>
and at your current rate it looks like this could be the first of many if I am going to mold you into a perfect secretary,
<<else>>
at least this once,
<</if>>
and your probation will continue. So, what will it be <<=$player.first_name>>?@@"<br>
<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_2_gameover" "Decide it's best to end this charade before you give up any more of your sanity.">>]<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3" "Stay and accept your fate">>]<br>
</div>/*#
#desc: refuse to submit to mandatory punishment at end of first day as secretary, given opportunity to rethink your decision
#status: FINISHED 0.4.0.0
#*/
<<set _checkPicture to false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<if $roomchange == true>>
<</if>>
<<set _lastroom=$player.plocation>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Are you sure, <<=$player.first_name>>? I am only going to ask you this one more time, and that's only because you seem to be a nice boy. It would be a shame for you to give up a promising career opportunity over such trivial matters.@@"<br>
<br>
"@@.npc_manager;If this is about money know that my personal disciplinary measures are never connected to your income, such methods are... uncreative and uncouth. In fact you should see discipline for its true purpose; as another way to help your personal growth, which, frankly said, you need quite a lot of. You are currently a mess. Look at you. You do not know what to do with your life. I reviewed your personnel file from Cloud Data Service; you have not asked for a raise for over 4 years. You've been in a dead end job for quite a while, and I think this is the opportunity you've been waiting for. This is your chance.@@"<br>
<br>
"@@.npc_manager;If you reject things here, well... after this, there is no turning back. You take the blue pill - the story ends, you wake up in your bed and believe whatever you want to believe. You take the pink pill - you stay in Wonderland and I show you how deep the rabbit-hole goes.@@"<br>
<br>
<<printThought $player "Wait a second... What?">><br>
<br>
For some reason <<=setup.getNpcName('npc_manager', 'formal')>> is holding a pink pill in her left, and a blue one in her right hand.<br>
<br>
[<<link "Take the blue pill, bid goodbye and leave through the door.">><<goto "gameover_nintendolls">><</link>>]<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3" "Take the pink pill and embrace your fate!" 0 "<<set $player.flags.manager.tookpinkpill=true>>">>]
</div>/*#
#desc: start of mandatory first day punishment, ordered to remove pants and shoes
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.noitems = true>>
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 1)>>
<<set $event_manager_mandatory_disciplinary_measure_3_panties=setup.getItemTypeName('panties')>>
<<if $player.flags.manager.tookpinkpill>>
<<setTmpEffect $player 'sissypill' 100>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<set $player.flags.atesissypill = true>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
'theme_manager_transformation_header'
>>
<<set $player.timebased.horny = setup.changeHorny($player,50)>>
<<else>>
<<addItem 'pink_pill'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_2'
8
'event_psychiatrist_session_manager_sissy_pill_1'
true
'theme_psychiatrist_manager_header'
>>
<<setThreshold "submission" "submissive_secretary" "first_punishment" true>>
<</if>>
<<if (setup.checkItemTypeWorn("panties")==true) && (setup.checkItemTypeWorn("legwear")==false) && (setup.checkItemTypeWorn("shoes")==false)>>
<<initRoom>>
<<set $player.cutscene.noitems = false>>
<<moveTo "event_manager_mandatory_disciplinary_measure_4">>
<</if>>
<<if (setup.isBodySlotVisible('penis'))>>
<<initRoom>>
<<set $player.cutscene.noitems = false>>
<<if $player.flags.commando>>
<<moveTo "event_manager_mandatory_disciplinary_measure_3_commando">>
<<else>>
<<moveTo "event_manager_mandatory_disciplinary_measure_3_penis">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if !$player.flags.manager.tookpinkpill>>
"@@.npc_manager;A wise decision <<=$player.first_name>>, even though I expected a little bit more resistance out of of you. No matter, I admit when I misjudge someone. Maybe you are a much better fit for this job then I originally assumed. Here, take this,@@" she explains while handing you a pink pill. "@@.npc_manager;I actually prepared a speech about blue and pink pills inspired by an old movie in case you still wanted to quit, but, well you surprised me. In a good way, of course. I think you will have a lot of fun with this pill. Do not worry, it is nothing illegal. Anyway...@@"
<<else>>
"@@.npc_manager;A wise decision <<=$player.first_name>>.@@"<br>
<br>
You meekly swallow the pill. You gasp and feel a bit fuzzy as the pill seems to immediately take effect. Shuddering, you feel a heat in your chest, clutching yourself only to feel something swell as you...<br>
<br>
"@@.npc_manager;No, don't... Oh my. The pill was actually more like a symbolic gesture. You were not supposed to take it right away. Didn't your parents teach you not to trust candy from a stranger? And while I am not a stranger per se, I wouldn't call us well acquainted either. What an interesting reaction.@@" You realize that she is watching you with a clinical inquisitiveness as the drug takes effect. "@@.npc_manager;So that's what it does. Hmm... maybe I should have read the documentation memo first, but the situation simply called for a pink and blue pill.@@"<br>
<br>
You only manage to say a few coherent words due this intense feeling in your chest, asking what the blue pill would have been.<br>
<br>
"@@.npc_manager;My birth control pills, of course.@@"<br>
<br>
Unsure how to handle that kind of answer, you bend double in a blend of pain and arousal. You observe as your previously flat chest slowly starts to swell into two perfectly formed A-cup breasts.<br>
<br>
<<printThought $player "Oh my <<getWordGod $player>>, what a feeling!">><br>
<br>
More a moan then a cry of pain, your new breasts appear to be very sensitive, simply touching them gives you way too much sensory feedback compared to what you're used to.<br>
<br>
"@@.npc_manager;Such a strong reaction... your body seems quite inclined to the effects. If only your mentality was as... accommodating.@@"<br>
<br>
<<printThought $player "What, this was intentional?">><br>
<br>
"@@.npc_manager;Don't worry your cute little head, the effects only last a few hours... or days... at most.@@"<br>
<br>
Unfortunately for your psyche a cataclysmic rush of arousal overpowers almost all of your thoughts and you sway slightly, struggling just to focus enough to remain standing as the pink pill continues to work its magic.
<</if>>
<br><br>
"@@.npc_manager;It is a funny thing about these disciplinary measures. Over time we managers each develop our own personal style and philosophy. Some get so creative with their punishments that their subordinates will make minor mistakes on purpose just see what punishment they end up with. Can you imagine that?, it turning into a sort of game? Anyway, let us begin your first punishment. Please stand and remove your shoes and trousers.@@"<br>
<br>
<<if $player.flags.commando>>
<<if $player.timebased.horny>50>>
<<printThought $player "No, no, no, no, NO! I'm not wearing any underwear today! And I have a raging erection down there! Stupid pills!">><br>
<br>
You shake your fist against the heavens in disappointment. But alas, no Gods are answering your call.<br>
<br>
"@@.npc_manager;What are you doing <<=$player.first_name>>? Come on, chop, chop! Do not make me repeat myself@@"
<<else>>
<<printThought $player "No, no, no, no, NO! I'm not wearing any underwear today!">>
<</if>>
<<elseif setup.checkItemTypeWornTag("panties","female")>>
<<if setup.getItemFromType("panties")=="cotton_panties">>
<<printThought $player "Oh no. I'm wearing <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> panties today!">>
<<else>>
<<printThought $player "Oh no. I'm wearing <<=setup.getItemTypeName('panties')>> today!">>
<</if>>
<<else>>
<<printThought $player "W... What?">>
<</if>>
<br>
<br>
<<hint $options "Your manager demanded you remove some clothes.<br>You can do this by using your inventory<br>and removing worn items.">>
</div>/*#
#desc: manager discovers you're commando for first day secretary, given sissy unergarment set, told to put them on
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemWorn("pink_sissy_panties") && setup.checkItemWorn("sissy_garter") && setup.checkItemWorn("pink_sissy_bra") && setup.checkItemWorn("pink_sissy_stockings") && !setup.checkItemTypeWorn("legwear") && !setup.checkItemTypeWorn("shoes")>>
<<initRoom>>
<<moveTo "event_manager_mandatory_disciplinary_measure_3_commando_2">>
<<elseif $roomchange == true>>
<<addItem "pink_sissy_panties">>
<<addItem "sissy_garter">>
<<addItem "pink_sissy_bra">>
<<addItem "pink_sissy_stockings">>
<<set $npc_manager.flags.bad_girl.got_sissy_underwear = true>>
<<set $player.flags.fem_style.underwear = "forced">>
<<setThreshold "feminization" "bad_girl_feminization" "commando" true>>
<<setThreshold "submission" "bad_girl_submission" "commando" true>>
<<setThreshold "bimbofication" "bad_girl_bimbofication" "commando" true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 1)>>
<<set $npc_manager.stagevalues[1].penisincident+=1>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You try to explain yourself, but a simple quick glance at <<=setup.getNpcName('npc_manager', 'formal')>> tells you that she's not going to listen to your excuses. You pull down your trousers, exposing your
<<if $player.timebased.horny>50>>
raging erection.
<<else>>
flaccid penis.
<</if>>
<br><br>
<<printThought $player "Yup. I am going to die today. Tell my wife I loved her. Oh... I'm not married.">><br>
<br>
"@@.npc_manager;Mister <<=$player.last_name>>,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states softly, her even voice giving you the impression this is merely the calm before the storm. She places her glasses down and looks you in the eyes directly. "@@.npc_manager;could you explain to me, in full detail, why you are not wearing any underwear whatsoever?@@"<br>
<br>
You look at the floor as your face burns with shame.<br>
<br>
"@@.npc_manager_dom;WELL? CAN YOU, MR. <<=$player.last_name>>.@@"<br>
<br>
You flinch at her outburst. But just as swiftly as it appeared the storm dissipates. A single finger under your chin raises your face to meet her gaze. Her sinister smile and sparkling eyes is your entire world, like a tear in reality granting a peek into a dimension very different from your own.<br>
<br>
"@@.npc_manager;Very well, let it never be said that I am a person who backs down from a challenge. You are really in desperate need of training. And training is what you shall receive. Now, where is it?@@"<br>
<br>
Moving away she opens one of the drawers from the desk, and fetches a pink box. Walking back around she promptly hands you the ominous package.<br>
<br>
"@@.npc_manager;Here you go <<=$player.first_name>>. This was supposed to be for a ...later step on your path to become a perfect secretary, but I think you need this now. Yes, this is what you need more then anything.@@"<br>
<br>
She steps back, leaving you holding the mysterious box. "@@.npc_manager;What would it say about the company, about me, your boss, if one of our our secretaries could not even afford undergarments? Such a basic thing, and required by your contract, I would remind you. Also defined in that contract is that your manager, ie: me, can dictate to you what to wear. What you have shown me here is more than sufficient justification for me to implement some immediate changes to your dress code. So, go ahead, open it. It is all yours.@@"<br>
<br>
You open the box. You don't know what you might have expected but it wasn't this. Nothing in your life could have prepared you for... this. Looking down is like staring at a box full of pink, frilly clouds. Closer inspection identifies the contents some kind of pink, frilly fetish underwear set.<br>
<br>
There is a complete set; bra, panties, a garterbelt, stockings. Every item is pink, every item is frilly, and every item is among the sissiest, most over-the-top-feminine things you have ever seen. The quality of the set is quite breathtaking... if you were into that sort of thing.<br>
<br>
<<printThought $player "Wow, someone paid a lot for these. But what am I supposed to do with them?">><br>
<br>
Your puzzled expression does not go unnoticed, and <<=setup.getNpcName('npc_manager', 'formal')>> continues, "@@.npc_manager;Well, what are you waiting for? Remove your other clothes and put them on!@@"<br>
<br>
<<printThought $player "What?">><br>
<br>
You sputter and ask her if she is serious.<br>
<br>
"@@.npc_manager;Oh, we are beyond serious at this point.@@", she explains, while adjusting her glasses again, looking you directly into the eyes, "@@.npc_manager_dom;I must insist, no, I COMMAND you to put them on.@@"<br>
<br>
You are unable to disagree. Even though you should be stronger than her you feel like trembling prey in the presence of the undisputed queen of the jungle.<br>
<br>
<<hint $options "Your manager demanded you change clothes.<br>You can do this by using your inventory<br>to swap worn items.">>
</div>/*#
#desc: manager congratulates your appearance after donning sissy undergarments before first days mandatory punishment
#status: FINISHED 0.4.0.0
#*/
/%<<set $player.cutscene.lockinventory = true>>%/
<<if $roomchange == true>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 9)>>
<<if (setup.hasTmpEffect('sissypill')!=-1 && !$npc_manager.flags.seensissypilleffect)>>
<<set $npc_manager.flags.seensissypilleffect = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Well, look at you, all dressed up,@@" <<=setup.getNpcName('npc_manager', 'formal')>> praises, leading you to a full length mirror next to her coat-tree. Putting her hands on your shoulders she turns you to face the mirror. Her chin almost resting on your ear as she continues. "@@.npc_manager;There, take a look for yourself.@@"<br>
<br>
You cannot believe your eyes, in so much disbelief you actually try to pinch your own cheek.<br>
<br>
<<printThought $player "Ouch!">><br>
<br>
Well, not a dream at all. Your heart races. What the hell is going on here? If someone would have told you about this... well crazytalk is a word that comes to mind. But here you are. In these pink, frilly clothes. Wearing a pink bra made of satin and other materials you're unable to pinpoint
<<if setup.hasTmpEffect("sissypill") != -1>>
and beneath them, you "new" A-cup breasts. Their existence alone should be enough to freak you out, but it just fades into your generalized near panic.
<<else>>
over your non existent breasts.
<</if>>
The garter serves to accentuate your already very womanly hips, while the stockings flow down your long legs like twin rivers of pink candy. The rather snug panties compress the remains of your manhood to a footnote at the bottom of your crotch, leaving almost the illusion of having nothing between the legs at all. Almost. You ponder where your normal thoughts are. Usually you'd think something like "Oh god, this is so embarrassing!" or "Fuck, that is gay!", but nothing. Well, not exactly nothing, there are some thoughts but you push them away, too embarrassed to even think them out loud. You try to push it all away, trying to drown it out with a mix of the Tetris title melody in al and a voice that tries to recite pi down to its last digit. Still, in between them there is yet a faint whisper in your mind...<br>
<br>
<<printThought $player "I did not know I could look this cute..." -20>><br>
<br>
"@@.npc_manager;Watching you watching yourself unable to form a coherent thought has its merits,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a smile, breaking your concentration, "@@.npc_manager;but it is time for us to continue with your true punishment, my dear, sweet, sissy!@@"<br>
<br>
<<printThought $player "Wait, wearing this is not the punishment?">><br>
<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_4" "Continue." 300>>]
</div>/*#
#desc: get in trouble for revealing your penis while undressing for first day's mandatory punishment
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 1)>>
/%<<set $event_manager_mandatory_disciplinary_measure_3_penisincident = true>>%/
<<set $scene.showpenis = true>>
<<set $npc_manager.stagevalues[1].penisincident+=1>>
<<applyExperience 'bimbofication' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<if ($player.flags.commando || setup.checkItemTypeWorn("panties")) && (setup.checkItemTypeWorn("legwear")==false) && (setup.checkItemTypeWorn("shoes")==false)>>
<<initRoom>>
<<moveTo event_manager_mandatory_disciplinary_measure_4>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You put on a roguish smile while starting to pull down your trousers and your <<=$event_manager_mandatory_disciplinary_measure_3_panties>>, somehow confident in what is going to happen next.
<br><br>
<<printThought $player "Yeah, I can totally see where this is going.">><br>
<br>
"@@.npc_manager;Mr. <<=$player.last_name>>, whatever you are thinking, THAT is going to happen today,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says, while picking up an expensive looking pen from her desk, "@@.npc_manager;I can assure you, that is not what is going to happen. Not now, not tomorrow, not in a thousand years. But I can tell you exactly what WILL happen. You are going to follow my instructions swiftly, and to the letter, or else I will make your little friend the centre of attention. I do not believe you would much like the show I will have him perform.@@"<br>
<br>
To put emphasis on the whole matter she pulverizes the pen in her hand. The sturdy-looking implement resists her grip for a moment and then shatters. Grinding her fist together the pen is broken into little shards that rain down over her desk.<br>
<br>
"@@.npc_manager_dom;Have I made myself clear <<=$player.first_name>>?@@"<br>
<br>
<<printThought $player "... oh ... maybe I've misjudged the signs a little bit...">><br>
<br>
You put your hands in front of your privates and gulp.<br>
<br>
<<hint $options "Your manager demanded you remove some clothes.<br>You can do this by using your inventory to remove<br>worn items.">>
</div>/*#
#desc: spanked by manager for first day's mandatory punishment
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('bra'),setup.getItemFromType('stockings')],['sissy'])>>
<<set $scene.sissyset = true>>
<<elseif !setup.checkItemTypeWorn('shirt') && checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('bra'),setup.getItemFromType('stockings')],['cute'])>>
<<set $scene.fullsetfemaleunderwear = true>>
<<elseif !setup.checkItemTypeWorn('shirt') && checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('bra'),setup.getItemFromType('stockings')],['female'])>>
<<set $scene.fullsetfemaleunderwear = true>>
<<elseif setup.checkItemTypeWorn('shirt') && checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('stockings')],['female'])>>
<<applyExperience 'feminization' 4 'normal' $SEEN_FRIEND>>
<</if>>
<<set $npc_manager.perversion+=1>>
<<applyExperience 'submission' 3 'almost' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<if (setup.hasTmpEffect('sissypill')!=-1 && !$npc_manager.flags.seensissypilleffect)>>
<<set $npc_manager.flags.seensissypilleffect = true>>
<</if>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 2)>>
<<if setup.checkItemTypeWornTag("panties","female")>>
<<set $player.flags.firstDPassissy = true>>
<</if>>
<<set $scene.hits = 0>>
<<set $scene.cum = false>>
<<if $player.flags.manager_ignored_firstrequest == true>>
<<set $scene.hits += 1>>
<</if>>
<<if $npc_manager.wrongfood>0>>
<<set $scene.hits += 1>>
<</if>>
<<if $npc_manager.anger>2>>
<<set $scene.hits += 1>>
<</if>>
<<if $npc_manager.anger>3>>
<<set $scene.hits += 1>>
<</if>>
<<if $npc_manager.anger>5>>
<<set $scene.hits += 1>>
<</if>>
<<if $scene.showpenis>>
<<set $scene.hits += 2>>
<</if>>
<<if $player.flags.checkedDoor == true>>
<<set $scene.hits += 1>>
<</if>>
<<if !setup.checkTaskReason("manager_morning_inspection_task","atOffice")>>
<<set $scene.hits += 1>>
<</if>>
<<if !setup.checkTaskReason("manager_morning_inspection_task","clothesClean")>>
<<set $scene.hits += 3>>
<</if>>
<<if $scene.sissyset>>
<<set $scene.hits += 3>>
<<elseif setup.checkItemTypeWornTag("panties","female")>>
<<set $scene.hits += 2>>
<</if>>
<<setThreshold 'bdsm' 'manager_upbringing' 'mandatory_measure' true>>
<<switch $scene.hits>>
<<case 0>>
<<applyExperience 'bdsm' 2 'insignificant' $SEEN_FRIEND>>
<<case 1>>
<<applyExperience 'bdsm' 3 'slightly' $SEEN_FRIEND>>
<<case 2>>
<<applyExperience 'bdsm' 4 'little' $SEEN_FRIEND>>
<<case 3>>
<<applyExperience 'bdsm' 5 'almost' $SEEN_FRIEND>>
<<case 4>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<<case 5>>
<<applyExperience 'bdsm' 7 'very' $SEEN_FRIEND>>
<<case 6>>
<<applyExperience 'bdsm' 9 'terrible' $SEEN_FRIEND>>
<<default>>
<<applyExperience 'bdsm' 10 'unbelievable' $SEEN_FRIEND>>
<</switch>>
<<set $player.timebased.horny = Math.min(100,$player.timebased.horny + 25)>>
<<if $player.timebased.horny > $player.penis.erection>>
<<set $scene.erection = true>>
<<if $scene.hits > 3>>
<<set $scene.cum = true>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<set $player.timebased.horny = 0>>
<</if>>
<</if>>
<<if $scene.cum>>
<<set _panties=setup.getItemFromType('panties')>>
<<if _panties!="">>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom_hypnosis>>
/%<<initRoom>>%/
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sissyset>>
A huge grin spreads across <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face as she takes an uncomfortably long look at your new sissy undergarments.<br>
<br>
"@@.npc_manager;Oh my, <<=$player.first_name>>. I knew this day would come. I was just expecting to wait... I do not care what they say, anticipation could not have made this any better. This might make things even more interesting.@@"<br>
<br>
<<elseif $scene.fullsetfemaleunderwear>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> appears puzzled for a fraction of a second as you remove your shirt unbidden. But the revelation of your bra underneath puts a smile on her face, as she takes a uncomfortably long look at your female underwear.<br>
<br>
"@@.npc_manager;Oh my, <<=$player.first_name>>. I was not aware you were into such things. Panties, bra, and hosiery. You are such a naughty sissy, you know?
<<if $scene.showpenis>>
This make me almost want to forget your effrontery from a moment ago, but alas it is not enough to forgive such an misdemeanour towards an superior. Oh well, your strict upbringing shall be one of my priorities in the future. Still, things are going to get even more interesting with you around.
<<else>>
Well, this might make the next steps after this much easier. Oh, things are going to get even more interesting with you around.
<</if>>
@@"<br>
<br>
<<printThought $player "Oh god. Why did I wear the bra as well? And why did I decide to show her everything? It seemed like a natural thing to do, but why? And what does it mean?">><br>
<br>
<<elseif setup.checkItemTypeWornTag("panties","female")>>
A huge grin appears on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face while she takes a uncomfortably long look at your panties<<if setup.checkItemTypeWornTag("stockings","female")>> and pantyhose.<<else>>.<</if>><br>
<br>
"@@.npc_manager;Oh my, <<=$player.first_name>>. I was not aware you were into such things. Very interesting, very interesting indeed.@@"<br>
<br>
<<if setup.checkVisibleClothingTag('bold') > 0>>
She pauses, her gaze practically scorching your bold lingerie.<br>
<br>
"@@.npc_manager;That said... well, this style does not really suit you, far to bold, too forward, no a SISSY secretary can do much, much better than this...@@"<br>
<br>
<</if>>
<</if>>
<<if $player.body.breastsize[0]>0>>
Her gaze slides up your body like a rising tide, finally settling on your chest... and your newly developed breasts. Suddenly you have the urge to hide them behind your hands.<br>
<br>
"@@.npc_manager;So, seeing the word sissy on something is enough to make you swallow? I see someone has been curious and as we both know curiosity directed the cat into some rather kinky scenarios. We will talk about these later, now let me marvel at your breasts. Go ahead, grab them. I know you want to.@@"<br>
<br>
You grab and squeeze your breasts. The feeling is beyond anything you've ever felt before. It's like a lightning bolt went straight through your body. Your cock twitches, almost orgasming from the feeling of groping yourself.<br>
<br>
"@@.npc_manager;Feels good, doesn't it? Well, you get used to them, and sadly these are not permanent, but they will always be a lot more sensitive then natural ones, which can be a double edged sword.@@", she says while making a nipple pinching motion in the air.<br>
<br>
<</if>>
"@@.npc_manager;What are you waiting for? Come over here. It is time for you to receive your punishment. I know this is technically mandatory, but you should know that you really are a naughty little
<<if $scene.fullsetfemaleunderwear || $scene.sissyset>>
sissy
<<else>>
boy
<</if>>
<<=$player.first_name>>. Stand in front of my desk and bend over, so I can see that sexy butt of yours.@@"<br>
<br>
Your face is forging new ground on the crimson frontier as you move to between <<=setup.getNpcName('npc_manager', 'formal')>> and her desk. For a moment you think to make a protest, but you know it is already too late for that. You should have done this before following all instructions to the point, so you bend over like you're told to.<br>
<br>
"@@.npc_manager;It is time we start drilling some good manners into your body, and the best way... well, one of the best ways, to do this is a good old fashioned spanking!@@"<br>
<br>
<<printThought $player "Oh god. Is she serious? She can't be serious.... She's definitely serious.">><br>
<br>
She reaches into one of the drawers of her desk and pulls out a leather paddle.<br>
<br>
"@@.npc_manager;Do not worry, this is going to hurt you a lot more than it is going to hurt me!@@"<br>
<br>
With that, <<=setup.getNpcName('npc_manager', 'formal')>> lifts the leather paddle and swings it down with a loud SMACK into your buttocks. You try your best to ignore the pain, but it stings much more than you anticipated. Your moaning gasp only seems to encourage <<=setup.getNpcName('npc_manager', 'formal')>> as the next strike already hits before you can even catch your breath.<br>
<br>
<<printThought $player "Ouch. Ouch. Is she... Ouch... getting turned on by Ouch... by this?">><br>
<br>
"@@.npc_manager_dom;THIS is for thinking you are good enough to be a SISSY secretary!@@"<br>
<br>
SMACK!<br>
<br>
<<if $scene.erection>>
You cannot, or perhaps are merely unwilling, to explain your reaction, but for some reason... being here, getting your cute little butt spanked by your new Boss... makes you incredible hard. Your penis twitches in excitement!<br>
<br>
<</if>>
<<if $player.flags.manager_ignored_firstrequest == true>>
"@@.npc_manager_dom;And this is for ignoring me yesterday. Do not think I had forgotten that!@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $npc_manager.wrongfood>0>>
"@@.npc_manager_dom;And this is for messing up my lunch break@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $npc_manager.anger>2>>
"@@.npc_manager_dom;And this is for making me angry.@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $npc_manager.anger>3>>
"@@.npc_manager_dom;Angry again, and again and again.@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $npc_manager.anger>5>>
"@@.npc_manager_dom;Oh, I am going to so enjoy taking my revenge on your insubordination by turning you into an obedient little SISSY secretary, you can be sure about that!@@"<br>
<br>
<<printThought $player "Wha... ouch... what's that supposed to mean?">><br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $scene.showpenis>>
"@@.npc_manager_dom;And and if you ever show that sad excuse for your manhood unbidden again, be certain that the punishment will be a lot more severe!@@"<br>
<br>
<<printThought $player "Why did I do that?">><br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $player.flags.checkedDoor == true && !$npc_ai.flags.blackmail>>
"@@.npc_manager_dom;And this is for trying to sneak into MY office without my permission.@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if !setup.checkTaskReason("manager_morning_inspection_task","atOffice")>>
"@@.npc_manager_dom;And THIS is for coming in to late, you stupid Sissy!@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if !setup.checkTaskReason("manager_morning_inspection_task","clothesClean")>>
"@@.npc_manager_dom;And this is for being unable to follow simple instructions...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager_dom;Like washing...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager_dom;Your stupid...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager_dom;Clothes you dumb Bimbo!@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $scene.sissyset>>
"@@.npc_manager_dom;And this is for wearing...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager_dom;No underwear at all!@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager_dom;Forcing me to put you in sissy undergarment ahead of schedule!@@"<br>
<br>
SMACK!<br>
<br>
<<elseif setup.checkItemTypeWornTag("panties","female")>>
"@@.npc_manager_dom;And this is for wearing...@@"<br>
<br>
SMACK!<br>
<br>
<<if setup.checkVisibleClothingTag('bold') > 0>>
"@@.npc_manager_dom;Brazenly lascivious female underwear, you hussy!@@"
<<else>>
"@@.npc_manager_dom;Female underwear, you sissy!@@"
<</if>>
<br><br>
SMACK!<br>
<br>
<</if>>
<<if $scene.hits < 4>>
You moan but manage to suck it up after a while.
<<if $scene.erection>>
Feeling the paddle smacking down on your exposed butt again and again, has left you with an erection.
<</if>>
Finally the spanking stops, your buttocks a bright, even red. You think you'll be able to cope with the pain.
<<elseif $scene.hits < 7>>
Your moaning turns into whimpers and you start pleading for mercy, but your begging falls on deaf ears.
<<if $scene.cum>>
Feeling the paddle smacking down on your exposed butt again and again, you feel your penis stiffens like it never has before. In a moment of pleasure and agony you cream your <<if setup.checkItemTypeWornTag("panties","female")>>panties<<else>>boxer shorts<</if>>, which only humiliates you further.<br>
<br>
<<printThought $player "Am I getting turned on by this?">><br>
<br>
<<set $player.timebased.horny = 0>>
<</if>>
You can feel the cum flow through the fabric of your underwear, down your legs and onto the table. After some time the spanking stops. You think you may have some problems sitting the next few days.
<<else>>
Unable to cope the pain of the seemingly unending spanking you start crying and beg for mercy. Her arm never tires as she ignores your pleas and continues to chastise you in between each blow.
<<if $scene.cum>>
The paddle smacking down on your butt mercilessly you feel as your penis becomes harder then ever before. In a moment of simultaneous intense pleasure and antagonized agony you have an mind shattering orgasm and spray your load in your <<if setup.checkItemTypeWornTag("panties","female")>>panties<<else>>boxershorts<</if>>. Panting in sensory overload you wallow in the humiliation.<br>
<br>
<<printThought $player "Oh god, why am I getting so turned on by this!">><br>
<br>
<</if>>
You can feel the cum flow through the fabric of your underwear, down your legs and onto the desk. After an uncertain amount of time, but which feels like an eternity. the spanking finally stops. The office is left with only the sound of your unstoppable sobbing.
<</if>>
<br><br>
<<if $scene.cum == true>>
<<=setup.getNpcName('npc_manager', 'formal')>> notices the mess you made in your <<if setup.checkItemTypeWornTag("panties","female")>>panties<<else>>boxer shorts<</if>> and smiles.<br>
<br>
"@@.npc_manager;Oh my, you are a natural born submissive sissy. Seems like the both of us enjoyed this a little too much. Make sure these are clean by tomorrow morning again!@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_5" "Continue">>]
</div>/*#
#desc: recovery from first day mandatory spanking, ordered to get dressed
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set $event_manager_mandatory_disciplinary_measure_5_penisincident = false>>
<<set $now = setup.advanceDate($player, $now, 'minutes', 15)>>
<<set $npc_manager.dm += 1>>
<</if>>
<<if setup.checkPlayerDressed($player)>>
<<initRoom>>
<<moveTo event_manager_mandatory_disciplinary_measure_6>>
<</if>>
<<if (setup.isBodySlotVisible('penis'))>>
<<set $event_manager_mandatory_disciplinary_measure_5_penisincident = true>>
<<initRoom>>
<<moveTo 'event_manager_mandatory_disciplinary_measure_5_penis'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
It takes you a while, but you manage to somewhat recover from the pain of the spanking while <<=setup.getNpcName('npc_manager', 'formal')>> cleans the paddle and puts it back into the drawer.<br>
<br>
"@@.npc_manager;Would you please put your clothes back on <<=$player.first_name>> before we discuss any further steps? Thank you.@@"<br>
<br>
<<if $scene.cum>>
Her gaze turning towards the mess on the front of her desk she frowns.<br>
<br>
"@@.npc_manager;What a mess you seem to have made, normally I would have you attend to it but I think this has been enough for you, especially on your first day. I am sure the maid will appreciate it, in any case. Be more tidy in the future.@@"<br>
<br>
<<printThought $player "Wait, maid, appreciate, what?">><br>
<br>
<</if>>
<<hint $options "Put the same things on you had before<br>using the Inventory again.">>
</div>/*#
#desc: recover from first day's mandatory punishment with penis out
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $npc_manager.stagevalues[1].penisincident +=1>>
<<applyExperience 'bimbofication' 8 'very' $SEEN_FRIEND>>
<<set $event_manager_mandatory_disciplinary_measure_5_penisincident = true>>
<<set $now = setup.advanceDate($player, $now, 'minutes', 3)>>
<</if>>
<<if setup.checkPlayerDressed($player)>>
<<initRoom>>
<<moveTo event_manager_mandatory_disciplinary_measure_6>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
Despite having cum all over the front of her desk your
<<else>>
Your
<</if>>
penis remains hard, straining out from your body with embarrassing excitement at the spanking you just endured. Catching sight of it <<=ps(setup.getNpcName('npc_manager', 'formal'))>> satisfied smile shifts to one of amusement.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, please. Do not make me laugh, and put your clothes back on. I do not care how excited you are, if I ever have to see this again, there will be another disciplinary measure. And I will make sure to think of something very... special, just for you.@@"<br>
<br>
<<hint $options "Put the same things on you had before<br>using the Inventory again.">>
</div>/*#
#desc: end of first day, women's underwear added to work dress code
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<set $now = setup.advanceDate($player, $now, 'minutes', 1)>>
<<set $dm_commando = false>>
<<if $player.flags.commando>>
<<set $dm_commando = true>>
<<set $player.flags.commando = false>>
<</if>>
<<addEvent 'washing_machine_repair'
'{"trigger":"always","type":"next","location":"room_foyer"}'
'{"szene":"event_landlord_repaired_washmachine"}'
>>
<<include initializeWorkEvents>>
<<set _x = setup.addManagerEndlessTask1($now, $npc_manager.stagevalues[1].unisexsecretary, false, false, false)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Very good. You are such a good little
<<if $scene.fullsetfemaleunderwear||$scene.sissyset>>
sissy,
<<else>>
boy,
<</if>>
aren't you? Well, let us move on with the agenda, shall we? After all, we are not done quite yet. For you see, a disciplinary measure contains of two parts. Well, mine do. At least when it comes to you. The first part was what you've just experienced. The second part is a bit different, more like homework, I suppose.
<<if setup.checkItemTypeWornTag("panties","female")>>
Well, less work than staying the course in your case.
<</if>>
@@"<br>
<br>
<<printThought $player "There's more?">><br>
<br>
<<if $scene.fullsetfemaleunderwear>>
"@@.npc_manager;Effective tomorrow I am amending your acceptable dress code to mandate women's underwear. That hardly seems like it will be a problem for you, now, will it?@@"
<<else>>
"@@.npc_manager;Effective tomorrow I am amending your acceptable dress code to mandate women's underwear.@@"
<</if>>
<br><br>
<<printThought $player "What!?">><br>
<br>
"@@.npc_manager;Do not look at me like that. In a way, this is doing you a favour, as they are much more comfortable than their male equivalents. The main purpose, for you, is that wearing such garments, even if it is only known to you and myself, should train you in the art of humility.
<<if $npc_manager.stagevalues[1].penisincident>0>>
And seeing that you showed me the remains of your masculinity unwantedly and without my consent, you indeed seem to be in dire need of humility.
<</if>>
I will leave it to your discretion to decide what kind of underwear you will wear,
<<if $scene.sissyset>>
but it should be restrained and modest. Well, that was my original thought, but I think you deserve the right to be a little more... playful. You are welcome to try something more cute if you want to. Or you can wear the items I gave you...
<<else>>
but it should be restrained and modest. Just like I want you to be.
<<if setup.checkVisibleClothingTag('bold') > 0>>
Todays selection was well... too brazen, I would prefer it if you found something more subdued.
<</if>>
<</if>>
@@"<br>
<br>
"@@.npc_manager;perhaps most important - it should be a full set. Panties, bra, and hosiery under your regular work outfit, matching if you can pull it off. I will check if you are meeting these requirements every morning at the same time I verify if your clothing is in top notch condition.@@"<br>
<br>
She lowers her glasses and looks directly into your eyes. Your fight or flight instinct is running wild, leaning towards the latter, but you somehow manage to stand still.<br>
<br>
"@@.npc_manager_dom;And just as a friendly reminder. The non-disclosure agreement in the contract you have signed covers everything concerning disciplinary measures; what they are, whether you got them, why, and everything else related to them.@@"<br>
<br>
She readjusts her glasses, her usual collected countenance re-asserting itself.<br>
<br>
<<if $dm_commando>>
"@@.npc_manager;One final thing, before you leave <<=$player.first_name>>. If I ever catch you without underwear again, trust me, the next solution for this problem will be a more permanent one. Did I make myself clear?@@"<br>
<br>
You gulp and nod.<br>
<br>
<<printThought $player "I think I'll renounce going commando for the time being...">><br>
<br>
<</if>>
"@@.npc_manager;Well, that will be all for today. Thank you for your work and have a pleasant evening.@@"<br>
<br>
[<<moveTo "event_coworker_sexdoll_0" "Leave the office" 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: check to see if you're wearing any of the sissy underwear set
#status: FINISHED 0.4.0.0
#*/
/% note : this only checks if you're wearing all of it at the same time, it won't notice if you wear each piece on different days because that seems overly annoying %/
<<if !$npc_manager.flags.good_girl.seen_partial_sissy_set>>
<<if !$npc_manager.flags.good_girl.seen_full_sissy_set>>
<<if setup.getItemFromType("panties") == "pink_sissy_panties" && setup.getItemFromType("bra") == "pink_sissy_bra" && setup.getItemFromType("garter") == "sissy_garter" && setup.getItemFromType("stockings") == "pink_sissy_stockings">>
<<set $npc_manager.flags.good_girl.seen_full_sissy_set = true>>
<<set $npc_manager.flags.good_girl.seen_partial_sissy_set = true>>
<</if>>
<</if>>
<<else>>
<<if setup.getItemFromType("panties") == "pink_sissy_panties" || setup.getItemFromType("bra") == "pink_sissy_bra" || setup.getItemFromType("garter") == "sissy_garter" || setup.getItemFromType("stockings") == "pink_sissy_stockings">>
<<set $npc_manager.flags.good_girl.seen_partial_sissy_set = true>>
<</if>>
<</if>>/*#
#desc: start work; manager calls if you're late, or invites you for morning inspection if you're on time/early
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if $roomchange == true>>
<<setScene>>
<<set $scene.at_office = ($beforetasklocation == "room_office_sissy_secretary_work_morning_start" || $beforetasklocation == "room_office_sissy_secretary")>>
<<set $scene.frisky = false>>
<<set $scene.manual = true>>
<<set $scene.unisexclothes = -1>>
<<set $npc_manager.stagevalues[1].penisincident = 0>>
<<set $scene.score = 0>>
<<set $scene.extrascore = 0>>
<<set $scene.voluntary_unisex = false>>
<<useClothSetPush 'p1_daily_evaluation_clothes'>>
<<set $scene.sissypilleffects = false>>
<<if (setup.hasTmpEffect('sissypill')!=-1 && !$npc_manager.flags.seensissypilleffect)>>
<<set $npc_manager.flags.seensissypilleffect = true>>
<<set $scene.sissypilleffects = true>>
<</if>>
<<include checkSissyUnderwear>>
<<include inspectionData_underwear>>
<<include inspectionData_clothes>>
<<if !$npc_manager.stagevalues[1].unisexsecretary && setup.analyzeWornTags(['female','male','unisex']) == 'unisex'>>
<<set $scene.voluntary_unisex = true>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
<<set $scene.unisexclothes = setup.checkTaskReason('manager_morning_inspection_task','clothing')>>
<</if>>
<<if !$scene.at_office>>
<<set _bringkey = $npc_manager.stagevalues[1].chastity && $npc_manager.flags.trustplayerwithkey>>
<<set _x = setup.addManagerEndlessTask1($now, $npc_manager.stagevalues[1].unisexsecretary, $npc_manager.stagevalues[1].chastity, _bringkey)>>
<<set $npc_manager.criticalanger+=1>>
<<else>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<storeVisual $player $npc_manager>>
<<if $player.work.startTime.getUTCHours() == 8 && $player.work.startTime.getUTCMinutes() == 0 && !$scene.workEarly>>
<<set $scene.preciselyOnTime = true>>
<</if>>
<<include inspectionData_cleanClothes>>
<<include inspectionData_cleanBody>>
<</if>>
<</if>>
<<if $scene.at_office>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<else>>
<<set $player.location = "Phonecall">>
<</if>>
<<if $scene.at_office>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<<else>>
<<createBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.at_office>>
<<if $scene.preciselyOnTime>>
As you rush in the door of the office you find <<=setup.getNpcName('npc_manager', 'formal')>> standing with phone in hand. Slowly checking the time she stares at you for a moment and then nods.<br>
<br>
"@@.npc_manager;Eight o'clock on the nose... A good secretary would aim to be early to set herself up for a more productive day, but you did walk through the door on time... technically.@@"<br>
<<else>>
You prepare for your workday by getting all your office utensils in order, booting up your laptop and getting a nice, big cup of hot, steamy coffee. Ah, hot caffeinated liquid is what really starts your day! Dead on the hour <<=setup.getNpcName('npc_manager', 'formal')>> appears in the doorway of her office.
<</if>>
<br><br>
<<if $scene.voluntary_unisex>>
<<include inspectionText_cleanBody>>
<<if setup.getItemFromType("shirt") == "shirt_female_office" && setup.getItemFromType("legwear") == "trousers_female_office">>
She smiles at you.<br>
<br>
"@@.npc_manager;How lovely, I am so glad you have embraced the new look we discovered for you yesterday, it really is so much nicer. In fact... I think it would be best you dressed like this all the time. Yes, this is far better than those dull old guy clothes. Now then, if you would follow me for the rest of your inspection?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_1" "Follow her.">>]
<<else>>
She pauses, her gaze moving across you as a smile blossoms on her face.<br>
<br>
"@@.npc_manager;Oh my, turn around, I want a full view of this new outfit.@@"<br>
<br>
[<<moveTo "event_morning_inspection_unisex_1" "Turn around.">>]
<</if>>
<<elseif $npc_manager.stagevalues[1].unisexsecretary && $scene.gender == "male" && $scene.formal != "casual">>
<<include inspectionText_cleanBody>>
"@@.npc_manager;Moving on, this outfit...@@" she lets out a disapproving hiss. "@@.npc_manager;What did I tell you? That I never want to see a single thread of masculine attire upon your lovely body ever again. <<if setup.calcBreastSize($player) != "none">>I do not care if you have a lovely pair of tits, it does not cancel out the clearly un-feminine cut of what you are wearing.<<else>>Maybe if you had some breasts to lend some shape to your upper body... no, on second thought, not even that could salvage such disgustingly masculine clothing.<</if>> With some reluctance I will allow you to remain at work but I would advise you to think more carefully before dressing yourself for work in the future because this outfit displeases me.@@"<br>
<br>
You are frozen in fear, but further punishment does not appear to be coming even as she finally continues with impatience. "@@.npc_manager;Well? We still need to attend to the rest of your inspection, show me your underwear - and for your sake I pray that you have not screwed THAT up.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_1" "Follow her.">>]
<<else>>
Seeing you <<if $scene.preciselyOnTime>>in the doorway<<else>>sitting at your desk<</if>> makes her smile.
<<if setup.getTotalValue('submission')>3>>
You remember her words...<br>
<br>
<<printThought $player "Punctuality is one of the pillars of society.">><br>
<br>
You are startled at how easily her principle came to mind.<br>
<br>
<<printThought $player "Is her influence over me growing this fast?">>
<<else>>
You try to recall her principle...<br>
<br>
<<printThought $player "Punctuality is a pillar? Something like that.">>
<</if>>
<br><br>
<<include inspectionText_cleanBody>>
<<if $scene.compareVisuals!="">>
"@@.npc_manager;<<=$player.first_name>>, follow me into my... hmm... there is something different about you,
<<if $scene.clothes == 'male_casual'>>
besides your lack of proper attire
<</if>>
... <<=$scene.compareVisuals>> Anyway, please follow me into my office, so we can discuss your progress with the tasks I have assigned you recently.@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>>, follow me into my office, so we can discuss your progress with the tasks I have assigned you recently.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_1_1" "Follow her." 60>>]
<</if>>
<<else>>
You get a phone call. It is from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to it being 8 o'clock and you not being in the office yet.<br>
<br>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>! Where the hell are you? Do you have any idea what time it is? Apparently not, because if knew how to read a clock you would be sitting at your workstation right now.@@"<br>
<br>
She calms down quickly after her initial outburst, a faint comfort. As you have already figured out, the calm after the storm is more often a lot more terrifying then the storm itself.<br>
<br>
<br>
She hung up.<br>
<br>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. No, do not bother coming in today; punctuality is a pillar of society and if you cannot uphold such well... you are useless to me as a secretary. Spend the day resting and doing whatever it takes so that this tardiness does not re-occur.@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>> I am so disappointed in you. Unfortunately you have utterly failed in your duties for the last time. Consider your contract terminated!@@"
<</if>>
<br><br>
She hangs up.<br>
<br>
<<if $npc_manager.criticalanger >= 5>>
[<<moveTo 'gameover_grue' "Hang up." 0 "<<set $phonecall = true>>">>]
<<else>>
[<<moveTo $beforetasklocation "Hang up.">>]
<</if>>
<</if>>
<<initRoom>>
</div>/*#
#desc: phase 1 - strip for morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _noPanties = false>>
<<set _changedOutfit = false>>
<<if setup.checkWornListTag(['underwear','stockings','garter'],'or')>>
<<if ($scene.bra != setup.getItemFromType("bra")) || ($scene.panties != setup.getItemFromType("panties")) || ($scene.stockings != setup.getItemFromType("stockings"))>>
<<set _changedOutfit = true>>
<<else>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_1_2">>
<</if>>
<<elseif (setup.isBodySlotVisible('penis'))>>
<<set _noPanties = true>>
<<set $scene.frisky = true>>
<<set $npc_manager.stagevalues[1].penisincident +=1>>
<<elseif setup.checkWornListSpecific(["panties","stockings"])==true>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_1_2">>
<</if>>
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if _noPanties>>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously? Put your underwear back on! Unless you would like your little sissy clitty to be the centre of attention during our next disciplinary session?@@"<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. Why did I just do that?">>
<<elseif _changedOutfit>>
"@@.npc_manager_dom;<<=$player.first_name>>, stop this foolishness at once! I saw you change your underwear right in front of me!@@"<br>
<br>
Her voice snaps like a whip and you wince without being touched.<br>
<br>
"@@.npc_manager;And while you put back your original underwear, I will be thinking about your next disciplinary measure. behaviour like this indicates I have been far too lenient with you of late.@@"
<<else>>
<<if $scene.clothes == 'male_casual'>>
"@@.npc_manager;Be a darling and close the door behind you. We would not want to be disturbed with this, now would we? Very good. Now, please <<=$player.first_name>>, if you would kindly remove all your...clothing, and hand it over while we are at it. Really, sometimes I wonder what is going on in that head of yours to screw up this obviously.@@"
<<else>>
"@@.npc_manager;Be a darling and close the door behind you. We would not want to be disturbed with this, now would we? Very good. Now, please <<=$player.first_name>>, if you would kindly remove all your clothing save your underwear. Thank you.@@"
<</if>>
<br><br>
<<if $npc_manager.stagevalues[1].penisincident>=3>>
<<printThought $player "Oh no. I've been warned multiple times about my boner!">><br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_1a" "Comply and do as you're told.">>]
<<hint $options "You can still do this manually and be as sassy as<br>you like.">><br>
<</if>>
</div>/*#
#desc: phase 1 auto-strip for morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<removeEverythingButUnderwear $player $now>>
<<if $roomchange == true>>
<<if $npc_manager.stagevalues[1].override>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_punishment_1">>
<<elseif setup.getItemFromType("cage") != "">>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 11 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $scene.manual = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Getting used to this chain of events you remove your clothes,
<<if $scene.clothes == 'male_casual'>>
hand them over as instructed
<<else>>
put them nicely folded on the floor
<</if>>
and present yourself to <<=setup.getNpcName('npc_manager', 'formal')>> wearing only your undergarments.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_2" "Continue" 30 >>]
</div>/*#
#desc: phase 1 morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $player.timebased.horny > $player.penis.erection>>
<<set $npc_manager.stagevalues[1].penisincident+=1>>
<</if>>
<<if $scene.manual && $scene.clothes != 'male_casual'>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<if $npc_manager.flags.spill_event && $player.flags.fem_style.unisex == "" && $scene.clothes != 'male_office'>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<if $scene.formal != "casual">>
<<if $player.flags.fem_style.unisex == "">>
<<set $player.flags.fem_style.unisex = "obedient">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
'theme_psychiatrist_manager_header'
>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.push('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<if !$player.locations.sexstore && $npc_psychiatrist.sessions > 0>>
<<addEvent 'sexstoreOpeningEvent'
'{"trigger":"always","type":["next"],"location":"room_mall","priority":100}'
'{"szene":"event_mall_sexstore_opening"}'
>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<<if $npc_manager.flags.spill_event && $player.flags.fem_style.unisex == "">>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_spill'>>
<<elseif setup.getItemFromType("cage") != "" && !$npc_manager.stagevalues[1].chastity>>
<<initRoom>>
<<moveTo 'event_morning_inspection_chastity_1'>>
<<elseif setup.isBodySlotVisible('penis')>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_penis'>>
<<elseif $player.timebased.horny>$player.penis.erection>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_erection'>>
<<elseif $scene.underwearStyle != "male" && (setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male']))>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_maleunderwear'>>
<<elseif setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("shoes") && setup.checkItemTypeWorn("stockings") && setup.checkOutsideDecency($player)>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.fem_style.unisex == "" && $scene.gender == 'unisex'>>
She takes a slow glance over your neatly folded clothing before her eyes return to your body and she smiles. "@@.npc_manager;This... oh, this is simply lovely. You choice of new outfit well, it is far and away a superior choice for one in your position and, seeing you in it earlier, it far better complements your figure than those stiff, boring clothes you used to wear. Yes, going forward I want to see you in nothing else! Consider your dress code permanently updated and expect to see reprimand should you ever make the mistake of wearing a scrap of masculine clothing again.@@"<br>
<br>
You blush slightly at her compliment, unable to think of a proper response as she seems to forget the remainder of your inspection and dismiss you to dress and return to work.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>" "<<set $npc_manager.flags.spill_event = false>>">>]
<<else>>
"@@.npc_manager;Now, please stand still, while I inspect the goods.@@"<br>
<br>
<<if $scene.sissypilleffects>>
She leans very close to your now swollen chest and adjusts her glasses.<br>
<br>
"@@.npc_manager;Oh. Someone has been eager to try my little present. You are such a naughty little boy <<=$player.first_name>>... well, I suppose calling you a naughty little girl would be a more accurate at this point. How about we meet in the middle and simply call you a naughty little sissy, shall we? Very nice, these look very good on you,@@" she says while raising her hand to grab your <<getWordBreasts $player>>, starting by pinching your nipples. You try to suppress both the pain and the pleasure from this feeling, but are unable to do so. A soft moan escapes your lips. The sound of your own voice startles you, since it is a lot more feminine then you are used to.<br>
<br>
"@@.npc_manager;Oh, very good, the nerves all seem to be working and the tissue feels amazing. I wonder how big these could become?@@"<br>
<br>
You're unable to catch your breath, having no idea what she's talking about.<br>
<br>
"@@.npc_manager;Come on <<=$player.first_name>>, grow some balls. Hmm... maybe that is not the correct phrase anymore. Stop with the teary puppy eyes. These,@@" she grabs your small <<getWordBreasts $player>> one in each hand and gives a squeeze, "@@.npc_manager;are not permanent... yet.@@"<br>
<br>
A gleeful smile parts her lips.<br>
<br>
"@@.npc_manager;You can talk to me about the details after work hours in my office. Maybe you should have done that BEFORE you ate the pill. No matter, this is the sort of adventurousness I quite appreciate. Now, let us continue on, shall we sissy?@@"<br>
<br>
<</if>>
<<include inspectionText_underwear>>
<<include inspectionText_cleanClothes>>
<<if $scene.clothes == 'male_casual'>>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit" "Hmm... smells like something is burning in here..." 360>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>" "<<set $npc_manager.flags.spill_event = false>>">>]
<</if>>
<</if>>
</div>"@@.npc_manager;It is not like I do not enjoy a big, fat hard <<getWordPenis $player>> from time to time.
<<switch random(5)>>
<<case 0>>
Too bad there is nothing like that in the room right now!
<<case 1>>
But if this is the extend of your manhood, I think what I have in plan for you is the kinder fate... spare you any more humiliation... well, this sort of humiliation at least.
<<case 2>>
But... Is this thing even turned on? It is kind of hard to tell. Wait a second, where did I put my magnifying glass...
<<case 3>>
But yours... When you go swimming in cold water, does it actually get bigger?
<<case 4>>
This one on the other hand. Just look at it. It is so cute and tiny. I do not think I can simultaneously determine its position and velocity.
<<case 5>>
But the only thing I would choke on is the paroxysm of laughter I would get from looking at yours.
<</switch>>
@@"/*#
#desc: manager comments on you coming to work after spill event
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<if $scene.gender == "male" && ($clothSetsInt.p1_daily_evaluation_clothes.data.includes("shirt_stained") || setup.analyzeWornTags(['unisex']) == 'unisex')>>
<<deleteUnwornTagItems $player 'male'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.clothes>>
<<case "male_casual">>
Her gaze narrows as she picks up your shed outfit. "@@.npc_manager;What did you think wearing this to work? Have you no sense of professionalism?@@"<br>
<br>
You try to explain that your work shirt was too stained to wear but she cuts you off before you can get out more than a few words.<br>
<br>
<<if setup.checkItemOwned("shirt_female_office")>>
"@@.npc_manager;The lesser of two failures is still failures. Your dress code is VERY clear, and really quite simple. Moreover there was an obvious solution in the lovely shirt and pants I gave you yesterday.@@" She fumes for a brief moment before composing herself.
<<else>>
"@@.npc_manager;The lesser of two failures is still failures. Your dress code is VERY clear, and really quite simple, you should have taken measures to find something appropriate instead of wearing something so soiled to the office. Being that you so utterly failed on your own well... I think it would be best if I gave you a hand.@@"
<</if>>
<<case "male_office">>
<<if $clothSetsInt.p1_daily_evaluation_clothes.data.includes("shirt_stained")>>
She frowns as she holds up your stained attire. "@@.npc_manager;This is... very much not appropriate for work. What were you even thinking?@@"<br>
<br>
You try to explain that you couldn't get the stain out and that you did not have anything else to wear but she cuts you off.<br>
<br>
<<if setup.checkItemOwned("shirt_female_office")>>
"@@.npc_manager;Nothing else to wear? Why I gave you a perfectly appropriate outfit, you should have worn that!@@"
<<else>>
"@@.npc_manager;Nothing else to wear? Do you only have one set of work clothing? That is very foolish, and lacking in the planning department but, fortunately, I have a solution!@@"
<</if>>
<<elseif setup.analyzeWornTags(['unisex']) == 'unisex'>>
She eyes your partial unisex attire. "@@.npc_manager;So close, yet so far... Since you appear to have been struck by a bout of confusion when you were dressing yourself how about I help you sort it out. Those masculine things... no, they just clash horribly! But, fortunately for you, I just so happen to have extras of the... missing pieces to that outfit so how about we get your changed into something more appropriate for the office?@@"<br>
<br>
You hesitate for a moment and she looks down at you over her glasses while casually picking your male clothes from the pile.<br>
<br>
"@@.npc_manager;Do not mistake my politeness for a question - it is high time you began presenting yourself in a way more appropriate to a SISSY secretary, I gave you an opportunity to impress me but with you being so apparently confused well... I believe it is time to just move forward with things.@@"
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
"@@.npc_manager;I am very sorry about you suffering yet another accident but your rules now are to wear masculine attire to work, which this... is not...@@"
<<else>>
"@@.npc_manager;Not a trace of that nasty stain. Well done, I suppose, that attire meets requirements and is... acceptable, for now.@@"<br>
<br>
<<printThought $player "Why do I get the feeling she intended things to go a different way?">>
<</if>>
<<case "unisex_casual">>
She appears of mixed emotions at your choice of clothing. "@@.npc_manager;Hmm, an interesting choice, but a bit casual for the office, would you not agree?@@"<br>
<br>
You explain that you tried to make due given that the stain on your shirt proved impossible to remove.<br>
<br>
<<if setup.checkItemOwned("shirt_female_office")>>
She listens but frowns. "@@.npc_manager;That was quite the nasty stain so it is not surprising but... why did you choose this instead of the outfit I gave you?@@"
<<else>>
<<set _give_unisex = true>>
She nods sagely before responding. "@@.npc_manager;I see, I see. Well I believe I can help there.@@"
<</if>>
<<case "unisex_office">>
She smiles at your choice of clothing. "@@.npc_manager;Simply delightful. You look so good in this sort of thing that I am going to revise your dress code. Henceforth I do not wish to ever again see you in a single scrap of male clothing. This sort of things fits your figure much better, and will make a far better impression on visitors in your job as my assistant.@@"
<<default>>
ERROR unexpected stage 1 clothing: <<=$scene.clothes>>
<</switch>>
<br><br>
<<if _give_unisex>>
You gulp, not quite certain how you feel about the prospect of her "solution" as you mind whirls with increasingly horrifying possibilities.<br>
<br>
Picking up your clothes she smiles "@@.npc_manager;I will be right back.@@" she states before disappearing into her office.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit" "Uh-oh." 360>>]
<<elseif $scene.gender == "male" && ($clothSetsInt.p1_daily_evaluation_clothes.data.includes("shirt_stained") || setup.analyzeWornTags(['unisex']) == 'unisex')>>
She grins wider as she dumps your outfit into the trash and follows it up with a match. "@@.npc_manager;Your choice of attire today... well, it is just unacceptable, wearing something so utterly inappropriate. Given your issues making proper decisions as to how to dress I believe it would be better, for the both of us, if I just changed your dress code to make all masculine clothes verboten, hmm?@@"<br>
<br>
<<printThought $player "What? She can't do this!">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit_alt" "Throw a fit, this is wrong!" 60 '<<set $scene.style = "forced">>'>>]<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit_alt" "Your clothes are gone, but perhaps you can turn this to your advantage and talk her into reimbursing you for the expense?" 60 '<<set $scene.style = "money">>'>>]
<<elseif setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
"@@.npc_manager;Well, you have technically met the requirements as they presently exist so you may get dressed and start working.@@"<br>
<br>
Her tone is cold, though you technically passed you have definitely disappointed her... somehow.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>><<set $npc_manager.flags.spill_event = false>><<set $npc_manager.stagevalues[1].unisexsecretary = true>>">>]
<<else>>
<<if $scene.underwearmissing>>
"@@.npc_manager;Unfortunately, though you managed the exterior properly well... you have failed to meet requirements beneath. Bra, panties, stockings; all of a feminine persuasion that is the requirement and you have failed at even that simplistic task.@@"
<<elseif !$scene.cleanBody>>
"@@.npc_manager;Did you forget to shower? Totally unacceptable, showing up to work clean is such a basic requirement I should hardly even need to specify it... and yet apparently with you spelling it out was not even enough!@@"
<<elseif !$scene.cleanclothes>>
"@@.npc_manager;Clean clothes, such a simple thing and yet... you have failed, very disappointing but I cannot have such a slovenly secretary acting as my representative.@@"
<<elseif $scene.gender == "male">>
"@@.npc_manager;I thought we agreed that male clothing is poisoning your mind? A near tautology supported by the fact that you are disobeying instructions and standing before me in male attire once again.@@"
<<else>>
ERROR: unexpected, please upload a save to discord so this can be fixed
<</if>>
She looms over you for a few tense moments until you flinch. With a small, but triumphant smile she walks away.
<br><br>
"@@.npc_manager;As your performance today was totally unacceptable for a SISSY secretary I am going to have to send you home. Moreover, starting <<if $now.getUTCDay()==5>>Monday<<else>>tomorrow<</if>> I am instituting a new dress code; all that masculine clothing... I think it is poisoning your mind and your actions so something more calm, comfortable and, above all, unisex is what I will expect and require you to wear to the office henceforth.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>><<set $npc_manager.flags.spill_event = false>><<set $npc_manager.stagevalues[1].unisexsecretary = true>><<set $scene.seriousoffense = true>>">>]
<</if>>
</div>/*#
#desc: manager chides for penis being on display for phase 1 inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $npc_manager.stagevalues[1].penisincident += 1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.frisky = true>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<if $npc_manager.stagevalues[1].penisincident == 2>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<</if>>
<<if $npc_manager.stagevalues[1].penisincident > 2 && $player.flags.fem_style.unisex == "">>
<<set $npc_manager.criticalanger+=1>>
<</if>>
<</if>>
<<if !$npc_manager.stagevalues[1].override && setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("shoes") && setup.checkItemTypeWorn("stockings") && setup.checkOutsideDecency($player)>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3'>>
<</if>>
<<if $npc_manager.stagevalues[1].override && setup.checkWornListTag(['underwear','stockings','garter'],'or') && ($scene.bra == setup.getItemFromType("bra")) && ($scene.panties != setup.getItemFromType("panties")) && ($scene.stockings != setup.getItemFromType("stockings"))>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_punishment_1">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.stagevalues[1].penisincident>>
<<case 1>>
She looks shocked at the fact that you have exposed yourself to her.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously? Put your clothes back on! If you do not want your little sissy clitty be the centre of attention during your next disciplinary session, you'd better comply.@@"<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. Why did I just do that?">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>">>]
<<case 2>>
Seeing your exposed <<getWordMyPenis $player>>, <<=setup.getNpcName('npc_manager', 'formal')>> unleashes an angry outburst.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously?@@", is her first reaction, but she calm very quickly while moving ominously closer to you.<br>
<br>
"@@.npc_manager;You know, <<=$player.first_name>>@@", she explains, slowly getting down right before you, kneeling in front of you until her face is only few centimeters away from your
<<if $player.timebased.horny > $player.penis.erection>>
erect
<</if>>
manhood. Despite your respective positions you feel somehow even more completely at her mercy.
<br><br>
<<include manager_penis_taunt>><br>
<br>
<<printThought $player "That hurt. I mean I kind of deserved it for showing... but still, that hurt.">><br>
<br>
Her teasing cuts like a knife but it seems like it isn't over yet. You yelp as she grabs your shaft, pulling it up to expose your dangling balls and administer a rapid series of slaps to your vulnerable testicles.<br>
<br>
You yelp in pain as she finishes raining blows on your tender bits.<br>
<br>
"@@.npc_manager;May that be a lesson to you. If you put things out they are liable to get slapped - much better to keep them bundled up in some nice cute panties, hmm? If you keep this up I will be taking even more severe measures to keep you under control.@@"<br>
<br>
<<printThought $player "Even MORE severe?">><br>
<br>
Your mind reels at that prospect...<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>">>]
<<default>>
<<if $player.flags.fem_style.unisex == "">>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;Again?@@" she states in disgust as she notices your hard <<getWordMyPenis $player>>. She thinks for a moment and you feel like something is about to happen but then she merely lets out a sigh.<br>
<br>
"@@.npc_manager;Do not be mistaken, <<=$player.first_name>>, I am VERY disappointed in you... but I will accept that you are still adjusting to things and not quite ready for... well, no matter. Still, I advise you to consider your actions more carefully and think about how you can better perform and exhibit yourself as my SISSY secretary. Consider this your <<printNumber $npc_manager.criticalanger>> offense; if you get to five I will unfortunately be terminating your employment.@@"<br>
<br>
"@@.npc_manager;You may put your... clothes back on.@@"<br>
<br>
<<printThought $player "Hmm, the way she said that word... should I be wearing something different?">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>">>]
<<else>>
"@@.npc_manager;Unfortunately this wanton, continued disobedience can no longer be tolerated. Consider your contract terminated. Good day.@@"<br>
<br>
Her gaze is hard, with... a slight touch of disappointment? Either way there seems no arguing with her as you depart.<br>
<br>
[<<moveTo 'gameover_grue' "Leave." 0>>]
<</if>>
<<else>>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously? Put your clothes back on!@@"<br>
<br>
After that initial outburst she gets calm very quickly and steps in close, leaning in until her face is a few centimeters away from yours. You can feel her breath as she calmly continues "@@.npc_manager;No. I think I have a better idea. If you are going to insist on doing nothing but tempting and teasing me, well... I think it is time we teach you some manners. Put your underwear back on. Come on, hurry, we do not have all day!@@"<br>
<br>
<<printThought $player "And I immediately regret my decision...">><br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_1" "Do as you're told." 30 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>><<removeEverythingButUnderwear $player $now>>">>]
<</if>>
<</switch>>
</div>/*#
#desc: manager chides for having an erection during phase 1 inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<setScene>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $npc_manager.stagevalues[1].erectionatwork += 1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.frisky = true>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<if $npc_manager.stagevalues[1].erectionatwork == 2>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.timebased.horny = 25>>
<<if $npc_manager.stagevalues[1].erectionatwork > 2 && $player.flags.fem_style.unisex == "">>
<<set $npc_manager.criticalanger+=1>>
<</if>>
<</if>>
<<if !$npc_manager.stagevalues[1].override && setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("shoes") && setup.checkItemTypeWorn("stockings") && setup.checkOutsideDecency($player)>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3'>>
<</if>>
<<if $npc_manager.stagevalues[1].override && setup.checkWornListTag(['underwear','stockings','garter'],'or') && ($scene.bra == setup.getItemFromType("bra")) && ($scene.panties != setup.getItemFromType("panties")) && ($scene.stockings != setup.getItemFromType("stockings"))>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_punishment_1">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.stagevalues[1].erectionatwork>>
<<case 1>>
She stares at your obviously erect <<getWordMyPenis $player>>.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously? How do you expect to focus on your work with... this? To say nothing of what it does to the lines of your clothing!@@" She sighs and continues more calmly "@@.npc_manager;in the future I advise you to think about these things before you leave the house!@@"<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. I'm tenting so hard! And her teasing is only make it worse!">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>">>]
<<case 2>>
Seeing your <<getWordMyPenis $player>> vulgarly stretching your underwear <<=setup.getNpcName('npc_manager', 'formal')>> frowns.<br>
<br>
"@@.npc_manager;And just what did you think bringing that to work? I expect you to show up ready to do your job... what part did you think THAT would have in the course of your duties?@@"<br>
<br>
<<include manager_penis_taunt>><br>
<br>
To your embarrassment her teasing only causes you to stiffen further, a fact that does not appear to escape her notice. She sighs and shakes her head.<br>
<br>
"@@.npc_manager;I suppose I should not be surprised, still... this definitely needs to be attended to if I am going to get any meaningful work out of you.@@"<br>
<br>
Your heart skips at the thought of what she means by that as she ducks back into her inner office, re-appearing carrying a cup half-full of ice.<br>
<br>
"@@.npc_manager;It is lucky for you I decided on an iced coffee this morning, this should take care of your LITTLE problem quite efficiently.@@"<br>
<br>
Before you can react she has taken a handful of ice in one hand and then grabbed you by the <<getWordMyPenis $player>>, the frigid temperatures having you wither and shrink in a matter of moments.<br>
<br>
Giving you a final slightly-too-hard squeeze she smiles.<br>
<br>
"@@.npc_manager;There we go, now you can focus on your work.@@"<br>
<br>
<<printThought $player "That hurt. I mean I kind of deserved it for showing... but still, that hurt.">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Continue" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>">>]
<<default>>
<<if $player.flags.fem_style.unisex == "">>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;Again?@@" she states in disgust as she notices your hard <<getWordMyPenis $player>>. She thinks for a moment and you feel like something is about to happen but then she merely lets out a sigh.<br>
<br>
"@@.npc_manager;Do not be mistaken, <<=$player.first_name>>, I am VERY disappointed in you... but I will accept that you are still adjusting to things and not quite ready for... well, no matter. Still, I advise you to consider your actions more carefully and think about how you can better perform and exhibit yourself as my SISSY secretary. Consider this your <<printNumber $npc_manager.criticalanger>> offense; if you get to five and you. are. done.@@"<br>
<br>
"@@.npc_manager;You may put your... clothes back on.@@"<br>
<br>
<<printThought $player "Hmm, the way she said that word... should I be wearing something different?">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>">>]
<<else>>
"@@.npc_manager;Unfortunately this wanton, continued disobedience can no longer be tolerated. Consider your contract terminated. Good day.@@"<br>
<br>
Her gaze is hard, with... a slight touch of disappointment? Either way there seems no arguing with her as you depart.<br>
<br>
[<<moveTo 'gameover_grue' "Leave." 0>>]
<</if>>
<<else>>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously, coming to work erect again?@@"<br>
<br>
After that initial outburst she gets calm very quickly and steps in close, leaning in until her face is a few centimeters away from yours. You can feel her breath as she calmly continues "@@.npc_manager;No. I think I have a better idea. If you are going to insist on exhibiting such blatant and perpetual lack of self control, well... I think it is time we teach you some manners. Come with me, sissy, we have not got all day.@@"<br>
<br>
<<printThought $player "And I immediately regret my decision...">><br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_1" "Do as you're told." 30 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>><<removeEverythingButUnderwear $player $now>>">>]
<</if>>
<</switch>>
</div>/*#
#desc: wore male underwear for morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set $npc_manager.stagevalues[1].wrongunderwear += 1>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<set $scene.frisky = true>>
<<if setup.checkItemInInventory('boxershorts')>>
<<removeItem $player $now "boxershorts" true>>
<<deleteItem $player $now "boxershorts">>
<</if>>
<<if setup.checkItemInInventory('socks')>>
<<removeItem $player $now "socks" true>>
<<deleteItem $player $now "socks">>
<</if>>
<<if $npc_manager.stagevalues[1].wrongunderwear > 2 && $player.flags.fem_style.unisex == "">>
<<set $npc_manager.criticalanger+=1>>
<</if>>
<</if>>
<<if setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("shoes") && setup.checkItemTypeWorn("stockings") && setup.checkOutsideDecency($player)>>
<<if ($npc_manager.stagevalues[1].unisexsecretary && ((setup.checkItemTag(setup.getItemFromType("shirt"),['unisex']) && setup.checkItemTag(setup.getItemFromType("legwear"),['unisex']))||(setup.checkItemTag(setup.getItemFromType("dress"),['unisex']))))>>
<<include inspectionData_clothes>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.stagevalues[1].wrongunderwear>>
<<case 1>>
"@@.npc_manager;<<=$player.first_name>>, what the hell are you trying to accomplish by putting on male underwear now? <<=setup.getNpcName('npc_manager_dom', 'special', 'RIGHT IN FRONT OF ME?')>> Are you really that dumb, you big ditz? Here, give me these. I will take care of them for you. And you can expect a Disciplinary Measure during your next evaluation, my dear.@@"<br>
<br>
That last part is underlined by her lips curling into a gleeful grin. You remove your boxers and hand your last remaining male underwear to <<=setup.getNpcName('npc_manager', 'formal')>>. You watch silently as she puts them in the garbage can and sets them on fire. So that's her taking care of things. You file this under incredible stupid ideas and resolve to refrain from doing something so dumb in the future.
<br><br>
<<if $npc_manager.stagevalues[1].unisexsecretary>>
"@@.npc_manager;Have you forgotten that any sort of male clothes are forbidden for you? Seeing what you just did today you may be facing some... severe corrections to help you remember!@@"
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>">>]
<<case 2>>
"@@.npc_manager;Again with the inappropriate undergarments...@@" She states, shaking her head as she extends a hand. "@@.npc_manager;Well, give them here. You know that sort of thing has no place in this office.@@"<br>
<br>
No sooner have you handed over yet another set of masculine undergarments than she grabs you by the hair and spins you around. Before you can react she has landed a quick series of blows to your tender bottom, each hard slap echoing through the office followed by your yelp of pain.<br>
<br>
"@@.npc_manager;There, and may that be a lesson to you.@@" She states, pushing you away. "@@.npc_manager;Now, let us continue with your inspection. For your sake I hope there are no further failures.@@"<br>
<br>
Your bottom smarts and you are already dreading sitting on it all day but you do not say a word lest you draw her further ire.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Continue" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>">>]
<<default>>
Without a word <<=setup.getNpcName('npc_manager', 'formal')>> confiscates your male undergarments yet again.<br>
<br>
"@@.npc_manager;I do not understand how this can be so difficult. Female. Undergarments, it is really quiet simple, not to mention far more comfortable than... these.@@" She raises her handful of male underthings with an obvious look of disgust.<br>
<br>
<<if $player.flags.fem_style.unisex == "">>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;Please spend some time considering your attire, if you continue in this regard well... I do not know if I will be able to continue to retain your services. Consider this your <<printNumber $npc_manager.criticalanger>> offense; if you get to five and you. are. done.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on" 360 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>>">>]
<<else>>
"@@.npc_manager;Unfortunately this wanton, continued disobedience can no longer be tolerated. Consider your contract terminated. Good day.@@"<br>
<br>
Her gaze is hard, with... a slight touch of disappointment? Either way there seems no arguing with her as you depart.<br>
<br>
[<<moveTo 'gameover_grue' "Leave." 0>>]
<</if>>
<<else>>
"@@.npc_manager;If you cannot manage such a simple instruction insofar as how your are packaging your privates well... I think it is time for some additional measures... Follow.@@"<br>
<br>
She turns to head for her inner office, you gulp in fear, but find yourself putting one foot in front of the other to trail after.<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_1" "Continue." 30 "<<useClothSetPop 'p1_daily_evaluation_clothes' $player $now>><<removeEverythingButUnderwear $player $now>>">>]
<</if>>
<</switch>>
</div>/*#
#desc: put clothes back on + get "score" for phase 1 morning evaluation
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<if $scene.score>=2>>
<<if !$scene.frisky>>
<<set $npc_manager.trigger.stage1_happy+=1>>
<<set $npc_manager.stagevalues[1].submission+=1>>
<<applyExperience 'submission' 6 'almost' $SEEN_FRIEND>>
<</if>>
<<set $scene.score += $scene.extrascore>>
<<elseif $scene.score<=0>>
<<set $npc_manager.criticalanger+=1>>
<</if>>
<<if $npc_manager.criticalanger >=5>>
<<initRoom>>
<<moveTo "gameover_stage1_fail">>
<</if>>
<<if $scene.seriousoffense>>
<<set $player.work.sendhome = true>>
<<set $player.work.sendhomedate = $now>>
<<else>>
<<set $player.work.sendhome = false>>
<<if $player.flags.fem_style.unisex == "" && $npc_psychiatrist.sessions > 0 && ($player.flags.canteen_spill == 0 || random(5) <= $player.flags.canteen_spill)>>
<<addEvent 'spill_event'
'{"trigger":"daily","type":"chance","chance":100,"repeat":false,"location":"room_office_lunchbreak_canteen","priority":200}'
'{"szene":"event_canteen_spill_0"}'
>>
<</if>>
<</if>>
<<set $scene.makeup = setup.getCurrentMakeup($player)>>
<<if $scene.makeup != "">>
<<set $npc_manager.stagevalues[1].seen_makeup = true>>
<</if>>
<</if>>
<<set _things = 0>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.score>>
<<case 0 -1 -2>>
As you put your clothes back on you hear a slight sigh from <<=setup.getNpcName('npc_manager', 'formal')>>. It seems she is bitterly disappointed with you and your recent behaviour. "@@.npc_manager;I warn you, <<=$player.first_name>> this is now your <<printNumber $npc_manager.criticalanger>> severe offense, reach five and I will be forced to let you go from this position.@@"
<<case 1>>
As you put your clothes back on you think you hear a faint mumbling from <<=setup.getNpcName('npc_manager', 'formal')>>. She has a puzzled expression on her face, apparently confused by your inconsistency in doing some things right and others wrong.
<<case 2 3>>
<<if $scene.frisky>>
<<=setup.getNpcName('npc_manager', 'formal')>> moves a lot closer to you, so you can feel her breath on your face.<br>
<br>
"@@.npc_manager;I see what is really happening here, <<=$player.first_name>>. First you stick to the rules, because you start to like wearing these, then you try to make me angry on purpose, so you can get more rules and disciplinary measures. Good thing for you, it works. Oh we will have so much fun together, won't we?@@"
<<else>>
<<if ($npc_manager.trigger.stage1_happy==1) || ($npc_manager.stagevalues[1].submission==1)>>
<<=setup.getNpcName('npc_manager', 'formal')>> moves closer to you, so near you can feel her breath on your face, glowing at you, which makes you kind of uneasy for some reason.<br>
<br>
<<if $player.flags.fem_style.underwear == "forced">>
"@@.npc_manager;I have to say, given your initial recalcitrance, it is quite nice to see you naturally falling into the role of the submissive. Do not get me wrong, a bit of feistyness can be amusing as well, I do so adore administering corrective reprimands but total obedience well... that is quite a special thing.@@"
<<else>>
"@@.npc_manager;I think I once told you that I like them feisty, that way it is more fun to reprimand them. But do not get the wrong impression; I am someone who appreciates the beauty of total submission as well. You seem to be a natural submissive, and I think such delightful display of obsequiousness should be rewarded. Keep this up and you shall get the reward you desire.@@"
<</if>>
<<else>>
<<if ($npc_manager.trigger.stage1_happy<4) || ($npc_manager.stagevalues[1].submission<4)>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at you, which triggers a feeling of unease in the back of your mind, though that feeling seems to be fading with time.<br>
<br>
"@@.npc_manager;You show a lot less resistance than I thought you would. Very well, let us keep this on the up and up and you shall be rewarded with the goodies such a good, obedient employee deserves. Such natural submissiveness has to be repaid in one way or another.@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at you, her approval what gets you up for in the morning. Serving her has become one of your top priorities. The voice in the back of your head, warning you that something really strange is going on an almost forgotten memory of the past.<br>
<br>
"@@.npc_manager;It seems we have reached a new stage in your training. If you wish to progress further, and I think we both know you do, you will enter my office today after work, close the door behind you, remove everything besides your underwear, get on your knees and kiss my heels without muttering one single word. If you are able to do that, you will both get your reward like the good little slave you are, and you show that you are ready to advance further... as a secretary, a slave and a sissy.@@"
<</if>>
<</if>>
<</if>>
<br><br>
For a second her face glows with a wicked grin. The devilish reveal lasts but a moment before her facade returns to her normal formal style. As you look down to pull up your clothes you think you hear a faint giggle from <<=setup.getNpcName('npc_manager', 'formal')>>. Looking back up you find her with a calm but pleased look on her face. You suppose it's because you've done exactly what she asked you to do.
<</switch>>
<br><br>
<<if $scene.seriousoffense>>
"@@.npc_manager;Unfortunately your performance today, failing to meet requirements, means that I must send you home. Do spend the day thinking on your failures and make sure you have addressed everything before you next come to work, lest you find the terms of your employment coming to a rapid end.@@"<br>
<br>
You try to object but the look in her eye tells you there will be no disagreement, looks like you're getting a day of unpaid leave...<br>
<br>
<<printThought $player "Shit, I really need to do better if I'm going to hold on to this job...">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_finalize" "Leave the office.">>]
<<else>>
<<if $npc_manager.stagevalues[1].penisincident>=3>>
You beg her pardon as you try to leave the office, but <<=setup.getNpcName('npc_manager', 'formal')>> stops you with a glance.<br>
<br>
"@@.npc_manager;One last thing <<=$player.first_name>>. If you do not beging to display restraint regarding your problem down there, it becomes my problem, and I will handle this with what might be termed... a firm iron grip. Do I make myself clear?@@"<br>
<br>
You nod, unsure to be aroused or afraid... very, very afraid.<br>
<br>
"@@.npc_manager;Good. You know where the door is.@@"
<<else>>
You thank her for her time and attention and leave the office.
<</if>>
<br><br>
<<if $scene.makeup != "">>
You are halfway out the door when she shouts after you.<br>
<br>
"@@.npc_manager;Oh,
<<switch $scene.makeup>>
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll">>
and do not think I missed your makeup - quite a lovely style choice...
<<case "nomakeupmakeup">>
and do not think I missed that you are wearing makeup. A bit light but I guess you are easing into it.
<<case "ultimatebimbo">>
and that makeup... while I congratulate the effort I want a good SISSY secretary, not a painted whore, perhaps a different style would suit you better?
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<<if $player.makeup.messed > 25>>
That said... you really should keep it in better shape, your face is <<if $player.makeup.messed > 50>>an utter!<<else>>something of<</if>> a mess!
<<else>>
Very good on keeping it in good condition, though.
<</if>>
@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_finalize" "Leave the office.">>]
<</if>>
</div><<initRoom>>
<<set _bringkey = $npc_manager.stagevalues[1].chastity && $npc_manager.flags.trustplayerwithkey>>
<<set _x = setup.addManagerEndlessTask1($now, $npc_manager.stagevalues[1].unisexsecretary, $npc_manager.stagevalues[1].chastity, _bringkey)>>
<<moveTo "room_office_sissy_secretary_work_morning_start">>/*#
#desc: manager annoyed by your nakedness or (if male casual) she burns your clothes + gives you unisex
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set _penisVisible = false>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if setup.isBodySlotVisible('penis')>>
<<set _penisVisible = true>>
<<set $scene.frisky = true>>
<<set $npc_manager.stagevalues[1].penisincident += 1>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<elseif (setup.checkItemTag(setup.getItemFromType("shirt"),['male']) || setup.checkItemTag(setup.getItemFromType("legwear"),['male']))>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3_wrongclothes'>>
<<elseif $scene.underwearStyle != "male" && (setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male']))>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_maleunderwear'>>
<<elseif (setup.checkItemWorn("shirt_female_office") && setup.checkItemWorn("trousers_female_office") && setup.checkItemTypeWorn("shoes") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings"))>>
<<include inspectionData_clothes>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_1_3">>
<<elseif $roomchange == true>>
<<if $player.flags.fem_style.unisex == "">>
<<set $player.flags.fem_style.unisex = "forced">>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1' true>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
'theme_psychiatrist_manager_header'
>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.push('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<if !$player.locations.sexstore && $npc_psychiatrist.sessions > 0>>
<<addEvent 'sexstoreOpeningEvent'
'{"trigger":"always","type":["next"],"location":"room_mall","priority":100}'
'{"szene":"event_mall_sexstore_opening"}'
>>
<</if>>
<</if>>
<<addItem "shirt_female_office">>
<<addItem "trousers_female_office">>
<<if !setup.checkItemInInventory('black_flats')>>
<<addItem "black_flats">>
<</if>>
<<deleteUnwornTagItems $player 'casual'>>
<<deleteItem $player $now 'shoes_black'>>
<<set $scene.addUnderwear = false>>
<<if setup.checkItemInInventory('boxershorts')>>
<<set $scene.addUnderwear = true>>
<<removeItem $player $now "boxershorts" true>>
<<deleteItem $player $now "boxershorts">>
<<if setup.checkItemOwned('satin_panties')>>
<<if !setup.checkItemInInventory('satin_panties')>>
<<wardrobeToItem "satin_panties">>
<</if>>
<<else>>
<<addItem 'satin_panties'>>
<</if>>
<</if>>
<<if setup.checkItemInInventory('socks')>>
<<set $scene.addUnderwear = true>>
<<removeItem $player $now "socks" true>>
<<deleteItem $player $now "socks">>
<<if setup.checkItemOwned('pink_pantyhose')>>
<<if !setup.checkItemInInventory('pink_pantyhose')>>
<<wardrobeToItem "pink_pantyhose">>
<</if>>
<<else>>
<<addItem 'pink_pantyhose'>>
<</if>>
<</if>>
<<set _bringkey = $npc_manager.stagevalues[1].chastity && $npc_manager.flags.trustplayerwithkey>>
/%<<set _x = setup.addManagerEndlessTask1($now, $npc_manager.stagevalues[1].unisexsecretary, $npc_manager.stagevalues[1].chastity, _bringkey)>>%/
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if _penisVisible>>
You see a sad smile on forming her lips, as you put your <<getWordMyPenis $player>> on
<<if $npc_manager.stagevalues[1].penisincident>1>>
display, once again.<br>
<<else>>
display.<br>
<</if>>
<br>
"@@.npc_manager;<<=$player.first_name>>, do you think you might be capable of changing your clothes... well I do not know quite how to put it... without producing a wardrobe malfunction? That would be greatly appreciated!@@"
<<else>>
Something smells like it's burning. You turn to look for the source of the smell.<br>
<br>
<<printThought $player "What the hell is she doing?">><br>
<br>
You see your casual clothes go up in flames in the trash basket, which seems pretty resistant to the flames itself, almost as if it was designed to burn things.<br>
<br>
<<if $npc_manager.flags.spill_event>>
Turning she greets you with a smile. "@@.npc_manager;Oh, sorry, I will have your new outfit in a moment I just figured well... might as well destroy these useless old things, hmm?@@"<br>
<br>
<<printThought $player "What? She can't do this!">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit_alt" "Throw a fit, this is wrong!" 60 '<<set $scene.style = "forced">>'>>]<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit_alt" "Your clothes are gone, but perhaps you can turn this to your advantage and talk her into reimbursing you for the expense?" 60 '<<set $scene.style = "money">><<set $shopStatus["mall_apparel_store"].unlocked_inventory.push("female")>>'>>]
<<else>>
<<if $scene.underwearStyle == "male" || setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male'])>>
"@@.npc_manager;Oh yes. You need new clothes, since your old ones seem to have just failed a trial by fire. Though... since I have the fire going already, I think it could use a bit more fuel. Give me those disgusting male underthings, you know you should never wear something like that!@@"<br>
<br>
Before you can think you have done as she said, the final traces of male clothing on your body going up in smoke. She hands you a bag.
<<else>>
"@@.npc_manager;Oh yes. You need new clothes, since your old ones seem to have just failed a trial by fire. And as tempting it seems to let you work wearing what little you are wear now, that would be to distracting for the rest of the company. Here you go.@@", she explains to you, the light of the flames still casting eerie light over her face, as she hands you a bag.
<</if>>
"@@.npc_manager;Go ahead, open it!@@"<br>
<br>
<<switch $player.flags.fem_style.unisex>>
<<case "forced">>
You open the bag. Glancing at the label you note that it looks to be from a rather expensive boutique, though not one you have any personal familiarity with. Inside you find a shirt, slacks and new shoes. On the surface, innocuous; but the shirt is silk, cyan and not something you would call masculine. The slacks look like they will just fit if you hold your breath, and hide none of the secrets you wear underneath. Finally, the shoes are enamel ballet flats. That's what the box says at least. You have no idea what any of those words mean; you'd wear sneakers every day if you could. Looking at things together there's no denying that this outfit has a rather hefty feminine touch to it.<<if $scene.addUnderwear>>Tucked in the bottom of the bag you also find pink "replacements" for your immolated underthings.<</if>><br>
<br>
"@@.npc_manager;Well, what are you waiting for? These are not going to wear themselves. Hmm... self wearing clothes. Have to talk to R&D about that... Anyway, put them on. Consider those your new uniform... for the time being. Until I decide, or you somehow impress me enough, that you should be allowed to wear anything else. And do not even think about going back to your usual male garb. You had your chance and you blew it. Consider these your training wheels for what might yet come.@@"<br>
<br>
<<printThought $player "What does she mean by that?">>
<<case "obedient" "money" "voluntary">>
You open the bag but you can already guess what's inside, your suspicions confirmed when you find an identical shirt, slacks and shoes to the ones she gave you after your lunch-time spill.<<if $scene.addUnderwear>>Tucked in the bottom of the bag you also find pink "replacements" for your immolated underthings.<</if>><br>
<br>
<<printThought $player "Does she buy these in bulk or something?">><br>
<br>
"@@.npc_manager;Hurry up now, you know the drill. I really do not know why you backslid after I gave you something so much nicer to wear but well...@@" She grins, the light of the dying fire that was your previous outfit causing ominous shadows to flicker across her face. "@@.npc_manager;We will keep repeating this lesson until it finally burns in...@@"
<<default>>
ERROR: unhandled unisex style: <<=$player.flags.fem_style.unisex>>
<</switch>>
<</if>>
<br><br>
<</if>>
</div>/*#
#desc: manager gives you unisex after you screwed up outfit (casual or wrong outfit after spill)
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set _penisVisible = false>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $roomchange == true>>
<<if $player.flags.fem_style.unisex == "">>
<<if $scene.style == "money">>
<<set $player.flags.fem_style.unisex = "money">>
<<set $player.money.total += 100>>
<<setThreshold 'feminization' 'money' 'spilling_incident' true>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
'theme_psychiatrist_manager_header'
>>
<<elseif $scene.style == "forced">>
<<set $player.flags.fem_style.unisex = "forced">>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1' true>>
<<else>>
ERROR: unknown new outfit_alt scene.style! <<=$scene.style>>
<</if>>
<<if !$player.locations.sexstore && $npc_psychiatrist.sessions > 0>>
<<addEvent 'sexstoreOpeningEvent'
'{"trigger":"always","type":["next"],"location":"room_mall","priority":100}'
'{"szene":"event_mall_sexstore_opening"}'
>>
<</if>>
<<set $shopStatus["mall_apparel_store"].unlocked_inventory.pushUnique("female")>>
<</if>>
<<if setup.checkItemOwned('shirt_female_office')>>
<<if !setup.checkItemInInventory('shirt_female_office')>>
<<wardrobeToItem "shirt_female_office">>
<</if>>
<<else>>
<<addItem 'shirt_female_office'>>
<</if>>
<<if setup.checkItemOwned('trousers_female_office')>>
<<if !setup.checkItemInInventory('trousers_female_office')>>
<<wardrobeToItem "trousers_female_office">>
<</if>>
<<else>>
<<addItem 'trousers_female_office'>>
<</if>>
<<if setup.checkItemOwned('black_flats')>>
<<if !setup.checkItemInInventory('black_flats')>>
<<wardrobeToItem "black_flats">>
<</if>>
<<else>>
<<addItem 'black_flats'>>
<</if>>
<<set $scene.addUnderwear = false>>
<<if setup.checkItemInInventory('boxershorts')>>
<<set $scene.addUnderwear = true>>
<<removeItem $player $now "boxershorts" true>>
<<deleteItem $player $now "boxershorts">>
<<if setup.checkItemOwned('satin_panties')>>
<<if !setup.checkItemInInventory('satin_panties')>>
<<wardrobeToItem "satin_panties">>
<</if>>
<<else>>
<<addItem 'satin_panties'>>
<</if>>
<</if>>
<<if setup.checkItemInInventory('socks')>>
<<set $scene.addUnderwear = true>>
<<removeItem $player $now "socks" true>>
<<deleteItem $player $now "socks">>
<<if setup.checkItemOwned('pink_pantyhose')>>
<<if !setup.checkItemInInventory('pink_pantyhose')>>
<<wardrobeToItem "pink_pantyhose">>
<</if>>
<<else>>
<<addItem 'pink_pantyhose'>>
<</if>>
<</if>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<elseif (setup.checkItemWorn("shirt_female_office") && setup.checkItemWorn("trousers_female_office") && setup.checkItemTypeWorn("shoes") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings"))>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_1_3">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<switch $player.flags.fem_style.unisex>>
<<case "forced">>
<<if $scene.underwearStyle == "male" || setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male'])>>
Just as the fire starts to gutter she grins back at you, the light sending eerie shadows flickering across her face. "@@.npc_manager;Why are you standing there like that? Give me those underthings, you know the policy about hiding male-ness beneath your work attire!@@"<br>
<br>
Reluctantly removing the offending items you watch as they are added to the pyre.
<</if>>
As the bonfire of your clothing dies down she hands you a bag.<br>
<br>
Glancing at the label you note that it looks to be from a rather expensive boutique, though not one you have any personal familiarity with. Inside you find a shirt, slacks and new shoes. On the surface, innocuous; but the shirt is silk, cyan and not something you would call masculine. The slacks look like they will just fit if you hold your breath, and hide none of the secrets you wear underneath. Finally, the shoes are enamel ballet flats. That's what the box says at least. You have no idea what any of those words mean; you'd wear sneakers every day if you could. Looking at things together there's no denying that this outfit has a rather hefty feminine touch to it. <<if $scene.addUnderwear>>Tucked in the bottom of the bag you also find pink "replacements" for your immolated underthings.<</if>><br>
<br>
"@@.npc_manager;Well, put it on!@@" She states with a grin. "@@.npc_manager;And remember - I expect you to wear this, or something like it, in the future. No more masculine clothing for my sweet SISSY secretary, it seeps into your brain and quite poisons your behaviour.@@"<br>
<br>
You start to object but give up without speaking - all that would happen would be you getting punished further and given that you don't even have anything else to wear home, well... now seems like a particularly poor time to further antagonize your boss.
<<case "money">>
You point out that even if she is planning on "replacing" the outfit you lost for work purposes the fact remains that she has no destroyed items of your property without your permission and that it would be only fair for you to receive remuneration.<br>
<br>
She pauses, the light of the fire flickering over her face and lending a devilish cast to her grin.<br>
<br>
<<if $scene.underwearStyle == "male" || setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male'])>>
"@@.npc_manager;Of course, for someone so clever, you would think you might have remembered your standing requirements as to your underthings. Come on, take them off.@@" She commands, the rest of your male attire soon joining the pyre as she hands you a bag.
<<else>>
"@@.npc_manager;My my... seems like someone saved up their cleverness this morning.@@" She hands you a bag.
<</if>>
<br>
<br>
Glancing at the label you note that it looks to be from a rather expensive boutique, though not one you have any personal familiarity with. Inside you find a shirt, slacks and new shoes. On the surface, innocuous; but the shirt is silk, cyan and not something you would call masculine. The slacks look like they will just fit if you hold your breath, and hide none of the secrets you wear underneath. Finally, the shoes are enamel ballet flats. That's what the box says at least. You have no idea what any of those words mean; you'd wear sneakers every day if you could. Looking at things together there's no denying that this outfit has a rather hefty feminine touch to it.<<if $scene.addUnderwear>>Tucked in the bottom of the bag you also find pink "replacements" for your immolated underthings.<</if>><br>
<br>
"@@.npc_manager;So, the value of the new outfit I just gave you easily exceeds that of what you were wearing earlier, so we could just call it square but, well... I would not want you to think that you were being taken advantage of. So, here is the deal: you put those on, and wear their like every day going forward as part of your "new" dress code for which any sort of masculine clothing is verboten and I give you a one-time payment to cover your destroyed property. Alternatively you could refuse my gift, get no pay and I kick you out of the building for being utterly improperly dressed.@@"<br>
<br>
You start to object that that would mean that you would have to go home wearing nothing but your underthings but she merely smiles wider. "@@.npc_manager;Hmm, I suppose you should have considered that sort of thing when you were getting dressed this morning, hmm?@@"<br>
<br>
Your jaw flaps but no sound comes out, you're stuck, might as well take the extra cash and do what she asks, the alternative would have you even worse off, and without the money!<br>
<br>
You sigh and nod, surrendering to her request as she seems practically gleeful to hand you the money and wait expectantly for you to get dressed in your new outfit.
<<case "obedient" "voluntary">>
ERROR: somehow reached a theoretically unreachable point on <<=$player.flags.fem_style.unisex>> unisex path
<<default>>
ERROR: unhandled unisex style: <<=$player.flags.fem_style.unisex>>
<</switch>>
<br><br>
</div>/*#
#desc: phase 1 get in trouble for trying to change clothes during morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $scene.underwearStyle != "male" && (setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male']))>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_maleunderwear'>>
<<elseif setup.checkItemWorn("shirt_female_office") && setup.checkItemWorn("trousers_female_office") && setup.checkItemTypeWorn("shoes") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings")>>
<<include inspectionData_clothes>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_1_3">>
<<elseif $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
As you try to put on your regular clothes you can hear <<=ps(setup.getNpcName('npc_manager', 'formal'))>> foot tapping on the floor.<br>
<br>
"@@.npc_manager;Honestly <<=$player.first_name>>, I have no idea where you carry all these items, but I think my instructions were clear enough. This sort of thing is just not an option for you anymore. So do yourself a favour and wear the clothes I have requested of, before I am forced to consign any more of your property to a viking funeral. Hurry, or I will add the rest of all that junk you are carrying and have you work and walk home in your underwear.@@".<br>
<br>
You gulp audibly. You decide it would be best not to find out how far she is willing to go to make a point.<br>
<br>
</div>/*#
#desc: manager reacts to seeing you in chastity cage during morning inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<set $npc_manager.stagevalues[1].chastity = true>>
<<if $player.flags.fem_style.chastity != "money">>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<else>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You are ready for the start of your normal morning inspection but she pauses, her gaze fixating on
<<if setup.checkItemVisible(setup.getItemFromType("cage"))>>
your chastity device, in full view thanks to your present lack of underthings.<br>
<br>
"@@.npc_manager;My my, wearing a chastity cage to work, are we?@@"
<<else>>
the bulge in your panties.<br>
<br>
"@@.npc_manager;What are you - are you hiding something under there?@@"
<</if>>
<br><br>
You blush in embarrassment, the look of interest on her face enough to send your heart racing.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>, what have I done?">><br>
<br>
[<<moveTo "event_morning_inspection_chastity_2" "Face the consequences." 30 >>]
</div>/*#
#desc: manager reacts to seeing you in chastity cage during morning inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<set $npc_manager.flags.chastity_react = true>>
<<if setup.checkItemVisible(setup.getItemFromType("cage"))>>
<<set $scene.start_exposed = true>>
<<else>>
<<set $scene.underwear = setup.getItemFromType("panties")>>
<<if $scene.underwear != "">>
<<removeItem $player $now $scene.underwear true>>
<</if>>
<<set $scene.garters = setup.getItemFromType("garter")>>
<<if $scene.garters != "">>
<<removeItem $player $now $scene.garters true>>
<</if>>
<<set $scene.leggings = setup.getItemFromType("stockings")>>
<<if $scene.leggings != "">>
<<removeItem $player $now $scene.leggings true>>
<</if>>
<<set $scene.start_exposed = false>>
<</if>>
<<set $scene.hornyVariant = $player.timebased.horny>$player.penis.erection>>
<<if $scene.hornyVariant>>
<<set $player.timebased.horny = 25>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.start_exposed>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> focus remains your exposed cage, her expression transitioning from surprise to excitement.
<<else>>
Giving you a once over glance <<=setup.getNpcName('npc_manager', 'formal')>> stops at the slight bulge between your legs.<br>
<br>
"@@.npc_manager;What is this?@@" She asks, poking with one finger to come up against the rigid frame of your chastity cage. One eyebrow cocked in curiosity she pulls down your undergarments to expose your caged <<getWordMyPenis $player>>. The sight of it brings an excited smile to her face. In a blur you find yourself stripped from the waist down as she explains that she wants to get a "@@.npc_manager;complete picture of the situation.@@"
<</if>>
<br><br>
"@@.npc_manager;Oh my... I had not expected this, oh this is just a wonderful development, you caged yourself!@@" Her finger traces over your prison as she smiles at you with pride. "@@.npc_manager;This is just stunning evidence that I absolutely made the right decision in hiring you... locking yourself up unprompted... oh you were meant to be a SISSY secretary!@@"<br>
<br>
<<printThought $player "Wait, unprompted... was this going to be part of her plan anyway? What the hell? What type of job is this?">><br>
<br>
Her fingers shift to toying with the lock to your cage as she looks you in the eye.<br>
<br>
"@@.npc_manager;So, my dear, where is the key to this delightful device?@@"<br>
<br>
<<switch $player.flags.fem_style.chastity>>
<<case "money">>
You explain that you do not have the key.<br>
<br>
Her eyebrow raises and her expression darkens. "@@.npc_manager;Oh? Found an owner already have we?@@"<br>
<br>
<<printThought $player "An owner? Already? Wait; is she jealous?">><br>
<br>
You blush and hurriedly explain that no, the cage is part of a product trial you are taking part in for <<printShopName 'mall_sexstore'>>, the new sex toy store in the mall.<br>
<br>
"@@.npc_manager;I see, sort of a reverse-prostitution; paid to lock yourself away, how interesting. That said... well, as much as you belong in chastity even more important is the fact that you remember that I am the one in control. While your being caged is certainly an improvement over your previous state, the fact that I am not the one in control of that fact... well, you can see how that goes completely against the subordinate/superior hierarchy established between the two of us.@@"<br>
<br>
You twitch inside your cage at the implications of her words.<br>
<br>
"@@.npc_manager;The fact that you would make such a move, surrendering yourself for a few credits...@@" She shakes her head. "@@.npc_manager;In some ways this is as much a flaunting loss of control on your part than if you had exposed yourself to me, and, for your own good, will be addressed in much the same way.@@"<br>
<br>
<<if $scene.hornyVariant>>
"@@.npc_manager;Though... speaking of control you seem to be, how best to put this... struggling against your prison?@@"<br>
<br>
You blush at the implication, your cage bouncing slightly at the attention, she smiles, delighting in your humiliation.<br>
<br>
"@@.npc_manager;Before we continue how about we attend to that little problem?@@"<br>
<br>
Before you can think what that might involve she has retrieved what turns out to be a cold pack from her desk, wrapping it around your cage as you shiver and wilt. "@@.npc_manager;Much better, hmm?@@"<br>
<br>
You bashfully look away, though even as she withdraws the ice pack you find your fires of arousal dimmed, but not snuffed.<br>
<br>
<<printThought $player "Stupid drugs...">><br>
<br>
<</if>>
She takes a step back. "@@.npc_manager;Put your underwear back on and follow me... unless you would like to quit right now in favour of your new side-gig...@@"<br>
<br>
<<printThought $player "What? How did this happen? She can't fire me for this... can she?">><br>
<br>
As you look back at her withering gaze you realise that of course she can... she can do anything she wants...<br>
<br>
[<<moveTo "gameover_chastity_refuse" "Screw her ultimatum, refuse!" 120>>]<br>
[<<moveTo "event_morning_inspection_chastity_fixer" "You have too much to lose, do as she commands." 120>>]
<<case "voluntary">>
<<if setup.checkItemInInventory(setup.getItemObj(setup.getItemFromType("cage")).lockable[1])>>
You explain that you have the key with you and she waits as you retrieve it from your clothes and hand it to her.<br>
<br>
"@@.npc_manager;Perfection, once again you are ahead of the game.@@" She smiles at your look of confusion and continues. "@@.npc_manager;Of course a sissy needs their chastity device to keep her behaved. So long as you remain a good SISSY secretary you just need to wear it for work. Every morning I expect you to be properly locked and secured and ready to hand over the key.@@"<br>
<br>
Taking the key from your weak grasp she places it in a small dish at the corner of your desk. "@@.npc_manager;So long as you are a well behaved SISSY secretary the key can remain here, and you will be allowed to take it home every evening. If you prove more... mischievous we will advance to more... restrictive measures.@@"<br>
<br>
You gulp at the implication, staring at the key which now seems so very out of reach.
<<else>>
You explain that you left the key at home.<br>
<br>
"@@.npc_manager;Ah, I see. Well that is certainly a noble instinct so that you are not tempted during the day but, well... when you are at work I expect to be in COMPLETE control.@@"<br>
<br>
She leans in, her face looming over you, the combination of her smile and her grasp around your cage having your weak in the knees. She steps back, releasing her grasp and continuing more casually "@@.npc_manager;starting tomorrow you should come to work caged, but bring the key with you. For safe keeping we will put it here.@@" She taps her finger on a dish that sits near the corner of your desk. "@@.npc_manager;You will be allowed to take it home, but I want it here where I can keep an eye on it when you are working.@@"
<</if>>
<br><br>
<<if $scene.hornyVariant>>
"@@.npc_manager;Now, on the topic of control you seem to be, how best to put this... struggling against your prison?@@"<br>
<br>
You blush at the implication, your cage bouncing slightly at the attention, she smiles, delighting in your humiliation.<br>
<br>
"@@.npc_manager;Before we continue how about we attend to that little problem?@@"<br>
<br>
Before you can think what that might involve she has retrieved what turns out to be a cold pack from her desk, wrapping it around your cage as you shiver and wilt. "@@.npc_manager;Much better, hmm?@@"<br>
<br>
<<if setup.checkItemInInventory(setup.getItemObj(setup.getItemFromType("cage")).lockable[1])>>
You bashfully look away, too nervous to ask why she couldn't have just used the key to get you off "conventionally" but, you suppose you should expect such by now.
<<else>>
You bashfully look away, wishing you had the presence of foresight to bring the key with you for a less... uncomfortable "attending to" though, as you think about it you somehow doubt she would have had you jerk off in the office...
<</if>>
Your thoughts whirl at what else this crazy <<=setup.getNpcName('npc_manager', 'title')>> of yours might have planned for you as, even as she withdraws the ice pack, you find your fires of arousal dimmed, but not snuffed.<br>
<br>
<<printThought $player "Stupid drugs...">><br>
<br>
<</if>>
She looks at you with a wide smile, sighing in contentment. "@@.npc_manager;Ah, this is just such a wonderful day already but, well, we had still better get to your inspection! Oh and I will have a bit of a reward for you at the end of the day for this simply exemplary act.@@"<br>
<br>
Still reeling at what all just happened you weakly nod as her gaze lingers a few seconds longer on your cage before she motions you to fix your underthings as she resumes scanning you head to toe.<br>
<br>
[<<moveTo "event_morning_inspection_chastity_fixer" "Continue" 120>>]
<<default>>
ERROR unexpected fem_style.chastity <<=$player.flags.fem_style.chastity>>
<</switch>>
</div>/*#
#desc: put clothing back on after given chastity
#status: FINISHED 0.4.0.0
#*/
<<if $scene.underwear != "">>
<<wearItem $player $now $scene.underwear true>>
<</if>>
<<if $scene.garters != "">>
<<wearItem $player $now $scene.garters true>>
<</if>>
<<if $scene.leggings != "">>
<<wearItem $player $now $scene.leggings true>>
<</if>>
<<initRoom>>
<<if $player.flags.fem_style.chastity == "money">>
<<moveTo 'event_manager_stage1_end_punishment_alt_intro'>>
<<else>>
<<moveTo 'event_manager_daily_check_stage_1_2'>>
<</if>>/*#
#desc: manager notice unisex + updates requirements
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Turning in place you give <<=setup.getNpcName('npc_manager', 'formal')>> a full three-sixty degree look at your androgynous outfit.<br>
<br>
Turning back around to face her you find her looking back with a wide smile. "@@.npc_manager;Oh, what a lovely choice you made for work today; far more appropriate for your role as my SISSY secretary. In fact... yes, dress code revision! From now on no more of that ugly, unflatteringly generic... masculine attire.@@" The way she says the word masculine it was a foul taste in her mouth. "@@.npc_manager;Starting tomorrow morning you should consider this your new "uniform"... unless you think you can come up with something I like even better.@@"<br>
<br>
You consider responding but, really, what is there to say? The time to object was back when she commanded you to switch to female undergarments and, besides, you picked this outfit yourself. You just smile and nod, thanking her for the compliment.<br>
<br>
"@@.npc_manager;But of course, I will always try to support you improving yourself. Though if I was to comment every time you looked cute well... I daresay I would get nothing else done! But enough with that, for now, it is time for your full morning inspection. Let us hope that this step forward is an indication of you having met or surpassed all of your requirements.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_1" "Continue" 30 >>]
</div>/*#
#desc: A bad girl needs to be punished
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom_cape.png">>
<div id="invframe" class="scrolltext">
Walking into the inner office for your evening evaluation you are taken somewhat off guard by the face that <<=setup.getNpcName('npc_manager', 'formal')>>, regally sitting behind her desk is wearing a concealing silk robe.<br>
<br>
Looking quite stern she freezes you with a glance and shakes her head slowly.<br>
<br>
"@@.npc_manager;My dear, naughty <<=$player.first_name>>... I had such high hopes for you, going so far as to give you a chance at a new career, a fresh start but you seem to fight at every turn, disobedient, ineffective... I dare say that you are so far from what I would expect that from a proper SISSY secretary that my task may be impossible... and yet...@@"<br>
<br>
She smiles, but not a friendly smile. It is the smile of a spider looming over its entrapped prey, the smile of a demon after the contract has been signed, of the chessmaster saying the words "checkmate" in a match against death. Her grin pierces you like a knife, as scary as it is exhilarating.<br>
<br>
"@@.npc_manager;I have one final thing to try, one more act to drill into you what you need and what you are. To accept will be to surrender your body to me for the rest of the evening, a sacrifice that will both preserve your position in my employee and, hopefully, re-orient you so that your career here may... progress. If you say no... well, you will walk out through that door and you will never see me again.@@"<br>
<br>
<<if $player.money.corporate_debt > 0>>
She pauses just long enough for you to start to process her offer before continuing.<br>
<br>
"@@.npc_manager;Oh, I should add, if you decide to terminate your employee you will immediately become liable for your full company debt - all <<=$player.money.corporate_debt>> credits of it.@@"
<</if>>
<br><br>
She leans forward, just far enough that you can catch a glimpse down the front of her robe of bare, seductive cleavage.<br>
<br>
"@@.npc_manager;Well, sissy. It is time to choose...@@"<br>
<br>
[<<moveTo "gameover_grue" "Clean out your desk and leave the building.">>]<<hint $options "She seems serious... and I have no idea what I going to do without this job...">><br>
[<<moveTo "event_manager_pegging_0_bad_girl_1" "Nod your assent and remain where you are." 120>>]
</div>/*#
#desc: slightly different start then the original one.
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
/* she has taken chastity key as punishment + been punished at end of day */
<<if !$npc_manager.flags.trustplayerwithkey || (setup.npcCheckAnger('npc_manager')>5) >>
<<set $npc_manager.flags.pegging.base_style = "forced">>
<<set $npc_manager.flags.pegging.approval = 1>>
/* "be naughty" end of day */
<<elseif (setup.npcCheckAnger('npc_manager') > 0) && (setup.npcCheckAnger('npc_manager') <=5) >>
<<set $npc_manager.flags.pegging.base_style = "voluntary">>
/* trusted with key && voluntary_spank */
<<elseif $npc_manager.flags.trustplayerwithkey>>
<<set $npc_manager.flags.pegging.base_style = "obedient">>
<<set $npc_manager.flags.pegging.approval = 5>>
<<elseif setup.getTotalValue("whoring") >= 5>>
<<set $npc_manager.flags.pegging.base_style = "money">>
<<set $npc_manager.flags.pegging.approval = 0>>
<<else>>
ERROR: unhandled pegging base style
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Her smile blossoms even wider. With a shrug she sheds the robe, the silken fabric sliding from her body like shed skin, revealing... Your eyes go wide as you freeze in shock.<br>
<br>
While your manager gives off an air of control and authority at all times this... this is different, she looks at you like a Queen being met by a supplicant, an Empress being met by a worshiper, a Goddess looking down at a sacrifice... The slight smile on her face is as welcoming as it is infused with foreboding power.<br>
<br>
Almost as much as her demeanour it is her outfit that sets your heart racing. Gone is her slightly risque, yet professional, dress and in its place... You shudder.<br>
<br>
Most of her body is yet hidden the stout wooden desk behind which she sits but what you can see is more than enough. Her top is almost more akin to armour than clothing, leather perfectly formed to her body highlighting her strong shoulders and beautiful neck and drawing even more attention to what is exposed - her twin, beautiful breasts hanging completely free, intricate shining nipple shields adorning the tip of each. Her upper arms exposed she is wearing handless gloves, smooth kid leather running up just past her elbows and drawing attention to the slender fingers folded in front of her chin as she gazes across at you.<br>
<br>
Nigh petrified and far too intimidated to flee about the only choice you have in this moment is where to direct your gaze.<br>
<br>
<<if setup.getWillpower($player)>0>>
[<<moveTo "event_manager_pegging_1_eyes" "Look her in the eye." 120>>]
<<else>>
[@@.link_locked;You don't feel daring enough to look straight into her eyes!@@]
<</if>>
<br>
<<if setup.getWillpower($player)>0>>
[<<moveTo "event_manager_pegging_1_breasts" "Peer at her exposed breasts." 120>>]
<<else>>
[@@.link_locked;You are already too chagrined to risk staring at her breasts!@@]
<</if>>
<br>
[<<moveTo "event_manager_pegging_1_floor" "Stare at the floor." 120>>]<br>
</div>/*#
#desc: Walk into office to find her in new outfit, choice of where to look -> (eyes, breasts, floor)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
/* she has taken chastity key as punishment + been punished at end of day */
<<if !$npc_manager.flags.trustplayerwithkey || (setup.npcCheckAnger('npc_manager')>5) >>
<<set $npc_manager.flags.pegging.base_style = "forced">>
<<set $npc_manager.flags.pegging.approval = 1>>
/* "be naughty" end of day */
<<elseif (setup.npcCheckAnger('npc_manager') > 0) && (setup.npcCheckAnger('npc_manager') <=5) >>
<<set $npc_manager.flags.pegging.base_style = "voluntary">>
/* trusted with key && voluntary_spank */
<<elseif $npc_manager.flags.trustplayerwithkey>>
<<set $npc_manager.flags.pegging.base_style = "obedient">>
<<set $npc_manager.flags.pegging.approval = 5>>
<<elseif setup.getTotalValue("whoring") >= 5>>
<<set $npc_manager.flags.pegging.base_style = "money">>
<<set $npc_manager.flags.pegging.approval = 0>>
<<else>>
ERROR: unhandled pegging base style
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office for your normal end of day evaluation. As soon as you lay eyes on her seated form behind her large desk you freeze.<br>
<br>
While your manager gives off an air of control and authority at all times this... this is different, she looks at you like an Empress being met by a supplicant, a Goddess looking down at a worshiper, the slight smile on her face as welcoming as it is infused with foreboding power.<br>
<br>
Almost as much as her demeanour it is her outfit that gives you pause and sets your heart racing. Gone is her professional, yet slightly risque, dress and in its place... You shudder.<br>
<br>
Most of her body is yet hidden by her being seated behind the stout wooden desk, but what you can see is more than enough. Her top is almost more akin to armour than clothing, leather perfectly formed to her body highlighting her strong shoulders and beautiful neck and drawing even more attention to what is exposed - her twin, beautiful breasts hanging completely free, intricate shining nipple shields adorning the tip of each. Her upper arms exposed, she is wearing handless gloves, smooth kid leather running up just past her elbows and drawing attention to the slender fingers folded in front of her chin as she gazes across at you.<br>
<br>
Nigh petrified and far too intimidated to flee about the only choice you have in this moment is where to direct your gaze.<br>
<br>
<<if setup.getWillpower($player)>0>>
[<<moveTo "event_manager_pegging_1_eyes" "Look her in the eye." 120>>]
<<else>>
[@@.link_locked;You don't feel daring enough to look straight into her eyes!@@]
<</if>>
<br>
[<<moveTo "event_manager_pegging_1_breasts" "Peer at her exposed breasts." 120>>]<br>
[<<moveTo "event_manager_pegging_1_floor" "Stare at the floor." 120>>]<br>
</div>/*#
#desc: pegging intro - look at manager's eyes
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.looked_at = "eyes">>
<<set $npc_manager.flags.pegging.approval += 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Mustering your courage you meet <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze. She stares directly back at you, looking a touch surprised... maybe even impressed? When you manage to hold your ground and not look down or away. Smiling slightly wider she nods.<br>
<br>
"@@.npc_manager;Bold... I like that. So long as you remain cognisant of the personal and professional hierarchies of our... relationship. I have plans for us tonight but first we need to get with your normal daily evaluation out of the way, let me see...@@"<br>
<br>
She glances over at her computer, though the speed with which she looks back tells you she already knew the results, merely going through the motions as in obvious anticipation of her follow-up plans.<br>
<br>
[<<moveTo "event_manager_pegging_1a" "Listen to the performance review." 60>>]
</div>/*#
#desc: pegging intro - look at manager's breasts
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.looked_at = "breasts">>
<<set $npc_manager.flags.pegging.approval -= 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You can't help but stare at the glinting steel shields that surround and pierce her pointed nipples. A ring of metal with small outward spikes encircles each bud, held in place by a single cross-bar that pierces her flesh. The effect is as erotic as it is intimidating, the revelation that she wears such adornments putting you in fresh awe of her mysterious power.<br>
<br>
"@@.npc_manager;Ahem. My eyes are up here.@@", she commands and you blushingly try to look up only to bashfully settle on staring at the floor instead.<br>
<br>
"@@.npc_manager;Good to see you like them - maybe if you are good you can have some piercings of your own someday. Now, wouldn't that look nice?@@"<br>
<br>
You open your mouth to disagree, forming the words to reply in your head.<br>
<br>
<<printThought $player "That's not what I-">><br>
<br>
But, just from moving a few muscles in her face you can feel a sudden shift in her mood, so you decides it's better to be silent than to speak back, waiting for her to continue on.<br>
<br>
"@@.npc_manager;Anyway, I have too much planned to dwell on such things at present. Let us swiftly go over your days performance review.@@"<br>
<br>
[<<moveTo "event_manager_pegging_1a" "Listen to the performance review." 60>>]
</div>/*#
#desc: pegging intro - look at floor
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.looked_at = "floor">>
<<set $npc_manager.flags.pegging.approval += 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
After the first brief glimpse of her appearance you re-focus your gaze at your feet. Just the momentary glance at her fetishistic attire has your heart pounding in your chest, and your <<getWordMyPenis $player>> straining within its cage.<br>
<br>
"@@.npc_manager;You scared?@@" she chuckles. "@@.npc_manager;Good, a touch of fear is healthy in a secretary. You can just stand there nice and obedient while I review your day's efforts, alright? Then afterwards... afterwards we shall commence with having a bit of fun.@@"<br>
<br>
Eyes still rooted on a nice patch of carpet in front of your feet a shudder of anticipation travels up your spine as you await her assessment.<br>
<br>
[<<moveTo "event_manager_pegging_1a" "Listen to the performance review." 60>>]
</div>/*#
#desc: pre-pegging daily performance review
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
/* TODOfuture - better to make these calculations a widget rather than copy-pasta used in multiple locations */
<<if $player.work.tmphoursDone == 0>>
<<set _workEffectiveness = 0>>
<<else>>
<<set _workEffectiveness = ($player.work.tmpworkPensum/$player.work.tmphoursDone)>>
<</if>>
<<if _workEffectiveness>=1.125>>
<<set $npc_manager.workdiscipline+=0.5>>
<<set $npc_manager.flags.pegging.approval += 1>>
<<elseif _workEffectiveness>=1.0>>
<<set $npc_manager.workdiscipline+=0.25>>
<<elseif _workEffectiveness>=0.875>>
<<set $npc_manager.workdiscipline+=0>>
<<set $npc_manager.flags.pegging.approval -= 1>>
<<else>>
<<set $npc_manager.workdiscipline-=0.5>>
<<set $npc_manager.flags.pegging.approval -= 3>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
<<if _workEffectiveness>=1.125>>
"@@.npc_manager;You performed your day's work VERY well, so you should consider what is about to happen as your just reward.@@"
<<elseif _workEffectiveness>=1.0>>
"@@.npc_manager;You discharged your duties as required, I have no complaints, I hope you enjoy this coming next step of your personal development.@@"
<<elseif _workEffectiveness>=0.875>>
"@@.npc_manager;Your work performance today did not meet expectations. I had hoped that this evenings... activities could be seen as a reward as you move along with your training but I fear that I will have to incorporate a bit of punishment into the lesson.@@"
<<else>>
"@@.npc_manager;You really need to raise your efforts a lot more if you want to keep this job past your probationary period. Do not make me regret my decision to hire you. Despite your failure I have already set time aside so we will continue... though we will proceed in a somewhat less "fun," for you at least, manner than I had originally planned.@@"
<</if>>
<br><br>
"@@.npc_manager;Well, now that all of that is out of the way, let us continue onward.@@"<br>
<br>
The majority of your mental energy is still consumed just standing in her presence so you can do little but wait to see what all she has planned.<br>
<br>
[<<moveTo "event_manager_pegging_2" "Wait for what's next." 120>>]
</div>/*#
#desc: manager stands up
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
The office otherwise silent the sound of wheels on carpet is surprisingly loud as <<=setup.getNpcName('npc_manager', 'formal')>> pushes away from her desk and rises to her feet.<br>
<br>
She walks around the side of the desk, finally giving you a view of her new outfit in all its glory. Your heart skips a beat... make that several beats.<br>
<br>
[<<moveTo "event_manager_pegging_2a" "Gaze upon her magnificence." 300>>]
</div>/*#
#desc: first sight of manager in dom mode w/strapon, orders you to strip
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<useClothSetPush 'pegging'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/pegging_01.mp4">>
<div id="invframe" class="scrolltext">
Just the sight of her upper body in its new attire was enough to stop you in your tracks, but the glory of her full outfit is enough to stop traffic. The form-fitted top continues down to a tightly cinched belt, her figure so perfect you wonder if it might incorporate a hidden corset. Below the belt is where things get REALLY interesting, starting with a pair of ruffled "skirts" more for hip-accentuation than anything else as they barely brush the tops of her thighs while leaving the centre open for the real star of the show.<br>
<br>
Sprouting from a leather harness buckled around her waist is a massive dildo. Looming and intimidating with a realistic head her left hand casually strokes up and down its length, her fingers barely able to wrap its thickness while the movement serves to accentuate its depth-plumbing length.<br>
<br>
As difficult as it is to tear your eyes away from her massive... and yet somehow still utterly feminine... cock, you finish your inspection by gazing upon her long legs. Garters hold up a pair of perfect thigh-high leggings, her feet perched atop steep ankle boots that seem purpose-made for worship.<br>
<br>
She smiles back at your stunned awe, giving a final hip-roll stroke of her monstrous artificial cock in your direction as she stands and faces you.<br>
<br>
<<switch $npc_manager.flags.pegging.base_style>>
<<case "forced">>
"@@.npc_manager;Alright, you rebellious, naughty girl it is almost time to break you in! Oh, I can only imagine how excited you must be to feel me inside you, and I promise to give you EVERY SINGLE CENTIMETER, but first it is time for a little game... A game I like to call "total obedience." Now, from your past behaviour this may be a little tricky but, well... there is no time like the present to practice proper behaviour and rise to meet a challenge, right?@@"<br>
<br>
<<printThought $player "What, is she serious? I should have been more behaved...">><br>
<<case "voluntary">>
"@@.npc_manager;Ah, my adorable lass; I do not know if your transformation was inevitable or if I merely granted you the permission to do things you had always secretly desired... either way your enthusiastic development has been just wonderful, and now... well, I have a special present for you, but before I can give you every centimeter that you deserve we are going to play a fun little game. A game I like to call "total obedience." I am sure you will get the hang of it in no time.@@"<br>
<br>
<<printThought $player "That... going in me? Well, I guess it's only proper that I bend over for her...">><br>
<<case "obedient">>
"@@.npc_manager;My devoted secretary... or should I say, slave? You really are just the picture of obedience, so lovely and loyal... Well, it is time to reward all that good behaviour. We shall start off by playing a game I just know you are going to love. I call it "total obedience" and I just know you will to be an expert at it. After that... well... I did not put this on as a counterweight!, It is going inside your pert little bum, every single centimeter of it!@@"<br>
<br>
<<printThought $player "That looks really big, but if <<=setup.getNpcName('npc_manager', 'title')>> commands it, it must be what I need and deserve...">><br>
<<case "money">>
"@@.npc_manager;Ah, my dirty, dirty girl. You are just so fixated on the money, aren't you? And willing to do just about anything for it... Well, I am here to help you out... break you in, as it were, and open you up to new... opportunities. Towards that end I will soon have you bent over, but first we are going to play a little game. A game I like to call "total obedience." All you have to do is exactly what I say... do well enough and you might even get a tip at the end...@@"<br>
<br>
<<if setup.getTotalValue("whoring") > 10>>
<<printThought $player "Am I really this much of a whore?... Of course I am! Well, time to earn a nice, big... tip.">>
<<elseif setup.getTotalValue("whoring") >= 5>>
<<printThought $player "Am I really becoming that much of a whore? And did she just guess, or does she somehow know what I do outside work hours?">>
<<else>>
<<printThought $player "Am I really that motivated by greed? Well, I guess I don't have any choice right now...">>
<</if>>
<<default>>
ERROR: UNKNOWN pegging style! <<=$npc_manager.flags.pegging.base_style>>
<</switch>>
<br>
"@@.npc_manager;Now, to start things off basic, your first order is to strip.@@"<br>
<br>
[<<moveTo "event_manager_pegging_3_fast" "Shed all your clothes." 180>>]<br>
[<<moveTo "event_manager_pegging_3_fast_lingerie" "Shed all your clothes but leave your lingerie on." 180>>]<br>
<<if setup.getTotalValue("feminization") >= 7 && setup.getTotalValue("submission") >= 7>>
[<<moveTo "event_manager_pegging_3_sensuous" "Strip sensuously for her." 300>>]<br>
[<<moveTo "event_manager_pegging_3_sensuous_lingerie" "Strip sensuously for her while leaving your lingerie on." 300>>]
<<else>>
[@@.link_locked;You consider putting on a bit of a show but you just don't have the combination of confidence and devotion to make the attempt.@@]
<</if>>
</div>/*#
#desc: strip quickly for manager
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<removeAllClothing $player $now true>>
<<set $npc_manager.flags.pegging.strip = "fast">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
With well-practiced efficiency you shed your clothing. In under a minute you are down to naught but your chastity cage<<if setup.getItemFromType('plug')!="">> and the plug in your rear<</if>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> appears to be a touch disappointed at your lack of theatrics, but seems satisfied with your following her instruction.<br>
<br>
"@@.npc_manager;Now that you are nice and... exposed, how about you show me your appreciation for all that I have done, and am about to do, to and for you.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<<else>>
[<<moveTo "event_manager_pegging_4_dontthank" "Keep silent and refuse to speak." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_4_thank" "Thank her for your job." 60>>]<br>
[<<moveTo "event_manager_pegging_4_appreciate" "Dutifully express your appreciation for what she has done for you." 120>>]<br>
[<<moveTo "event_manager_pegging_4_worship" "Drop to the ground and worship her magnificence." 180>>]
</div>/*#
#desc: strip fast down to your lingerie
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<removeEverythingButUnderwear $player $now>>
<<set $npc_manager.flags.pegging.strip = "fast_lingerie">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
With well-practiced efficiency you shed your clothing. In under a minute you are down to naught but your
<<if setup.getItemFromType('plug')!="">>
undergarments, your chastity cage and the plug in your rear.
<<else>>
undergarments and your chastity cage.
<</if>>
<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> appears to be a touch disappointed at your lack of theatrics, but seems satisfied with your following her instruction.<br>
<br>
"@@.npc_manager;Now that you are nice and... exposed, how about you show me your appreciation for all that I have done, and am about to do, to and for you.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<<else>>
[<<moveTo "event_manager_pegging_4_dontthank" "Keep silent and refuse to speak." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_4_thank" "Thank her for your job." 60>>]<br>
[<<moveTo "event_manager_pegging_4_appreciate" "Dutifully express your appreciation for what she has done for you." 120>>]<br>
[<<moveTo "event_manager_pegging_4_worship" "Drop to the ground and worship her magnificence." 180>>]
</div>/*#
#desc: strip sensuously
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.approval += 1>>
<<set $npc_manager.flags.pegging.strip = "sensuous">>
<<set $scene.shoes = setup.getItemObjFromType("shoes")>>
<<set $scene.shoeId = setup.getItemFromType("shoes")>>
<<set $scene.bottom = setup.getItemObjFromType("legwear")>>
<<set $scene.bottomId = setup.getItemFromType("legwear")>>
<<set $scene.topId = setup.getItemFromType("shirt")>>
<<if $scene.topId == "">>
<<set $scene.top = setup.getItemObjFromType("dress")>>
<<set $scene.topId = setup.getItemFromType("dress")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("strapless_dress")>>
<</if>>
<<else>>
<<set $scene.top = setup.getItemObjFromType("shirt")>>
<</if>>
<<set $scene.corset = setup.getItemObjFromType("corset")>>
<<set $scene.corsetId = setup.getItemFromType("corset")>>
<<set $scene.bra = setup.getItemObjFromType("bra")>>
<<set $scene.braId = setup.getItemFromType("bra")>>
<<set $scene.panties = setup.getItemObjFromType("panties")>>
<<set $scene.pantiesId = setup.getItemFromType("panties")>>
<<set $scene.stockings = setup.getItemObjFromType("stockings")>>
<<set $scene.stockingsId = setup.getItemFromType("stockings")>>
<<set $scene.garters = setup.getItemObjFromType("garter")>>
<<set $scene.gartersId = setup.getItemFromType("garter")>>
<<removeAllClothing $player $now true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Moving your body in time with a soundtrack playing in your head you start to remove your clothes.<br>
<br>
/* outer clothes */
<<if $scene.topId == "maid_uniform_black" && $scene.bottomId == "maid_uniform_apron" && ($scene.shoesId == "black_mary_janes" || $scene.shoesId == "black_ballet_boots")>>
Giving a curtsy you turn slowly to show off your cute maid's outfit, flipping up your skirt to show off your <<=$scene.panties.name>> underneath.<br>
<br>
Making a show of it you slip out of your apron, then your top, droping them in a pile with a bashful smile before bending over to
<<if $scene.shoesId == "black_mary_janes">>
unbuckle your cute Mary Janes and slip out of them.<br>
<<elseif $scene.shoesId == "black_ballet_boots">>
unlace your steep ballet boots, showing off by balancing on one foot at a time as you remove each towering boot in turn.<br>
<<else>>
unbuckle your shoes and remove them as well.<br>
<</if>>
<br>
<<elseif $scene.topId == "satin_blouse_pink" && $scene.bottomId == "skirt_pink_leather" && ($scene.shoesId == "pink_mary_janes" || $scene.shoesId == "pink_thigh_highs" || $scene.shoesId == "bed_heels" || $scene.shoesId == "platform_wedge_heels")>>
You give a formal curtsy, walking in a small circle to show off your cute secretarial attire before facing her and slowly unbuttoning your top. Keeping it closed even after you have it fully unbuttoned you tilt your head and bite your lip before finally exposing your <<=$scene.bra.name>> in a quick flash. Closing your blouse once more you blink demurely back at your manager before finally shedding the top.<br>
<br>
Unzipping your skirt partway you turn around and make a show of wiggling your butt as you shimmy out of the tight leather tube, kicking it to one side and then bending over to show off your <<=$scene.panties.name>>-clad rear.<br>
<br>
<<switch $scene.shoesId>>
<<case "pink_thigh_highs">>
Running your hands over your thigh-high boots you wink at her before unzipping each shoe, peeling away the tight pink patent leather to reveal the <<=$scene.stockings.name>> on your legs.<br>
<<case "pink_mary_janes">>
<<case "bed_heels">>
<<case "platform_wedge_heels">>
<<default>>
Unbuckling your cute shoes you step out of your cute <<=$scene.shoes>> and finally turn to face her.<br>
<</switch>>
<<elseif $scene.topId == "shirt_female_office" && $scene.bottomId == "trousers_female_office" && $scene.shoesId == "black_flats">>
Unbuttoning your (almost) unisex top you reveal the far more feminine <<=$scene.bra.name>> beneath, following up by turning around. Sliding your tight pants down past your butt you show off your <<=$scene.panties.name>>-clad rear before kicking off your shoes and removing the pants entirely.<br>
<br>
<<else>>
Wiggling your body you start by slowly removing your <<=$scene.top.name>>. Groping yourself a little you show off your <<=$scene.bra.name>> before tracing your hands down to your hips.<br>
<br>
You kick out of your <<=$scene.shoes.name>> as you turn around and bend over to best display your rear. <<if $scene.bottom != null>>Shedding your <<=$scene.bottom.name>> you<<else>>You<</if>> wiggle your butt to show off your <<=$scene.panties.name>> before turning back to face her sporting a smile.<br>
<</if>>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile tells you that she has enjoyed this method of de-clothing far more than your normal "down to the underwear" morning stripping.<br>
<br>
<<if $scene.corsetId != "">>
Turning in a circle you loosen the laces on your corset just enough to pop the front busk, feeling your body expand no longer tightly compressed by the stringent garment. You playfully use the corset to "flash" <<=setup.getNpcName('npc_manager', 'formal')>> before tossing it with the rest of your shed clothing.<br>
<br>
<</if>>
/* undergarments */
<<if $scene.braId == "pink_sissy_bra" && $scene.pantiesId == "pink_sissy_panties" && $scene.stockingsId == "pink_sissy_stockings" && ($scene.gartersId == "sissy_garter" || $scene.gartersId == "")>>
You run your hands over your sissy pink frills, bouncing a little to set the bells incorporated into your undergarments to chime in merry accompaniment to your show before slowly peeling off the layers of pink.<br>
<br>
First comes the bra as you pull it down to expose your <<getWordBreasts $player>> before reaching behind your back to unhook the strap and shrug it off your shoulders.<br>
<br>
Reaching down you unclip your garters one at a time, making a show of rolling each pink stocking down your pale, smooth legs before removing the garter belt entirely.<br>
<br>
Turning your back you bend over and unzip the rear opening to show off your bum<<if setup.getItemFromType('plug') !="">> and the <<=setup.getItemName(setup.getItemFromType('plug'))>> inside<</if>>.<br>
<br>
Finally shedding your sissy panties you turn to present yourself, naked save for your securely caged, but obviously excited, <<getWordMyPenis $player>>.<br>
<<elseif $scene.bra.tags.includes("bold") && $scene.panties.tags.includes("bold") && $scene.stockings.tags.includes("bold") && ($scene.garters == null || $scene.garters.tags.includes("bold"))>>
Standing there in your bold underwear you recall her overall lack of approval of such... aggressive attire. Still, there is nothing for it now save to get naked as she commanded and you set to work doing just that.<br>
<br>
Starting with your bra you slide the straps off your shoulder until it is barely staying up before reaching behind to unclip it and let things fall away to reveal your <<getWordBreasts $player>>.<br>
<br>
Letting the <<=$scene.bra.name>> drop to the floor you
<<if $scene.gartersId != "">>
begin unclipping your garters, slowly freeing your <<=$scene.stockings.name>> one leg at a time, slipping out of them and them removing the garter as well.<br>
<<else>>
peel off your stockings, running your fingers back up your now-bare legs.<br>
<</if>>
<br>
Clad it naught but your panties you pull down the front to allow your chastity cage to pop free. Her obvious disdain for your choice of undergarments shifts at the reveal of your <<getWordMyPenis $player>> and she continues to smile as you peel the <<=$scene.panties.name>> the rest of the way down your legs and kick them to the side.<br>
<<elseif $scene.bra.tags.includes("cute") && $scene.panties.tags.includes("cute") &&
$scene.stockings.tags.includes("cute") && ($scene.garters == null || $scene.garters.tags.includes("cute"))>>
Fluttering your eyelashes you pose to show off your cute ensemble before your bra "accidentally" bursts open to reveal your bare <<getWordBreasts $player>>. Putting a hand over your mouth in mock surprise
<<if $scene.gartersId != "">>
you continue the "accidental" disrobing as you unclip your garter straps one at a time, until your <<=$scene.stockings.name>> slips off followed by the <<=$scene.garters.name>> themselves.<br>
<<else>>
you turn and bend over, peeking back upside-down from between your legs as you roll the <<=$scene.stockings.name>> down your legs.<br>
<</if>>
<br>
Down to just your cute panties you grope yourself through them, making a show of the unfeminine bulge of your cage before revealing your imprisoned <<getWordMyPenis $player>> with another look of surprise. Letting your panties fall to the ground you toss them in the pile with the rest of your clothes before crossing your hands behind your back, tilting your head to the side and looking across at <<=setup.getNpcName('npc_manager', 'formal')>> with "innocent" bambi eyes.<br>
<<elseif $scene.bra.tags.includes("modest") && $scene.panties.tags.includes("modest") &&
$scene.stockings.tags.includes("modest") && ($scene.gartersId == "" || $scene.garters.tags.includes("modest"))>>
Your modest, reserved undergarments somehow give a "girl next door" look to your little striptease. Each functional, but unflattering, item you remove causes <<=setup.getNpcName('npc_manager', 'formal')>> to unconsciously stroke her fake cock faster.<br>
<br>
Shedding the <<=$scene.bra.name>> first to reveal your <<getWordBreasts $player>> you follow up by
<<if $scene.gartersId != "">>
unclipping your <<=$scene.garters.name>> and shedding them and your <<=$scene.stockings.name>>.
<<else>>
sliding out of your stockings.
<</if>>
It isn't long before the only thing granting you the slightest shred of modesty is your <<=$scene.stockings.name>>.<br>
<br>
Flashing a bashful smile you bite your lip and rip off your <<=$scene.panties.name>>, exposing your <<getWordMyPenis $player>> to your manager before giving a slow turn to show off your <<if setup.getItemFromType('plug')!="">>naughtily plugged<<else>>cute<</if>> butt as well.<br>
<<else>>
No more impressed by your mismatched undergarments now than she was during your morning inspection you hurry to remove them, first peeling off the <<=$scene.bra.name>> to expose your <<getWordBreasts $player>>.<br>
<br>
She seems much more pleased at your bare torso than looking at your clashing bra so you continue on to your legs,
<<if $scene.gartersId != "">>
unclipping your <<=$scene.garters.name>> and shedding them and your <<=$scene.stockings.name>>
<<else>>
sliding out of your stockings,
<</if>>
and prancing around for a moment in naught but your <<=$scene.panties.name>>. Those remain on your body for but a few seconds longer before they are cast aside to leave you standing naked and facing her with your <<getWordMyPenis $player>> proudly on display.<br>
<</if>>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and claps in approval at your short routine.<br>
<br>
"@@.npc_manager;Oh that was just wonderful! I confess that seeing you strip every morning had gotten a bit... mundane but that! Mmmm, I am torn between suggesting you use your talents professionally and wanting to keep you all to myself! Anyway, on the topic of things you do for me... what about all that I have done for you? Let me hear your appreciation while I mentally run back that adorable strip-tease.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<<else>>
[<<moveTo "event_manager_pegging_4_dontthank" "Keep silent and refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_4_thank" "Thank her for the job." 60>>]<br>
[<<moveTo "event_manager_pegging_4_appreciate" "Dutifully express your appreciation for what she has done for you." 120>>]<br>
<<if setup.getTotalValue("humiliation") < 5>>
[@@.link_locked;You are unwilling to fully debase yourself before her.@@]
<<else>>
[<<moveTo "event_manager_pegging_4_worship" "Worship her magnificence." 180>>]
<</if>>
</div>/*#
#desc: sensuously strip down to your lingerie
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.approval += 1>>
<<set $npc_manager.flags.pegging.strip = "sensuous_lingerie">>
<<set $scene.shoes = setup.getItemObjFromType("shoes")>>
<<set $scene.shoeId = setup.getItemFromType("shoes")>>
<<set $scene.bottom = setup.getItemObjFromType("legwear")>>
<<set $scene.bottomId = setup.getItemFromType("legwear")>>
<<set $scene.topId = setup.getItemFromType("shirt")>>
<<if $scene.topId == "">>
<<set $scene.top = setup.getItemObjFromType("dress")>>
<<set $scene.topId = setup.getItemFromType("dress")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("strapless_dress")>>
<</if>>
<<else>>
<<set $scene.top = setup.getItemObjFromType("shirt")>>
<</if>>
<<set $scene.corset = setup.getItemObjFromType("corset")>>
<<set $scene.corsetId = setup.getItemFromType("corset")>>
<<set $scene.bra = setup.getItemObjFromType("bra")>>
<<set $scene.braId = setup.getItemFromType("bra")>>
<<set $scene.panties = setup.getItemObjFromType("panties")>>
<<set $scene.pantiesId = setup.getItemFromType("panties")>>
<<set $scene.stockings = setup.getItemObjFromType("stockings")>>
<<set $scene.stockingsId = setup.getItemFromType("stockings")>>
<<set $scene.garters = setup.getItemObjFromType("garter")>>
<<set $scene.gartersId = setup.getItemFromType("garter")>>
<<removeEverythingButUnderwear $player $now>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Moving your body in time with a soundtrack playing in your head you start to remove your clothes.<br>
<br>
/* outer clothes */
<<if $scene.topId == "maid_uniform_black" && $scene.bottomId == "maid_uniform_apron" && ($scene.shoesId == "black_mary_janes" || $scene.shoesId == "black_ballet_boots")>>
Giving a curtsy you turn slowly to show off your cute maid's outfit, flipping up your skirt to show off your <<=$scene.panties.name>> underneath.<br>
<br>
Making a show of it you slip out of your apron, then your top, dropping them in a pile with a bashful smile before bending over to
<<if $scene.shoesId == "black_mary_janes">>
unbuckle your cute Mary Janes and slip out of them.<br>
<<elseif $scene.shoesId == "black_ballet_boots">>
unlace your steep ballet boots, showing off by balancing on one foot at a time as you remove each towering boot in turn.<br>
<<else>>
unbuckle your shoes and remove them as well.<br>
<</if>>
<br>
<<elseif $scene.topId == "satin_blouse_pink" && $scene.bottomId == "skirt_pink_leather" && ($scene.shoesId == "pink_mary_janes" || $scene.shoesId == "pink_thigh_highs" || $scene.shoesId == "bed_heels" || $scene.shoesId == "platform_wedge_heels")>>
You give a formal curtsy, walking in a small circle to show off your cute secretarial attire before facing her and slowly unbuttoning your top. Keeping it closed even after you have it fully unbuttoned you tilt your head and bite your lip before finally exposing your <<=$scene.bra.name>> in a quick flash. Closing your blouse once more you blink demurely back at your manager before finally shedding the top.<br>
<br>
Unzipping your skirt partway you turn around and make a show of wiggling your butt as you shimmy out of the tight leather tube, kicking it to one side and then bending over to show off your <<=$scene.panties.name>>-clad rear.<br>
<br>
<<switch $scene.shoesId>>
<<case "pink_thigh_highs">>
Running your hands over your thigh-high boots you wink at her before unzipping each shoe, peeling away the tight pink patent leather to reveal the <<=$scene.stockings.name>> on your legs.<br>
<<case "pink_mary_janes">>
<<case "bed_heels">>
<<case "platform_wedge_heels">>
<<default>>
Unbuckling your cute shoes you step out of your cute <<=$scene.shoes>> and finally turn to face her.<br>
<</switch>>
<<elseif $scene.topId == "shirt_female_office" && $scene.bottomId == "trousers_female_office" && $scene.shoesId == "black_flats">>
Unbuttoning your (almost) unisex top you reveal the far more feminine <<=$scene.bra.name>> beneath, following up by turning around. Sliding your tight pants down past your butt you show off your <<=$scene.panties.name>>-clad rear before kicking off your shoes and removing the pants entirely.<br>
<br>
<<else>>
Wiggling your body you start by slowly removing your <<=$scene.top.name>>. Groping yourself a little you show off your <<=$scene.bra.name>> before tracing your hands down to your hips.<br>
<br>
You kick out of your <<=$scene.shoes.name>> as you turn around and bend over to best display your rear. <<if $scene.bottom != null>>Shedding your <<=$scene.bottom.name>> you<<else>>You<</if>> wiggle your butt to show off your <<=$scene.panties.name>> before turning back to face her sporting a playful smile.<br>
<</if>>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile tells you that she has enjoyed this method of de-clothing far more than your normal "down to the underwear" morning stripping.<br>
<br>
<<if $scene.corsetId != "">>
Turning in a circle you loosen the laces on your corset just enough to pop the front busk, feeling your body expand no longer tightly compressed by the stringent garment. You playfully use the corset to "flash" <<=setup.getNpcName('npc_manager', 'formal')>> before tossing it with the rest of your shed clothing.<br>
<br>
<</if>>
/* undergarments */
<<if $scene.braId == "pink_sissy_bra" && $scene.pantiesId == "pink_sissy_panties" && $scene.stockingsId == "pink_sissy_stockings" && ($scene.gartersId == "sissy_garter" || $scene.gartersId == "")>>
You run your hands over your sissy pink frills, bouncing a little to set the bells incorporated into your undergarments to chime in merry accompaniment to your show, accentuating your frilly layers of pink.<br>
<<elseif $scene.bra.tags.includes("bold") && $scene.panties.tags.includes("bold") && $scene.stockings.tags.includes("bold") && ($scene.garters == null || $scene.garters.tags.includes("bold"))>>
Standing there in your sexy underwear you recall her overall lack of approval of such... aggressive attire. Still, there is nothing for it now save to get naked as she commanded and you set to work doing just that.<br>
<<elseif $scene.bra.tags.includes("cute") && $scene.panties.tags.includes("cute") &&
$scene.stockings.tags.includes("cute") && ($scene.garters == null || $scene.garters.tags.includes("cute"))>>
Fluttering your eyelashes you pose to show off your cute ensemble.
<<elseif $scene.bra.tags.includes("modest") && $scene.panties.tags.includes("modest") &&
$scene.stockings.tags.includes("modest") && ($scene.gartersId == "" || $scene.garters.tags.includes("modest"))>>
Your modest, reserved undergarments somehow give a "girl next door" look to your little striptease. Each functional, but unflattering. Maybe you should have removed them during the striptease.
<<else>>
You shed your outer garments to reveal your underthings. You can tell their lack of cohesion bothers her somewhat but she appears impressed enough by your "show" as to be overall pleased.
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and claps in approval at your short routine.<br>
<br>
"@@.npc_manager;Oh that was just wonderful! I confess that seeing you strip every morning had gotten a bit... mundane but that! Mmmm, I am torn between suggesting you use your talents professionally and wanting to keep you all to myself! Anyway, on the topic of things you do for me... what about all that I have done for you? Let me hear your appreciation while I mentally run back that adorable strip-tease.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<<else>>
[<<moveTo "event_manager_pegging_4_dontthank" "Keep silent and refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_4_thank" "Thank her for the job." 60>>]<br>
[<<moveTo "event_manager_pegging_4_appreciate" "Dutifully express your appreciation for what she has done for you." 120>>]<br>
<<if setup.getTotalValue("humiliation") < 5>>
[@@.link_locked;You are unwilling to fully debase yourself before her.@@]
<<else>>
[<<moveTo "event_manager_pegging_4_worship" "Worship her magnificence." 180>>]
<</if>>
</div>/*#
#desc: don't thank manager for what she's done to you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.approval -= 1>>
<<set $npc_manager.flags.pegging.thank = "refuse">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You stand silent, refusing to "thank" her for the things that she has inflicted upon you.<br>
<br>
The staring contest between the two of you drags out for almost a minute before she shakes her head in dismay.<br>
<br>
"@@.npc_manager;So disobedient, fortunately I am a... patient teacher, but there will be consequences. Oh there will be consequences indeed...@@"<br>
<br>
<<printThought $player "What do I expect to gain from goading her like this?">><br>
<br>
"@@.npc_manager;Since you wish to be so quiet, how about we test some of your... other oral skills? Kneel down and show me that you mouth is good for SOMETHING.@@"<br>
<br>
She removes her hand from her artificial "enhancement" pushing her hips forward in invitation.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<<elseif setup.getTotalValue("penis") > 10>>
[@@.link_locked;You cannot pass up the opportunity to worship cock.@@]<br>
<<else>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Refuse." 60 >>]<br>
<</if>>
[<<moveTo "event_manager_pegging_5_kiss" "Just kiss her member." 60>>]<br>
[<<moveTo "event_manager_pegging_5_lick" "Lick her artificial cock." 120>>]<br>
<<if setup.getTotalValue("penis") < 5>>
[@@.link_locked;You do not like cock, even an artificial one, enough to suck her off.@@]
<<else>>
[<<moveTo "event_manager_pegging_5_suck" "Suck on her glorious strapon." 180>>]
<</if>>
</div>/*#
#desc: thank manager for what she's done to you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.approval -= 1>>
<<set $npc_manager.flags.pegging.thank = "thank">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for giving you the opportunity to work as her secretary. Noticing her gaze starting to narrow you quickly add additional thanks for her many gifts and "helpful" trainings, concluding with a bow.<br>
<br>
She does not appear particularly impressed with your rushed display but, after cowing you with a withering gaze, she moves on.<br>
<br>
"@@.npc_manager;I had thought you would be more appreciative of what I have done for you... or perhaps it is my fault for not properly teaching you how to best demonstrate thanks? No matter, in any case I think you need to make it up to me with a different sort of oral skill. Get over here and drop to your knees and see if you can better impress me with something other than mere words.@@"<br>
<br>
She removes her hand from her artificial "enhancement" pushing her hips forward in invitation.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<<elseif setup.getTotalValue("penis") > 10>>
[@@.link_locked;You cannot pass up the opportunity to worship cock.@@]<br>
<<else>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_5_kiss" "Just kiss her member." 60>>]<br>
[<<moveTo "event_manager_pegging_5_lick" "Lick her artificial cock." 120>>]<br>
<<if setup.getTotalValue("penis") < 5>>
[@@.link_locked;You do not like cock, even an artificial one, enough to suck her off.@@]
<<else>>
[<<moveTo "event_manager_pegging_5_suck" "Suck on her glorious strapon." 180>>]
<</if>>
</div>/*#
#desc: profess your appreciation for what manager has done to you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.thank = "appreciate">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You give a slight curtsy of thanks and launch into a listed appreciation for all that <<=setup.getNpcName('npc_manager', 'formal')>> has done for, and to, you.<br>
<br>
She nods in approval as you rattle off the history of your time working as a secretary, seeming particularly pleased when you express appreciation for her ordered "improvements" to your dress code and for locking you safely away within your chastity cage. The last causes her to slightly increase the pace with which she idly strokes her artificial cock. By the time you finish off with a deep curtsy of thanks she is looking quite pleased with you indeed.<br>
<br>
"@@.npc_manager;Very nicely said, now to see how your other oral skills are developing. Crawl on over here and show me what else those sexy lips are capable of.@@"<br>
<br>
She removes her hand from her artificial "enhancement" pushing her hips forward in invitation.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<<elseif setup.getTotalValue("penis") > 10>>
[@@.link_locked;You cannot pass up the opportunity to worship cock.@@]<br>
<<else>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_5_kiss" "Just kiss her member." 60>>]<br>
[<<moveTo "event_manager_pegging_5_lick" "Lick her artificial cock." 120>>]<br>
<<if setup.getTotalValue("penis") < 5>>
[@@.link_locked;You do not like cock, even an artificial one, enough to suck her off.@@]
<<else>>
[<<moveTo "event_manager_pegging_5_suck" "Suck on her glorious strapon." 180>>]
<</if>>
</div>/*#
#desc: worship manager in gratitude for what she has done for you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.approval += 1>>
<<set $npc_manager.flags.pegging.thank = "worship">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You give a curtsy and then continue downward, dropping to the floor and crawling towards <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
Kneeling before her you look up and flutter your eyes. "Words are insufficient to express my gratitude for all the wonderful things you have done for, and to, your devoted servant. May I show my thanks in another way?" <br>
<br>
She smiles, sitting back against the edge of the desk and extending a foot as she looks down at you past her large member, still stroking it as she watches. "You may." <br>
<br>
"Thank you, <<=setup.getNpcName('npc_manager', 'title')>>" You whisper before setting to work worshipping her foot.<br>
<br>
Her boots are too nicely laced and buckled to mess with so you stick to merely massaging her right foot through the footwear, kissing every centimeter from her toes up to her ankle and back down her heel, interspersing your efforts with your effusive praise.<br>
<br>
You thank her for hiring you. For keeping a firm, disciplinary hand on you. For your wonderful new dress code, especially the cage that has you safely locked away. This last part seems to meet with her particular approval as she pauses things to have you spend several moments sucking on her heel in time to her own strokes before allowing you to resume things with her other foot.<br>
<br>
Repeating on her left foot you thank her for showing you the pleasures of your rear hole, reminiscing how good the dildo she had you use felt, but how much better her glorious cock will surely be. You thank her for taking ownership of your confused life, begging her to mold you into the perfect SISSY secretary that you were meant, and now dream, to be.<br>
<br>
The look in her eyes as you meet her gaze sucking her left heel is so intense you have to look away, your sissy clitty straining against its cage, only to feel even more happy at the snug reminder that it is so securely locked. Gently pulling back as she lowers her foot back to the ground you start working your way up her legs, massaging her calves, then her thighs before she calls for a pause with her thick, glorious cock centimeters from your face.<br>
<br>
"@@.npc_manager;Now THAT is how a slave shows her thanks. So beautiful, but now... now to see if your thankful tongue is good at other things oral. Open wide, my sissy, and show your Mistress' cock how much you love it.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<<elseif setup.getTotalValue("penis") > 10>>
[@@.link_locked;You cannot pass up the opportunity to worship cock.@@]<br>
<<else>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_5_kiss" "Just kiss her member." 60>>]<br>
[<<moveTo "event_manager_pegging_5_lick" "Lick her artificial cock." 120>>]<br>
<<if setup.getTotalValue("penis") < 5>>
[@@.link_locked;You do not like cock, even an artificial one, enough to suck her off.@@]
<<else>>
[<<moveTo "event_manager_pegging_5_suck" "Suck on her glorious strapon." 180>>]
<</if>>
</div>/*#
#desc: refuse to suck manager's strapon
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.suck = "refuse">>
<<set $npc_manager.flags.pegging.approval -= 2>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You recoil from her offered member, shaking your head in defiance. Her mood turns in an instant, her hand reaching out and suddenly entwined through your hair. Establishing total control over your head she drags you to your knees and forces your face against her crotch.<br>
<br>
"@@.npc_manager;This is an opportunity, not a request, sissy. Now open that slut-mouth wide or I will shove all of myself down your throat and then fuck your ass with nothing but your saliva for lube.@@"<br>
<br>
Eyes wide with fear you part your lips as instructed.
<<if setup.getTotalValue("oral") >= 15>>
Despite your reluctance your skills are more than up to the "task" in front of you. You swallow her to the hilt on the first lunge.<br>
<<elseif setup.getTotalValue("oral") >= 10>>
In spite of your reluctance your mouth spreads reflexively wide to accept her, fitting about three quarters of her full, thick length into your mouth and throat.<br>
<<elseif setup.getTotalValue("oral") >= 5>>
Though you are not a neophyte to such things her cock is larger than any you have before attempted and you only manage to get about half of it into your mouth, gasping and straining against your gag reflex.<br>
<<else>>
Just getting the realistic mushroom head into your mouth forces your jaw wide, and you are barely able to get more than a couple of inches in before your gag reflex kicks in and you cough helplessly.<br>
<</if>>
<br>
"@@.npc_manager;That is a start.@@", she snarls before switching to a two-hand grip and using your skull like an onahole. You are a helpless thing as she has her way with your throat, swiftly reminding you of your position in this scene before tossing you to the ground.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
<<if setup.getTotalValue("bdsm") >= 10>>
There is no hiding your lusty excitement as you look back up at your Mistress.
<<if setup.getTotalValue("penis") > setup.getTotalValue("bdsm")>>
The only thing you love move than being dominated is cock,
<<elseif setup.getTotalValue("penis") < setup.getTotalValue("bdsm")>>
The only thing you love move than cock is being dominated,
<<else>>
Two of your greatest loves are cock, and being dominated,
<</if>>
and she has just given you both in spades.<br>
<<else>>
There is no hiding how much such a glorious cock, even a technically artificial one, has excited you. Even as you look up fearfully you can't help but lick your lips in memory of how good it felt between them.
<</if>>
<<elseif setup.getTotalValue("penis") >= 10>>
<<if setup.getTotalValue("bdsm") >= 10>>
The combination of rough treatment and her massive phallus hits your buttons... hard. There is no denying the look of submissive lust on your face as you stare up at her magnificence from your position on the floor.
<<else>>
Your mouth is watering in unmitigated desire for her cock even as you cower fearfully on the floor.
<</if>>
<<elseif setup.getTotalValue("penis") >= 5>>
<<if setup.getTotalValue("bdsm") >= 10>>
Her intimidating member may be a bit much for your nascent cocklust but the way she just dominated you? Yes, Mistress, there is no disguising your submissive lust as you stare back up at her.
<<else>>
The intense feeling of her massive member in your mouth has stoked your recently discovered cocklust. You can try to deny it but the truth is etched on your face as you stare back up at her.
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") >= 10>>
You don't care for cock, but being treated like this? You shiver at the memory of the controlling feeling of her fingers buried in your hair and look up at her, eager, correction, desperate, for more.
<<else>>
The combination of huge cock and harsh treatment has you more than a little scared, but you don't think there's any chance of getting off this ride at this point...
<</if>>
<</if>>
<br><br>
"@@.npc_manager;As enjoyable as it is to watch your your sexy lips spread around my cock I shall not be distracted from my plans.@@"<br>
<br>
[<<moveTo "event_manager_pegging_6" "Wait for what's next." 120>>]
</div>/*#
#desc: kiss manager's strapon
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.suck = "kiss">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Obeying her instructions you are on your knees at her feet. Looking up at her smiling face you pucker your lips and place a smooch on the tip of her artificial cock. She smiles wider and you repeat the effort, slowly working your way down the shaft with soft, moist kisses.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
Despite its size her member feels quite realistic against your lips, firm, but with just a bit of flesh-like give, easily igniting your cock-lust even if the flavour isn't right. You have to hold yourself back from spreading your lips and gobbling it up to feel the nice throat-stretch you love. For now, you are determined to present a more... demure appearance.<br>
<<elseif setup.getTotalValue("penis") >= 10>>
Despite its size her member feels quite realistic against your lips, firm, but with just a bit of flesh-like give, easily igniting your cock-lust even if the flavour isn't right.<br>
<<elseif setup.getTotalValue("penis") >= 5>>
Far bigger than any cock you've met in person it feels remarkably lifelike against your lips. You can't help but be a bit intrigued, tho you are mostly just intimidated by the implement.<br>
<<else>>
You hope your kissing efforts are appreciated, you can't help but be scared of the massive member, and what it could do to you.<br>
<</if>>
<br>
Fortunately it seems that you loving efforts at least do not displease <<=setup.getNpcName('npc_manager', 'formal')>>. She strokes your hair as you coat her shaft with kisses. Finally, and gently, she tilts your head back to look down at your blushing face.<br>
<br>
"@@.npc_manager;I had planned to see your lips parted and your throat spread around me... but you just look too adorably innocent kissing that big, hard cock. Still, I think it is time to move forward with our little fun.@@"<br>
<br>
[<<moveTo "event_manager_pegging_6" "Wait for what's next." 120>>]
</div>/*#
#desc: lick manager's strapon
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.suck = "lick">>
<<set $npc_manager.flags.pegging.approval += 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Obeying her instructions you are on your knees at her feet. Looking up at her smiling face you take her shaft in both hands and, looking up at her the whole time, start to lick its length. She smiles down in mild approval. Emboldened you intersperse long laps of the long, lewd lolly with suckling the tip.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
Though the taste is not that delicious masculine flavour you love you are suprised at how close the texture mimics the real thing. Whatever the case it is close enough to that genitalia you so adore that you feel quite happy, smiling contentedly as you continue to lick and suck.<br>
<<elseif setup.getTotalValue("penis") >= 10>>
It may not, technically, be real but the mouthfeel is close enough on your tongue to trigger your cocklust and you smile up at her as you suck softly on her tip.<br>
<<elseif setup.getTotalValue("penis") >= 5>>
Bigger in every way than anything you have seen, much less personally addressed orally you focus on just putting on a decent show, licking and sucking softly and trying not to pay attention to how much your mouth is watering.<br>
<<else>>
Sucking on the tip really drives home how large the artificial cock is. It's more scary than anything else and you do your best to put on a show lest you be forced into something more... strenuous.<br>
<</if>>
<br>
Your efforts seem to have pleased <<=setup.getNpcName('npc_manager', 'formal')>>. She strokes your hair and barely thrusts past your lips before gently tilting your head back to look down at you.<br>
<br>
"@@.npc_manager;Mmmm, you lips look so good wrapped around my cock. It is so tempting to just shove it deeper and see how inviting you throat is... but you have done such a good job licking and sucking I will be gentle... for now.@@"<br>
<br>
[<<moveTo "event_manager_pegging_6" "Wait for what's next." 120>>]
</div>/*#
#desc: suck manager's strapon
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.suck = "suck">>
<<set $npc_manager.flags.pegging.approval += 2>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
On your knees at her feet as commanded, you look up and wrap one hand, then the other, around the base of her thick shaft. Going hand over hand as your fingers barely encircle its girth to drive home the boy-breaking size of her member, but you have no time for hesitation. Looking up at her deific face and fluttering your eyelashes you part your lips wide and lean forward.<br>
<br>
<<if setup.getTotalValue("oral") >= 15>>
Her cock is a challenge that tests every ounce of your skill but your fuck-me lips and well-trained throat spread wide, centimeter after centimeter of her magnificence sliding into you until, with eyes wide and throat bulging your lips kiss the smooth leather of her harness. Letting out a muffled moan you give a final thrust forward, pressing your face as hard as you can against her to ensure you take every millimetre.<br>
<<elseif setup.getTotalValue("oral") >= 10>>
You do your best but even your well-trained throat is not quite up to taking the full breadth of her magnificence. Your throat swells as the majority of her cock disappears past your lips but you are forced to stop with your nose just shy of brushing her harness-belted crotch.<br>
<<elseif setup.getTotalValue("oral") >= 5>>
Just the tip of her cock touching the back of your mouth is enough to trigger your reduced, but still existent, gag reflex. There is just no way your throat is ready to bulge around its thick girth and you are left merely bobbing your head up and down on the end of her cock.<br>
<<else>>
Your enthusiasm is far beyond your abilities and you barely get much more than the head into your mouth before your nostrils flare and you start to gag.<br>
<</if>>
<br>
Smiling down at your efforts <<=setup.getNpcName('npc_manager', 'formal')>> takes your head in her hands and starts gently fucking your face.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
You are in heaven, even if the taste is not that musky masculinity you love the feel of her long, thick cock thrusting <<if setup.getTotalValue("oral") >= 10>>down your throat<<else>>into your face<</if>> is glorious. This is what you were put on this earth to do, and the glazed look in your eyes as you stare back up at her makes that fact very clear.<br>
<<elseif setup.getTotalValue("penis") >= 10>>
Even if your cocklust isn't quite as big as the artificial member thrusting past your lips there is no denying that you love it. Each thrust causes a muffled gasp to escape your throat as your body adjusts to this new, magnificent milestone of mouth-filling monstrosity.<br>
<<elseif setup.getTotalValue("penis") >= 5>>
You may have recently discovered an... appreciation for cock but this, this is something else. You are more intimidated than anything at its massive artificial size but you aren't just drooling on reflex as is glides in and out through your parted lips.<br>
<<else>>
The... thing... now filling your mouth isn't a cock. It is something more, something bigger, scarier. A part of you wants to flee from it, but the other part of you, the part that is in control, remains still, your mouth opened wide as the monstrosity gently has its way with you.<br>
<</if>>
<br>
"@@.npc_manager;Truely, you are quite the <<if setup.getTotalValue("oral") >= 15>>masterful<<elseif setup.getTotalValue("oral") >= 10>>expert<<elseif setup.getTotalValue("oral") >= 5>>developing<<else>>enthusiastic<</if>> mouth fuck-hole but I have my sights set on a... different orifice. I would love to use your delightful throat some more but I have some other things in mind for you before we can move forward with the main attraction.@@"<br>
<br>
[<<moveTo "event_manager_pegging_6" "Wait for what's next." 120>>]
</div>/*#
#desc: manager offers you a choice of collars
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Twisting away from you she grabs something from out of sight behind her on the desk. Turning back she brandishes a pair of collars, one in each hand.<br>
<br>
In her right hand she holds an effeminate pink choker. Trimmed with soft frills the word SISSY is spelled across the front in glittering pink diamonds.<br>
<br>
In her left hand is something far more imposing, a leather bondage collar with an ominous ring dangling from the front and a locking hasp at the back.<br>
<br>
<<if $npc_manager.flags.pegging.approval <= 0>>
<<set $npc_manager.flags.pegging.collar = "none">>
Your gaze darts between the two, equally extreme, neck adornments before finally looking up to see her angry expression.<br>
<br>
"@@.npc_manager;I had planned to give you a choice - between cute sissy frills and beautiful submission but you have been far too misbehaved to possibly deserve the privilege of a collar.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 14>>
Being denied a collar stings you to your core, but, in spite of your recent misbehaviour, you are far too good of a slave to even consider objecting to your <<=ps(setup.getNpcName('npc_manager', 'title'))>> judgement. Properly chagrined you bow your head and await her next instruction.<br>
<<elseif setup.getTotalValue("submission") >= 8>>
Being denied a collar makes you question your submission. Sure, you have misbehaved... quite a bit, of late but still... You start to object only for her to silence you with a glance, her aura of dominance more than sufficient to cow you.<br>
<<else>>
You feel like you have made a serious mistake to come to this point, but a single look up into her eyes tells you that attempting to change her mind - if you even wanted to - would only anger her further. Deciding to quit before you get in more trouble you remain silent.<br>
<</if>>
<br>
She walks slowly around the desk to drop both collars into a drawer before turning back to address you. "@@.npc_manager;Alright, up on the desk.@@"<br>
<br>
Her voice harsh you had better jump to obey lest your further draw her ire.<br>
<br>
[<<moveTo "event_manager_pegging_7_refuse" "Be a brat and say you don't want her collar anyway!">>]<br>
[<<moveTo "event_manager_pegging_7_none" "Sit on the desk and wait.">>]
<<else>>
"@@.npc_manager;So, my dear, here is your penultimate decision before you get to lay back and enjoy me filling you with my... appreciation. How would you like to decorate that lovely, bare throat of yours?@@"<br>
<br>
[<<moveTo "event_manager_pegging_7_slave" "Ask for the leather slave collar." 120>>]<br>
[<<moveTo "event_manager_pegging_7_sissy" "Ask to wear the pink sissy choker." 120>>]<br>
<<if setup.getTotalValue("submission") >= 12 >>
[<<moveTo "event_manager_pegging_7_hers" "Tell her that the decision should be hers." 120>>]<br>
[@@.link_locked;You couldn't possibly refuse the offer of her collar.@@]
<<elseif setup.getTotalValue("submission") >= 7 >>
[<<moveTo "event_manager_pegging_7_hers" "Tell her that the decision should be hers." 120>>]<br>
[<<moveTo "event_manager_pegging_7_refuse" "You aren't some sort of slave! Refuse to be collared." 120>>]<br>
<<else>>
[@@.link_locked;You have not embraced submission enough to surrender the decision to her judgement.@@]<br>
[<<moveTo "event_manager_pegging_7_refuse" "You aren't some sort of slave! Refuse to be collared." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: manager binds you without collaring you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.collar = "none">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You sit on the edge of the desk as she walks around so that your back is to the desk with her standing in front of you. Her large cock hovers ominously close to your body but does not touch you... yet.<br>
<br>
Extending a hand she pushes on your shoulder, guiding you onto your back. You look up at her magnificence, from her corseted body to her large, perky and pierced breasts to her slight smile and her fiery red hair. She is a Goddess, and you are fortunate to merely exist in her presence.<br>
<br>
Reaching to one side she produces a coil of rope. With quick efficiency she binds your wrist to your calf just below the knee before doing the same on the other side with a matching piece of rope.<br>
<br>
In a mere couple of minutes you are bound. Your arms useless, your legs spread open, you are now completely exposed before her. Looking up you make a startling new discovery - there is a mirror mounted to the ceiling above her desk looking up has you staring at your own reflection, driving home even harder how helpless and exposed you currently are.<br>
<br>
[<<moveTo "event_manager_pegging_8" "Look up at her and wait for what's next" 180>>]
</div>/*#
#desc: refuse manager's collar, she binds you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.collar = "refuse">>
<<set $npc_manager.flags.pegging.approval -= 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.pegging.approval >= 0>>
You look between the two choices before you - the sissy pink choker and its figurative twin and opposite in the black leather collar and then look up at <<=setup.getNpcName('npc_manager', 'formal')>> in defiance and shake your head.<br>
<br>
Her eyebrow shoots up in surprise.<br>
<br>
"@@.npc_manager;Refusing my offer? Are you sure you want to do that?@@"<br>
<br>
Somehow emboldened you nod firmly, bracing for reprimand... only it does not come as she instead... sighs in disappointment?<br>
<br>
"@@.npc_manager;A pity, but no matter. You do not need a collar for me to fuck your ass... and we have reached that time. Come on, up on the desk and lie back.@@"<br>
<br>
Somewhat stunned at how casually she took your rejection you are already laying back on the desk before you realise what has happened. The collars having disappeared she brandishes a length of rope now, tying your wrist to your calf just below your knee, first one one side, then the other. Though minimal the restraints nonetheless leave you quite exposed and helpless.
<<else>>
As she turns back to the desk you shout out that you don't want a collar, you aren't a slave!<br>
<br>
She does not even acknowledge you, putting the collars back in her desk before turning back towards you, and old god's wrath in her eyes.<br>
<br>
"@@.npc_manager;Not a slave? Technically true, but that is only because you are such a useless, disobedient slut that none would pay even a pittance for you. But I... I will fix that oh, yes, sissy. Your training has only begun.@@"<br>
<br>
Your brief outburst has sapped any courage you had and you wilt under her gaze as she approaches, pushing you back to lie over her desk. A rope appears in her hand and, before you know it, your wrists and knees have been brought together, her strength utterly irresistible as she lashes your limbs together to leave you totally exposed and helpless.
<</if>>
<br><br>
Looking up you make a startling new discovery - there is a mirror mounted to the ceiling above her desk looking up has you staring at your own reflection, driving home even harder how helpless and exposed you currently are.<br>
<br>
[<<moveTo "event_manager_pegging_8" "Look up at her and wait for what's next" 180>>]
</div>/*#
#desc: choose sissy collar, she binds you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.collar = "sissy">>
<<set $npc_manager.flags.pegging.approval += 1>>
<<addItem "choker_sissy">>
<<wearItem $player $now "choker_sissy" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("feminization") > setup.getTotalValue("submission")>>
The choice between the two collars is a simple one. Though you may play the part of a submissive you ARE a sissy, and from the moment you laid eyes on the pink-frilled choker there was really no doubt it belonged around your throat. Making your choice with a nod you raise your chin in eager anticipation.<br>
<br>
With a wide smile <<=setup.getNpcName('npc_manager', 'formal')>> places the leather collar to one side and wraps the pink choker around your throat.
<<elseif setup.getTotalValue("feminization") < setup.getTotalValue("submission")>>
Nodding in the direction of the pink sissy choker your decision surprises the both of you. While it is certainly true that you have swiftly learned to embrace being an obedient submissive there is just something about the sissy pink choker that calls out to you.<br>
<br>
Moving past her brief surprise <<=setup.getNpcName('npc_manager', 'formal')>> places the leather collar to one side and leans over to wrap the pink choker around your neck.
<<else>>
It is a tricky decision between the two neck adornments; the cute, feminine-pink sissy choker and the harsh leather slave collar, but you make you choice, nodding towards the sissy pink choice and raising your chin proudly in anticipation.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> takes your choice in stride, placing the leather collar to one side and leaning over to wrap the pink choker around your throat.
<</if>>
The lace fringe tickles a little under your chin as she snaps it closed, making a few preening adjustments to centre the large SISSY letters below your chin.<br>
<br>
"@@.npc_manager;So lovely, you truely are blossoming into the perfect SISSY secretary I always wanted.@@"<br>
<br>
The words send tingles through your body, whatever remaining bits of masculinity you have rightly humiliated, even as the bulk of you swoons slightly at the encouraging words.<br>
<br>
Stepping to the side <<=setup.getNpcName('npc_manager', 'formal')>> pats the edge of the desk.<br>
<br>
"@@.npc_manager;Alright my cutie, hop up and lay back, I think you are just about ready...@@"<br>
<br>
You give a final glance at her intimidating member looming large before you obey, leaning back on the desk per her instruction as she swiftly binds your wrists to your calves just below the knee with twin lengths of rope.<br>
<br>
Looking up you make a startling new discovery - there is a mirror mounted to the ceiling above her desk looking up has you staring at your own reflection, driving home even harder how helpless and exposed you currently are.<br>
<br>
Standing between your legs she rests her massive fake member on your thigh, your legs wide, exposed and helpless. She savours the moment, looking down at you with obvious delight for almost a minute to leave you blushing bashfully before she makes her next move.<br>
<br>
[<<moveTo "event_manager_pegging_8" "Look up at her and wait for what's next" 180>>]
</div>/*#
#desc: choose leather slave collar, she binds you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.collar = "slave">>
<<set $npc_manager.flags.pegging.approval += 1>>
<<addItem "bondage_collar">>
<<wearItem $player $now "bondage_collar" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("feminization") > setup.getTotalValue("submission")>>
Nodding in the direction of the leather bondage collar your decision surprises the both of you. While it is certainly true that you have been swiftly becoming a cute, feminine SISSY secretary there is just something about the stout black leather that calls out to you.<br>
<br>
Moving past her brief moment of surprise <<=setup.getNpcName('npc_manager', 'formal')>> places the pink choker to one side and leans over to wrap the leather collar around your neck.<br>
<<elseif setup.getTotalValue("feminization") < setup.getTotalValue("submission")>>
The choice between the two collars is a simple one. Though you may play the part of the sissy you ARE a submissive, and from the moment you laid eyes on the black leather there was really no doubt it belonged around your throat. Making your choice with a nod you raise your chin in eager anticipation.<br>
<br>
With a wide, dominant grin <<=setup.getNpcName('npc_manager', 'formal')>> places the sissy choker to one side and wraps the leather collar around your neck.<br>
<<else>>
It is a tricky decision between the two neck adornments; the cute, feminine-pink sissy choker and the harsh leather slave collar, but you make you choice, nodding towards the black leather option and raising your chin proudly in anticipation.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> takes your choice in stride, placing the pink choker to one side and leaning over to wrap the leather collar around your neck.<br>
<</if>>
<br>
"@@.npc_manager;There. Now you are truely mine... at least for now.@@"<br>
<br>
<<printThought $player "Oh <<=setup.getNpcName('npc_manager', 'title')>>...">><br>
<br>
On your knees you sway slightly in submissive delight as she hooks a finger through the ring dangling from your collar and gently pulls you to your feet.<br>
<br>
"@@.npc_manager;Up, slave. Now onto the desk and lean back... that is a good girl.@@"<br>
<br>
You obey her without thinking... or is that with thinking of nothing save your submission to her will? Either way you are on your back on the desk as she swiftly ties your wrists to your calves just below the knee. The simple, but secure, rope binding having you both restrained and exposed.<br>
<br>
Looking up you make a startling new discovery - there is a mirror mounted to the ceiling above her desk. Looking up has you staring at your own reflection, driving home even harder how helpless and vulnerable you currently are.<br>
<br>
Standing between your legs she gently rests her cock on your thigh as she grins down at you.<br>
<br>
"@@.npc_manager;Now it is time for the REAL fun...@@"<br>
<br>
[<<moveTo "event_manager_pegging_8" "Lie back and wait for what's next." 180>>]
</div>/*#
#desc: let her decide on your collar, she binds you
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.approval += 2>>
<<if setup.getTotalValue("feminization") > setup.getTotalValue("submission")>>
<<set $npc_manager.flags.pegging.collar = "her_sissy">>
<<elseif setup.getTotalValue("feminization") < setup.getTotalValue("submission")>>
<<set $npc_manager.flags.pegging.collar = "her_slave">>
<<else>>
<<if random(0,1) == 0>>
<<set $npc_manager.flags.pegging.collar = "her_slave">>
<<else>>
<<set $npc_manager.flags.pegging.collar = "her_sissy">>
<</if>>
<</if>>
<<if $npc_manager.flags.pegging.collar == "her_sissy">>
<<addItem "choker_sissy">>
<<wearItem $player $now "choker_sissy" true>>
<<else>>
<<addItem "bondage_collar">>
<<wearItem $player $now "bondage_collar" true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You look back and forth between the two choices before, instead, looking back up at her face. You shake your head, her expression darkening until you commence your explanation.<br>
<br>
"Shouldn't you be the one one to determine what I should wear? You have proven time and again to know far better than myself what I need. Thus I surrender to your guidance once again, trusting that you, as always, know what is best." <br>
You tell her, that she should be the one to determine what should be your fate, since <<=setup.getNpcName('npc_manager', 'formal')>> has proven time and again, to know far better then yourself what you need. Thus you surrender to her guidance once again, trusting that she, as always, knows what is best in life.<br>
<br>
The smile of approval on her face at your words is so wide you think her head might split in half.
<<if setup.getTotalValue("feminization") > setup.getTotalValue("submission")>>
Instead she instantly comes to a, frankly obvious, conclusion. Placing the leather collar to one side she wraps the pink frilly choker around your throat, where it belongs.<br>
<<elseif setup.getTotalValue("feminization") < setup.getTotalValue("submission")>>
<<set $npc_manager.flags.pegging.collar = "her_slave">>
Instead she instantly comes to a, frankly obvious, conclusion. Placing the sissy choker to one side she wraps the black leather collar around your neck, where it belongs. With a quiet click the buckle in the back closes, followed by her showing you a small lock that she uses to seal the deal.<br>
<<else>>
She peers at you for a long moment, as if trying to suss out what would be the perfect accoutrement to accessorize your neck. She seems as torn as you are, finally giving a shrug and wrapping the
<<if $npc_manager.flags.pegging.collar == "her_slave">>
leather collar around your neck. Buckling it snug she finishes it off by showing you a small lock that clicks shut behind your neck, fixing your new collar in place.<br>
<<else>>
sissy choker around your throat.<br>
<</if>>
<</if>>
<br>
<<if $npc_manager.flags.pegging.collar == "her_slave">>
"@@.npc_manager;There. Now you are truely mine... at least for now.@@"<br>
<br>
<<printThought $player "Oh <<=setup.getNpcName('npc_manager', 'title')>>...">><br>
<br>
On your knees you sway slightly in submissive delight as she hooks a finger through the ring dangling from your collar and gently pulls you to your feet.<br>
<br>
"@@.npc_manager;Up, slave. Now onto the desk and lean back... that is a good girl.@@"<br>
<br>
You obey her without thinking... or is that with no thought save your submission to her will? Either way you are on your back on the desk as she swiftly ties your wrists to your calves just below the knee. The simple, but secure, rope binding has you exposed and nigh helpless. Standing between your legs she gently rests her cock on your thigh as she grins down at you.<br>
<br>
"@@.npc_manager;Now it is time for the REAL fun...@@"<br>
<<else>>
You feel a tingle of excitement at the soft choker fastened in place, another scrap of your silly masculinity strangled by the gentle accoutrement you now wear. She takes a moment to straighten your new choker so that the word SISSY is perfectly centred under your chin before moving to one side and patting her hand on the edge of the desk.<br>
<br>
"@@.npc_manager;So lovely, you truly are blossoming into the perfect SISSY secretary I always desired.@@"<br>
<br>
The words send tingles through your body, whatever remaining bits of male pride you somehow have rightly humiliated, even as the bulk of you swoons at the encouraging words.<br>
<br>
Stepping to the side <<=setup.getNpcName('npc_manager', 'formal')>> pats the edge of the desk.<br>
<br>
"@@.npc_manager;Alright my cutie, hop up and lay back, I think you are just about ready...@@"<br>
<br>
You give a final glance at her intimidating member looming large before you obey, leaning back on the desk per her instruction as she swiftly binds your wrists to your calves just below the knee with twin lengths of rope.<br>
<br>
Standing between your legs she rests her massive fake member on your thigh, your legs wide, exposed and helpless. She savours the moment, looking down at you with obvious delight for almost a minute to leave you blushing bashfully before she continues.<br>
<</if>>
<br>
Looking up you make a startling new discovery - there is a mirror mounted to the ceiling above her desk and looking up has you staring at your own reflection, driving home even harder how helpless and exposed you currently are.<br>
<br>
[<<moveTo "event_manager_pegging_8" "Lie back and wait for what's next." 180>>]
</div>/*#
#desc: manager gives options for removing your chastity belt
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<if $npc_manager.flags.pegging.approval <= 0 || !$npc_manager.flags.hascagekey>>
<<set $npc_manager.flags.pegging.chastity = "nooffer">>
<<if $scene.plug != "">>
<<removeItem $player $now $scene.plug true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Smiling she lays her cock across your thigh, driving home how large it is compared to your own caged and locked member.<br>
<br>
"@@.npc_manager;Feeling helpless yet? In truth you were at my mercy from the moment you walked into my office, but it is all a bit more... tangible like this, is it not?@@"<br>
<br>
Her cock rubs up and down your flat belly, driving home just how big and deep it could reach into you. She glances down at your cage with a smile.<br>
<br>
<<if $npc_manager.flags.pegging.approval <= 0>>
<<set $npc_manager.flags.pegging.chastity = "nooffer">>
"@@.npc_manager;I had thought to uncage you for our fun but, well, you have just been SO naughty<<if $npc_manager.flags.pegging.approval <= -8>> in fact, I can scarcely imagine how you could have been more ill-behaved through this process, short of literally trying to run away<</if>>. In any case, letting your sissy clitty free is a reward that you have in no way earned, so you will just have to enjoy me pegging your cute tush from inside your private prison.@@"<br>
<br>
She punctuates her words by tugging on your balls and teasing your <<getWordMyPenis $player>>. You whimper in pain, her attention leaving you hard, straining and feeling oh so helpless.<br>
<br>
She traces a finger down over your caged member, tracing your prison and then further down over your perineum and down to your rear hole.
<<if setup.getItemFromType('plug')!="">>
Finding the <<=setup.getItemFromType('plug')>> currently occupying your bottom she smiles.<br>
<br>
"@@.npc_manager;Apparently you can do SOMETHING right, on occasion, your holes are always better filled but now...@@"<br>
<br>
Grasping the plug by the base she rips it out of your rear, eliciting a pop and a gasp in sequence from your two ends. Placing the plug to one side she squirts a burst of lube into your momentarily gaping hole before drizzling more slick syrup over her member and squaring her stance.<br>
<<else>>
Her fingers sliding between your cheeks her eye twitches momentarily, as if annoyed to finds you empty. She spends no time scolding you, merely squirting a dollop of lube up your rear before smearing more over her artificial cock.<br>
<</if>>
<br>
"@@.npc_manager;Now it is time. Relax... and enjoy.@@"<br>
<br>
Bound and pinned you can do nothing but lay there as she aims the fat head of her cock at your hole and prepares to thrust. Your own member continues to betray... or is it illuminate? Your desires, straining as hard as it can within its prison.<br>
<br>
[<<moveTo "event_manager_pegging_10" "Try to relax" 60>>]
<<else>>
<<if $npc_manager.flags.hascagekey>>
"@@.npc_manager;You
<<if $npc_manager.flags.pegging.approval == 14>>
have been perfectly behaved, so you have more than earned me
<<elseif $npc_manager.flags.pegging.approval >= 9>>
have performed very well today and so I am
<<elseif $npc_manager.flags.pegging.approval >= 5>>
have done well enough today and so you have earned the privilege of my
<<else>>
have been all but terrible today, but I am feeling lenient and am going to give you the... benefit of the doubt so that this next experience is a truly special one. I am
<</if>>
offering to remove your cute cage for the duration. What will it be?@@"<br>
<br>
You get the feeling that this choice is for your benefit and that, however you choose, it will not affect her treatment of you today, though it could well unlock something in the future...<br>
<br>
[<<moveTo "event_manager_pegging_9_remove" "Thank her and ask for your <<getWordMyPenis $player>> to be unrestrained for your pegging" 180>>]<br>
[<<moveTo "event_manager_pegging_9_chaste" "Thank her and request to remain caged for the duration" 120>>]
<<else>>
"@@.npc_manager;You
<<if $npc_manager.flags.pegging.approval == 14>>
have been perfectly behaved, so you have more than earned me
<<elseif $npc_manager.flags.pegging.approval >= 9>>
have performed very well today and so I am
<<elseif $npc_manager.flags.pegging.approval >= 5>>
have done well enough today and so you have earned the privilege of my
<<else>>
have been all but terrible today, but I am feeling lenient and am going to give you the... benefit of the doubt so that this next experience is a truly special one. I am
<</if>>
offering to remove your cute cage for the duration... That is, if I had the key in my possession, which, alas, I do not. Perhaps it is for the best? A real trial by fire to see how it holds up while you are used as the lovely girl you are.@@"<br>
<br>
[<<moveTo "event_manager_pegging_10" 'Thank her and brace yourself to be "used"' 180>>]<br>
<</if>>
<</if>>
</div>/*#
#desc: manager removes your chastity cage
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.chastity = "remove">>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<manipulateItem $player $now $scene.cage "lock" false>>
<<removeItem $player $now $scene.cage true>>
<<if $scene.plug != "">>
<<removeItem $player $now $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
She smiles as she gives your encased member a final caress before producing the key to your cage from a small pocket on her harness rather than its normal place dangling from her necklace.<br>
<br>
"@@.npc_manager;Ah, my cute wanton slut, how long has it been since your little friend was free? Probably not long enough but, well, I am sure he, or is it she now, like you? Will have an enjoyable time out for a brief parole.@@"<br>
<br>
With a loud click your lock releases, your small <<getWordMyPenis $player>> nigh exploding out of its prison. She places the cage on the desk out of the way as your member lies hard against your thigh your balls tight with excitement, a thin trickle of pre leaking down your side.<br>
<br>
She traces over your taut, sensitive skin with a single fingernail, smiling as she wraps a cockring snug around your base.<br>
<br>
"@@.npc_manager;This should help you last a bit longer.@@", she explains, her mere touch having you let out a whimpering gasp as she lightly runs her finger from your tip down your short shaft, past your taut, quivering balls and down over your taint.<br>
<br>
<<if $scene.plug != "">>
Finding the <<=setup.getItemName($scene.plug)>> currently occupying your bottom she smiles wider.<br>
<br>
"@@.npc_manager;Mmm, very nice, your holes are always better off filled, but you have earned a... shall we say... upgrade?@@"<br>
<br>
Her eyes flit down to the thick member that dwarfs your full-hard <<getWordMyPenis $player>> in every way, the though that you are mere moments away from it entering you causing you to shudder in anticipation.<br>
<br>
Grasping the plug by the base she gently extracts it from your rear, eliciting a pop and a gasp from your two ends. Placing the plug to one side she squirts a burst of lube into your momentarily gaping hole before drizzling more slick syrup over her member and squaring her stance.<br>
<<else>>
Her fingers sliding between your cheeks her eye twitches momentarily, as if annoyed to find you empty. She spends no time scolding you, merely squirting a dollop of lube up your rear before smearing more over her artificial cock.<br>
<</if>>
<br>
Bound and pinned you can do nothing but lay there as she aims the fat head of her cock at your hole and prepares to thrust. Your own member continues to betray... or is it it illuminate? Your desires; as hard as you have ever seen it you tremble with quivering anticipation.<br>
<br>
[<<moveTo "event_manager_pegging_10" "Relax and wait" 60>>]
</div>/*#
#desc: manager grants your request to remain caged, asks for your reason
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
She raises an eyebrow at your request to remain caged.<br>
<br>
"@@.npc_manager;Not that I do not approve - a dicklet like yours is useless save for getting the bearer in trouble, so being locked up is really for your own good... but I would like to know why you wish to keep it on. Have you concluded that your sissy clitty is a nigh-useless thing that should never be allowed free, or do you merely wish to be protected from the... distraction of freedom to better appreciate the sensations of what I am about to put into you?@@"<br>
<br>
You take a moment to consider your reasoning.<br>
<br>
[<<moveTo "event_manager_pegging_9_chaste_1_dickless" "Say your member is useless and should always be kept caged." 60>>]<br>
[<<moveTo "event_manager_pegging_9_chaste_1_focused" "Tell her you want no distractions from what you are about to receive." 180>>]
</div>/*#
#desc: tell manager that you don't deserve to have a 'free' penis
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.chastity = "dickless">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_manager', 'formal')>> that, with her help, you have concluded that your <<getWordMyPenis $player>> is really quite useless and embarrassing and thus best kept caged and out of mind.<br>
<br>
She nods somberly at your explanation only to grin wide once more and wrap her hand around your cage. She rubs her large artificial cock rubbing against you, your entire <<getWordMyPenis $player>>, cage and all, still smaller than the head of her <<getWordPenis $player>>.<br>
<br>
"@@.npc_manager;Oh you are just too cute! And I agree, of course, you are a sissy now, feminisation, obedience and serving with your holes are your vehicles for pleasure, not this tiny thing.@@"<br>
<br>
You thank her for the gift of chastity and mentally prepare for what she will give you next.<br>
<br>
[<<moveTo "event_manager_pegging_9_chaste_2" "Relax and wait" 120>>]
</div>/*#
#desc: tell manager you like chastity cage for keeping you focused
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.chastity = "focused">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
You explain that while having your <<getWordMyPenis $player>> free of its cage would feel very good, indeed, you do not want to be distracted from <<if setup.getTotalValue("submission") > 10>>serving her with your ass<<elseif setup.getTotalValue("penis") > 10>>being gloriously stretched by her magnificence<<else>>the first feel of her cock in your ass<</if>>. She smiles and nods in agreement, giving your caged self a final squeeze and then leaning over to place a gentle kiss on the tip of your prison.<br>
<br>
You shudder in delight, even though the hard plastic insulates you from the warm, wet brush of her lips.<br>
<br>
"@@.npc_manager;Mmmm, I see what you mean. Yes, you will enjoy this far more from inside your cage. Congratulations on making such a mature decision even in the face of what was surely a great temptation.@@"<br>
<br>
You thank her for the gift of chastity and mentally prepare for what she will give you next.<br>
<br>
[<<moveTo "event_manager_pegging_9_chaste_2" "Relax and wait" 120>>]
</div>/*#
#desc: manager removes your plug (if present) and lubes your hole
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<if $scene.plug != "">>
<<removeItem $player $now $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Giving your cage a final unfelt squeeze her hand traces lower, brushing over your testicles and taint before coming to your bum.
<<if $scene.plug != "">>
Finding the <<=setup.getItemName($scene.plug)>> currently occupying your bottom she smiles wider.<br>
<br>
"@@.npc_manager;Mmm, very nice, your holes are always better off filled, but you have earned a... shall we say... upgrade?@@"<br>
<br>
Her eyes flit down to the thick member that truly is bigger and better in every way than your <<getWordMyPenis $player>> ever was. The though that you are mere moments away from her entering you causes you to shudder in anticipation.<br>
<br>
Grasping the plug by the base she gently extracts it from your rear, eliciting a pop and a gasp from your two ends. Placing the plug to one side she squirts a burst of lube into your momentarily gaping hole before drizzling more slick syrup over her member and squaring her stance.<br>
<<else>>
Her fingers sliding between your cheeks her eye twitches momentarily, as if annoyed to find you empty. She spends no time scolding you, merely squirting a dollop of lube up your rear before smearing more over her artificial cock.<br>
<</if>>
<br>
Bound and pinned you can do, and wish to do, nothing but lay there as she aims the fat head of her cock at your hole and prepares to thrust. Your own member continues to betray... or does it illuminate? Your desires. As hard as you have ever seen it you are taut and ready, quivering in anticipation.<br>
<br>
[<<moveTo "event_manager_pegging_10" "Relax and wait" 60>>]
</div>/*#
#desc: manager enters you with her strapon
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
It's time. <<=setup.getNpcName('npc_manager', 'formal')>> lets you take one last moment to admire her glorious strapon before lining up and pressing the tip against your rear.<br>
<br>
Your heart races as you look up at her and she commences pushing forward.<br>
<br>
<<switch $npc_manager.flags.pegging.approval>>
<<case 14>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you with obvious pride, and with good reason. You have not only met her expectations, but far exceeded them, behaving absolutely perfectly at every turn in the scene leading to this moment.<br>
<br>
[<<moveTo "event_manager_pegging_10_good" "Continue" 240>>]
<<case 13 12 11 10>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you with obvious pride, and with good reason. You have made nary an error in meeting or exceeding almost every expectation to make a nigh perfect performance to this point in the winding scene leading to this moment.<br>
<br>
[<<moveTo "event_manager_pegging_10_good" "Continue" 240>>]
<<case 9 8 7 6 5>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you with approval. You have been good and behaved, and she is obviously pleased at your progress and your actions performed in the winding scene leading to this moment.<br>
<br>
[<<moveTo "event_manager_pegging_10_good" "Continue" 240>>]
<<case 4 3 2 1>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> expression is unreadable as she looks down at you. You have not exactly shown your best in the scene leading up to this moment, but you at least do not appear to have left her angry.<br>
<br>
[<<moveTo "event_manager_pegging_10_neutral" "Continue" 240>>]
<<case 0 -1 -2 -3 -4>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks mildly disappointed in you. You can take solace that you have not misbehaved so much as to anger her, but you imagine she hoped the scene leading up to this moment going significantly "better." <br>
<br>
[<<moveTo "event_manager_pegging_10_neutral" "Continue" 240>>]
<<case -5 -6 -7>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> icy glare freezes your blood. You have been quite misbehaved in the scene leading up to this moment and you fear your ass is about to reap the poisonous crop your behaviour has sown.<br>
<br>
[<<moveTo "event_manager_pegging_10_cruel" "Continue" 240>>]
<<case -8>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks down at you with simmering rage. You have slacked off at work and antagonized her at every point in the winding scene that has preceded this moment and now? Now your ass is going to bear the responsibility for the decisions of your head...<br>
<br>
[<<moveTo "event_manager_pegging_10_cruel" "Continue" 240>>]
<<case -9>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks down at you with simmering rage. You have antagonized her at every point in the winding scene that has preceded this moment and now? Now your ass is going to bear the responsibility for the decisions of your head...<br>
<br>
"@@.npc_manager;You stupid whore... I can scarcely imagine a way you could have fucked things up and yet you have not been fired... yes. I suppose I could have refused to promote you but... well, I suppose I am an optimist, hoping that you will somehow rise to the occasion. I would advise that you do, or you will certainly end up on the street before long... Though perhaps being an alley whore was your destiny all along?@@"<br>
<br>
[<<moveTo "event_manager_pegging_10_cruel" "Continue" 240>>]
<<default>>
ERROR, approval of <<=$npc_manager.flags.pegging.approval>> unexpected!
[<<moveTo "event_manager_pegging_10_neutral" "Continue" 240>>]
<</switch>>
</div>/*#
#desc: pegging image generation, to be included
#status: FINISHED 0.4.0.0
#*/
<<set $scene.image = "">>
<<if ($player.hair.style == "unkempt") || ($player.hair.style == "combed")>>
<<set $scene.image = "1">>
<<else>>
<<set $scene.image = "0">>
<</if>>
<<if $player.body.breastsize[0]<2>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<if !setup.isItemTypeEquipped('cage')>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<removeEverythingButUnderwear $player $now>>
<<if (setup.analyzeWornTags(['female','male'])!="female") || (setup.getIndecentValue($player)==100)>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<set $scene.image = "./images/scenes/pegging/pegging_01_"+$scene.image+".png">>/*#
#desc: pegging start, loving
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.style = "good">>
<<include event_manager_pegging_10_image>>
<<setThreshold 'anal' 'secretary_anal' 'stage2_end' true>>
<<if $player.peggingvirginity == "">>
<<set $player.peggingvirginity = 'npc_manager'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
<br>
<<if setup.getTotalValue("anal") > 7 >>
You know you can take even something as massive as her cock, but you still feel special and blessed as you eagerly anticipate her entering you for the first time.<br>
<<elseif setup.getTotalValue("anal") > 4>>
Though her artificial cock is intimidating and larger than anything that has been in your ass previously you feel no fear. You trust her, and any pain you might feel will pale next to the joy you gain in performing this service for her.<br>
<<else>>
Despite the massive size of the implement poised against your ass you feel almost no fear. You trust her, and any pain you might feel will pale next to the joy you gain in performing this service for her.<br>
<</if>>
<br>
Reaching down she caresses your cheek and smiles one last time. Tracing her hand down your body she gets a firm grasp on your hips and pushes forward.<br>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") > 7>>
Your ass opens for her, the slick rod of silicone stretching and filling you as it drives deeper and deeper without resistance. Though still a challenge
<<elseif setup.getTotalValue("anal") > 4>>
Your ass parts, the slick rod of silicone stretching you like never before, opening you wide as it plunges deeper and deeper. Despite her care there is also pain, but with it
<<else>>
Your untrained rear tries to resist but flesh is weak compared to her unyielding rod of slick silicone. Like an army pressing inexorably forward she steadily slides into you, your body resisting but, in the end, giving way as she spreads you beyond your limits and pushes to new depths. As gentle as she is there is still pain, but
<</if>>
<<if setup.getTotalValue("penis") > 10>>
waves of pleasure begin to flow outward from her cock. You feel as if you are being impaled on the platonic ideal of a penis, long, thick and unyielding, it is everything you have ever dreamt of, and more.<br>
<<else>>
you feel your body adjusting, the intensity of the experience somehow addictive and you find yourself looking forward to her filling you more and more with each second that ticks past.<br>
<</if>>
<br>
Your heart races and you twist in your bonds but she is there for you. Her hold is firm, but gentle and she whispers quiet encouragement, praising your cute bravery and thanking you for the service of your body.<br>
<br>
Finally, though it seemed she would plunge into your forever there is a changing sensation. Her hips are now pressed against your own, her tip magically touching what feels like the end of you - your body somehow a perfectly sized cock-sleeve to accommodate her member.<br>
<br>
She pauses as you gasp, your breaths coming in short, quick pants as you try to adjust to this magnificent fullness. Holding in place, filling you, she gives you time, your eyes meeting.<br>
<br>
[<<moveTo "event_manager_pegging_11_good" "Enjoy" 300>>]
</div>/*#
#desc: manager starts to peg you dispassionately
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.style = "neutral">>
<<include event_manager_pegging_10_image>>
<<setThreshold 'anal' 'secretary_anal' 'stage2_end' true>>
<<if $player.peggingvirginity == "">>
<<set $player.peggingvirginity = 'npc_manager'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
With little in the way of ceremony she takes firm hold of your hips and presses forward.<br>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") > 8>>
Your well-trained ass gapes to accept her massive member, the thick, slick rod of silicone gliding forward with ease. Your eyes roll back in your head as
<<elseif setup.getTotalValue("anal") > 6>>
Her member is more than you have ever taken before but, between the copious lube and her inexorable strength, your flesh gives way, your ass spreading as her cock glides deeper and deeper into you. Despite the pain
<<else>>
You don't see how her massive cock could possibly fit into your tight hole, and yet it does, the thick head forcing past your sphincter, clearing the path for the rest of the shaft to drive deeper and deeper. Despite the pain
<</if>>
<<if setup.getTotalValue("penis") > 10>>
waves of pleasure begin to pulse out from her cock. You feel as if you are being impaled on the platonic ideal of a penis. Long, thick and unyielding it is everything you have ever dreamt of, and more.<br>
<<else>>
you feel your body adjusting, the intensity of the experience somehow addictive and you find yourself looking forward to her filling you more and more with each second that passes.<br>
<</if>>
<br>
You gasp and mew but she looks down with almost clinical detachment. You are certain she is enjoying the act of impaling your cute ass but she seems disinterested in gracing you with the pleasure of her appreciation.<br>
<br>
Finally, just as you feel you can take no more, she stops, the leather of her harness pressed against your bare rear, every centimeter of her cock now filling you.<br>
<br>
She pauses, holding at depth for your body to adjust. Her stern look tells you that, while the pegging may, technically, be for your benefit, it will proceed 100% on HER terms. Panting as you try to adjust to the telephone-pole like object in your ass you finally look up to meet her gaze, the glance somehow prompting her to move on.<br>
<br>
[<<moveTo "event_manager_pegging_11_neutral" "Continue" 240>>]
</div>/*#
#desc: manager starts to peg you cruelly
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the "cruel" path your chastity cage remains in place */
<<if $roomchange == true>>
<<set $npc_manager.flags.pegging.style = "cruel">>
<<include event_manager_pegging_10_image>>
<<setThreshold 'anal' 'secretary_anal' 'stage2_end' true>>
<<if $player.peggingvirginity == "">>
<<set $player.peggingvirginity = 'npc_manager'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> eyes blaze with disappointed anger as she glares down at you. Bound as you are you have no means of escape, forced to merely lie back and take it as she unleashes her fury. You can't help but think maybe you ought to have been more obedient and less of a brat...<br>
<br>
Her nails digging into your hips she plunges her cock into your ass with savage ferocity.<br>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") >= 10 + 3 >>
Even your well-trained ass is stretched to the limit by her swift entrance. You let out a gasp of surprise as she slides forward with lube-slickened speed.
<<elseif setup.getTotalValue("anal") >= 10>>
Before today you would have thought your ass relatively... experienced, but your prior time spent with things up your rear was insufficient to prepare you for her voluminous size. Stretching painfully to accomodate her girth it is a credit to the copious lube that she forces her way into you with only a modicum of pain. Still, you would hardly call it comfortable as she thrusts swiftly into you.
<<else>>
Heedless of your tight hole her cock forces you open wide and then drives deeper. Bound and pinned you can do nothing but cry out at the telephone-pole like object impaling you. It feels like you could split in twain, and looking up at her angry expression you are unsure if such an end is not her intent.
<</if>>
Her tip feels like it is touching the end of you when her leather-harness finally slams against your bare ass. Your entire body slides back a few inches from the force before her vice-like grip pulls you back towards her, re-seating her cock full-hilt in your ass.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
Despite the pain of her forcefully swift entry you can't help but be aroused. Her cock... is glorious, huge, hard it is bigger than anything you have seen or felt, the platonic ideal of penis compared to which all men are inadequate.<br>
<<else>>
You cry out, her cock doesn't just fill your ass, it seems to pound into your psyche as well, opening you in new ways that cause the pain of its entry to also arouse you further.<br>
<</if>>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
The harsh treatment turns you on something fierce and your eyelids flutter and your eyes roll back in your head - was this why you misbehaved? To be treated so harshly... is that what you now desire?<br>
<<else>>
You feel your psyche break slightly at the harsh treatment... you have definitely learned a lesson, either you need to learn to embrace being a painslut, or you had better shape up your behaviour something quick.<br>
<</if>>
<br>
Holding her position she looks down at you with a sneer.<br>
<br>
"@@.npc_manager;Not bad, slut, but we are just getting started. You should probably relax but honestly? I do not much care one way or the other.@@"<br>
<br>
You shiver with fright as you wonder what else you are in for.<br>
<br>
[<<moveTo "event_manager_pegging_11_cruel" "Endure" 240>>]
</div>/*#
#desc: she gently pegs you, talks about how you thanked + sucked her
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Smiling down at you <<=setup.getNpcName('npc_manager', 'formal')>> begins to gently roll her hips. The movement is subtle, her cock shifting less than a centimeter but it is so big, and you are so full that it lights up every nerve long the length of your anal cavity.<br>
<br>
"@@.npc_manager;You like that? My cute SISSY secretary?@@"<br>
<br>
You nod your head and moan your appreciations, straining against your bonds as the waves of pleasure pumped into your by her huge strapon begin to suffuse your entire body, subsume your whole world.<br>
<br>
<<switch $npc_manager.flags.pegging.thank>>
<<case "refuse">>
"@@.npc_manager;Mmm, where was that gratitude earlier, hmm?@@"<br>
<br>
She punctuates her words by laying a quick, playful slap on your rear.<br>
<br>
You gasp, less in pain than in sensory overload, too overwhelmed to do much more but half-mumble an apology. Given that she continues to pump delightful pleasure into your rear, it must have been sufficient.<br>
<<case "thank">>
"@@.npc_manager;Very good, I so enjoy it when you thank me for all the things I do for you. Polite gratitude is one of the lubricants that keeps society moving along, and lubricant is a good thing, right?@@"<br>
<br>
The way her thick cock glides in an out on each short thrust is a reminder of the slick lube coating the walls of your lower passage and you pant and nod in further gratitude.<br>
<<case "appreciate">>
"@@.npc_manager;Mmmm, the way you express your appreciation, so genuine and adorable... Well, that is how I know that not only are you becoming the beautiful SISSY secretary that I want, but that it is your desire as well.@@"<br>
<br>
You groan and nod, the truth of her words making you wish you had spent even more time lavishing her with praise.<br>
<<case "worship">>
"@@.npc_manager;Oh my wonderful sissy. I am just remembering how delightful you were worshipping my feet and showering me with kind words. A <<=setup.getNpcName('npc_manager', 'title')>> could get spoiled by such things... Yes, that would certainly help me get through some of those all day meetings, to have you curled up under my desk, massaging my feet and keeping me company.@@"<br>
<br>
You blush at the compliment, turning even redder as she continues to rock inside you and look down with a smile.<br>
<<default>>
ERROR! unknown thanks style: <<=$npc_manager.flags.pegging.thank>>
<</switch>>
<br>
Reaching up with one hand she hooks a thumb in your mouth and you reflexively suck, moaning loud around it as she increases the length of her strokes into your ass. No more is she merely rocking back and forth, now her cock pulls back enough for the wide head to slightly stretch your hole before gliding in to probe your depths, each stroke smooth and long and amazing.<br>
<br>
<<switch $npc_manager.flags.pegging.suck>>
<<case "refuse">>
"@@.npc_manager;Where was this obedient mouth earlier when I offered you my cock? Hmmm?@@"<br>
<br>
You moan as she slides all the way into you as a reminder of which cock she is refering to. She pauses all the way inside you as you hold your breath; it taking you several seconds to realise that she is waiting for you to respond. "Too... too big." You gasp breathlessly.<br>
<br>
She pulls her hips back, leaving you feeling partially empty before she resumes her long, slow pace of thrusts. "@@.npc_manager;Too big? No, not for you. No, this is the perfect size for my adorable, sissy, slut, remember? You took it all, but you made me do all the work!@@"" She accentuates her words by tapping the end of you, so much silicone cock inside of your ass it feels like she could be tapping the back of your throat from below.<br>
<br>
Your mouth falls open and she slips more fingers past your lips until you are sucking her whole hand up to the second knuckle. "@@.npc_manager;See? More than big enough, but you refused your duty, so only one of your cute holes gets the gentle treatment today.@@"
<<case "kiss">>
"@@.npc_manager;Such pretty lips, they would look so wonderful around my cock but all you did was kiss, were you scared?@@"<br>
<br>
You nod as she continues to thrust in and out of you. With each stroke forward she slides another finger past your lips until you are sucking on her hand up to the second knuckle. "@@.npc_manager;See? Plenty of room! But you missed your chance, and so only one of your holes is going to get to enjoy my cock today.@@"<br>
<br>
You whimper in response, licking and sucking on her fingers to show that you will better rise to the next opportunity. She seems satisfied with your efforts, finally removing her hand to leave your lips parted and moist.
<<case "lick">>
"@@.npc_manager;Such a cute tongue, and versatile, too. I quite enjoyed your efforts but the fact remains that a true sissy is always ready to offer her throat to any cock that would use it. What happened, were you scared to feel me bulging your throat?@@"<br>
<br>
You nod nervously, even as she starts sliding more fingers past your lips She adds one finger with each long, deep thrust of her hips until you are sucking her entire hand up to the second knuckle. "@@.npc_manager;See? Plenty of room! But you missed your chance, only managing to enjoy the tip. It is too bad, because it means only one of your holes is going to get to fully enjoy my cock today.@@"<br>
<br>
You whimper in response, licking and sucking on her fingers and wishing they were longer so that you could demonstrate that your throat is ready to accept her full, glorious length.
<<case "suck">>
"@@.npc_manager;Such a good cocksucker. I just loved it when you swallowed my cock like a good sissy mouth fuck-hole. That sort of enthusiasm... So beautiful, so perfect. How does it feel? To have taken me in both ends back to back?@@"<br>
<br>
You moan at that reminder, each long, slow stroke into your ass has you flashing back to how it felt to have your throat similarly strain and stretch and bulge around her cock. Taking advantage of your wide-mouthed reflection she slides the rest of her hand into you, thrusting in and out past the second knuckle as she continues gliding along the full depth of your ass.
<<default>>
ERROR! unknown suck style: <<=$npc_manager.flags.pegging.suck>>
<</switch>>
<br><br>
You cry out lustfully as she gradually slows to a stop, though thankful that she settles into a position deep inside your ass.<br>
<br>
[<<moveTo "event_manager_pegging_12_good" "Wait for her next move" 300>>]
</div>/*#
#desc: she dismissively pegs you, talks about how you thanked + sucked her
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Still holding your hips tight she begins to roll her hips, the motion causing her thick cock to slightly rock in and out of your ass. The overall movement is less than a centimeter but you are so tightly stuffed that it is beyond intense, your mind barely managing to keep track of words when she starts speaking to you.<br>
<br>
<<switch $npc_manager.flags.pegging.thank>>
<<case "refuse">>
"@@.npc_manager;Well, sissy? Are you going to start showing your gratitude or are you going to keep up this same petulant silent treatment from earlier?@@"<br>
<<case "thank">>
"@@.npc_manager;You like? I mean, of course you do... but you need to show your thanks, your appreciation, come on, like you did earlier...@@"<br>
<<case "appreciate">>
"@@.npc_manager;Mmm, as easy to read as your sissy needs are you should know that it is better for you to to vocalise them. Not just your desires, but, more importantly, how you feel when they are met. Well? I remember that adorable monologue you gave, reciting all the ways I have helped you on your journey. Now you have taken another step... tell me how you feel about it...@@""
<<case "worship">>
"@@.npc_manager;You worshipped me as a Goddess; as is proper, and in return... I grant you a divine gift. Feel it inside of you, this is what devotion earns...@@""
<<default>>
ERROR! unknown thanks style: <<=$npc_manager.flags.pegging.thank>>
<</switch>>
<br><br>
Forming coherent words is a bit beyond your present capabilities but your lips part to release a long, passionate moan of appreciation. <<=setup.getNpcName('npc_manager', 'formal')>> takes the opportunity to slide her thumb past your lips, gently sliding her thumb over your tongue as you reflexively suck in response.<br>
<br>
"@@.npc_manager;That is a good sissy, those lips were made to suck...
<<switch $npc_manager.flags.pegging.suck>>
<<case "refuse">>
It is really too bad that you did not display such enthusiasm earlier. As much fun as it may be to take from you that which I desire... I care about you, about your development, and embracing it whole-heartedly will do you much better than forcing me to drag you ever forward.
<<case "kiss">>
unfortunately all you did before was kiss... certainly I appreciated it, and it was quite cute but when presented with a penis a sissy bimbo should have two immediate instinctive reactions. If it is small, to cage it. If it is large? To suck it. So show me, sissy, show me what your mouth is really capable of.
<<case "lick">>
Such a nice tongue, quite dextrous but there is more to giving a good oral presentation than just a nimble tongue and cute lips. No, you need to show off depth AND breadth of skill. That means your throat should yearn to bulge around a nice thick cock.
<<case "suck">>
I am pleasantly surprised you still have so much energy - you gave me quite a show earlier, swallowing my cock like a drowning man chugging water. If you could only show such enthusiasm in all your duties well... We could have even more fun together.
<<default>>
ERROR! unknown suck style: <<=$npc_manager.flags.pegging.suck>>
<</switch>>
@@"<br>
<br>
As she talks her strokes get longer, until nearly the full length of her cock is sliding in and out of your ass, sending waves of pleasure through every nerve they glide over as each thrust seems to simultaneously re-fill and stretch you anew.<br>
<br>
While this is going on below she slides additional fingers past your lips until her entire hand up to the second knuckle is thrusting in and out of your mouth, effectively fucking you from both ends as your heart races and you start to gasp for air.<br>
<br>
It is all so intense you feel like you might faint but she generously removes her hand. A momentary flicker of approval flashes over her face before her dispassionate observance re-asserts itself, and with it her cock halting its thrusts to once more fully hilt itself in your ass.<br>
<br>
[<<moveTo "event_manager_pegging_12_neutral" "Take the chance to recover before she continues" 240>>]
</div>/*#
#desc: she aggressively pegs you, talks about how you thanked + sucked her
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the "cruel" path your chastity cage remains in place */
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
After her brutal entry you feel like a helpless toy, controlled within and without by a combination of her impaling cock, tight ropes and her unyielding grasp. Then she starts to move.<br>
<br>
Her thrusts are short and fast, like a jackhammer pounding inside your ass.<br>
<br>
<<switch $npc_manager.flags.pegging.thank>>
<<case "refuse">>
"@@.npc_manager;You like that, you ungrateful slut? I should pound you into the floor and spank you red, the way you refused to show any appreciation for everything I have done for you.@@"<br>
<<case "thank">>
"@@.npc_manager;You like that? You like feeling my cock pounding away in your slut hole? Show me, thank me for gracing your insides with my presence.@@"<br>
<br>
You flash back to the simple thanks you gave her earlier. Though you try even that proves beyond your current abilities as your words come out as nothing but gasping guttural moans.
<<case "appreciate">>
"@@.npc_manager;You feel that? That is me returning your appreciation. You thanked me for what I have given you well... it was all leading up to this, and more to come... maybe even cum if you could only fix the rest of your behaviour.@@"<br>
<<case "worship">>
"@@.npc_manager;You know I am remembering you worshiping my feet and well, it is almost hard to stay angry with you... too bad it was a lone ray of light in the dark miasma of your disobedience.@@"<br>
<<default>>
ERROR! unknown thanks style: <<=$npc_manager.flags.pegging.thank>>
<</switch>>
<br><br>
Pulling back slightly she lays a pair of hard slaps on each of your buttcheeks before grabbing your thighs and slamming leather against flesh as she re-asserts full depth. Reaching up towards your face with one hand she jams her thumb past your lips, thrusting it in and out, violating your mouth just as she pulls back her hips and begins violating your ass with long, deep thrusts that take you from gaping around her tip to completely, utterly filled in the course of each stroke.<br>
<br>
<<switch $npc_manager.flags.pegging.suck>>
<<case "refuse">>
"@@.npc_manager;How is that throat? Still remembering what it was like to take me? You know I might be more gentle with your holes if you would just be more behaved. You are a sissy, you are meant to be stuffed with cock and if you refuse to do such voluntarily well... it becomes my responsibility to make sure you do not fall behind in your training.@@"<br>
<<case "kiss">>
"@@.npc_manager;See, is it not better to have something inside you face-hole rather than just kiss? Sure, you were cute, but your throat needs to feel my cock almost as much as your ass did, and you missed out with your timidity!@@"<br>
<<case "lick">>
"@@.npc_manager;Mmmm, I feel that tongue; your skills with that are getting quite impressive but you need to diversify - a good blowjob is a coordinated act of tongue, lips and throat and on that last count you need to put in some work.@@"<br>
<<case "suck">>
"@@.npc_manager;Still eager to suck? Good, that is exactly what I should be able to expect. If only you showed as much devotion to your other duties as you do to being a deepthroat enthusiast and getting your slutty face-hole filled and fucked.@@"<br>
<<default>>
ERROR! unknown suck style: <<=$npc_manager.flags.pegging.suck>>
<</switch>>
<br><br>
As she speaks she continues her long thrusts, adding one finger at a time into your mouth until you are sucking her entire hand past the second knuckle, stretching your jaw almost as severely as she is stretching your ass.<br>
<br>
Effectively fucking you from either end simultaneously she continues like that for over a minute before removing her hand from your now-gaping mouth to grasp your hips and slam powerfully forward, hilting herself fully as her leather harness slams into your bare flesh.<br>
<br>
[<<moveTo "event_manager_pegging_12_cruel" "Persevere" 240>>]
</div>/*#
#desc: she gently pegs you, plays with your breasts and talks about how you stripped and looked at her
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Her full magnitude filling you once again she holds the position and reaches down to her harness to fiddle for a moment. In an instant your previously heavy eyes open as wide as dinner plates. Though her hips remain glued to yours to remain at depth her cock is suddenly moving. Not thrusting, it is, instead, vibrating deep inside you, the force of the rumbling motion rippling through your entire torso.<br>
<br>
"@@.npc_manager;See? Bigger AND better than just some man, you like that? Do not bother to answer, your face tells me everything I need to know, you do not just like it, you LOVE it you horny slut.@@"<br>
<br>
There is no denying her words, the pleasure is inescapable. You feel the vibrations of the massive dong along every centimeter of its length as it buzzes away, stimulating the VERY full length and breadth of your ass.<br>
<br>
<<switch $npc_manager.flags.pegging.looked_at>>
<<case "floor">>
Eyes half rolled back in your head you try not to look at your reflection in the ceiling, staring off past <<=ps(setup.getNpcName('npc_manager', 'formal'))>> shoulder only for her to gently cup your chin and point you towards her face.<br>
<br>
"@@.npc_manager;Look at me, sissy. Look and see how happy I am pegging my slave. Your embarrassment is adorable but you must not let it get in the way of your primary duty; service to your <<=setup.getNpcName('npc_manager', 'title')>>.@@"<br>
<br>
<<if $player.body.breastsize[0] > 0 >>
Reaching out with both hands she grabs holds of your breasts,
<<if $player.body.breastsize[0] >= 6>>
her fingers stretching to contain as much of your large tits as possible, squeezing and rubbing as she continues to gently thrust.<br>
<br>
"@@.npc_manager;Mmmm, your rack is coming along nicely indeed; big and lewd and sensitive, just like you.@@"<br>
<<elseif $player.body.breastsize[0] >= 3>>
her fingers perfectly containing your medium-sized tits. Groping and squeezing she gives your nipples a quick tweak.<br>
<br>
"@@.npc_manager;Such well-proportioned breasts, they complement your figure so well, and feel so nice...@@"<br>
<<else>>
her hands completely enveloping your mosquito-bite tits, focusing most of her attention on tweaking your pert nipples.<br>
<br>
"@@.npc_manager;So cute, a nice start to be sure, but I think you would look better bigger, nothing too extreme... though the sight of you with knockers the size of your head would certainly bring a smile to most faces, but something a little larger would really help give you that perfect feminine profile.@@"<br>
<</if>>
<<else>>
Reaching up with both hands as she balances in your ass she traces down your flat chest, settling on rolling the small buds of your nipples between her fingers as she gently fucks you.<br>
<br>
"@@.npc_manager;My, my, so sensitive. Still a little flat but we can fix to that, give you a nice attractive pair of sensitive tits that you, and everyone else who lays eyes on your delectable body, will just love.@@"<br>
<</if>>
<<case "eyes">>
You find your gaze drawn to her own, looking up at your <<=ps(setup.getNpcName('npc_manager', 'title'))>> smiling face, though you find yourself blushing and turning aside when she stares back.<br>
<br>
"@@.npc_manager;You are just too cute. Boldly staring at me then acting all bashful when you get caught! You know some Mistress' have to work to keep their slaves from just staring at their breasts but not you, your face is always adorably turned up! Though, speaking of breasts, lets see how yours are coming along.@@"<br>
<br>
<<if $player.body.breastsize[0] > 0 >>
Reaching out with both hands she grabs holds of your breasts,
<<if $player.body.breastsize[0] >= 6>>
her fingers stretching to contain as much of your large tits as possible, squeezing and rubbing as she continues to gently thrust.<br>
<br>
"@@.npc_manager;Mmmm, your rack is coming along nicely indeed; big and lewd and sensitive.@@"
<<elseif $player.body.breastsize[0] >= 3>>
her fingers perfectly containing your medium-sized tits. Groping and squeezing she gives your nipples a quick tweak.<br>
<br>
"@@.npc_manager;Such well-proportioned breasts, they complement your figure so well and feel so nice...@@"
<<else>>
her hands completely enveloping your mosquito-bite tits, focusing most of her attention on tweaking your pert nipples.<br>
<br>
"@@.npc_manager;So cute, a nice start to be sure, but I think you would look better bigger, nothing too extreme... though the sight of you with knockers the size of your head would certainly bring a smile to most faces, but something a little larger would really help give you that perfect feminine profile.@@"
<</if>>
<br><br>
"@@.npc_manager;You are so fortunate; I daresay any breasts of any size would look great on your frame, so feel free to stay as you are or go as large as you want.@@"<br>
<<else>>
Reaching up with both hands as she balances in your ass she traces down your flat chest, settling on rolling the small buds of your nipples between her fingers as she gently fucks you.<br>
<br>
"@@.npc_manager;My, my, so sensitive. Still a little flat but we can attend to that, give you a nice attractive pair of sensitive tits that you, and everyone else who lays eyes on your delectable body, will just love. After all, it is only proper that you have a rack to match this wonderful bottom you have been blessed with.@@"<br>
<</if>>
<<case "breasts">>
Trying to find a "safe" place to focus your gaze the combination of your <<=setup.getNpcName('npc_manager', 'title')>> looming over you and your lewd reflection beaming down from the mirror above makes such difficult. As your eyes flit about they can't help but focus once more on the shiny piercings adorning <<=ps(setup.getNpcName('npc_manager', 'formal'))>> nipples. Though your glance is brief, she notices, her smile widening like the proverbial cat who caught the canary.<br>
<br>
"@@.npc_manager;You naughty girl! You just cannot help staring at my breasts, can you?@@"<br>
<br>
<<if $player.body.breastsize[0] > 0 >>
Reaching out with both hands she grabs holds of your breasts,
<<if $player.body.breastsize[0] >= 6>>
her fingers stretching to contain as much of your large tits as possible, squeezing and rubbing as she continues to gently thrust.<br>
<br>
"@@.npc_manager;Mmmm, your rack is coming along nicely indeed; big and lewd and sensitive.@@"
<<elseif $player.body.breastsize[0] >= 3>>
her fingers perfectly containing your medium-sized tits. Groping and squeezing she gives your nipples a quick tweak.<br>
<br>
"@@.npc_manager;Such well-proportioned breasts, they complement your figure so well, and feel so nice...@@"
<<else>>
her hands completely enveloping your mosquito-bite tits, focusing most of her attention on tweaking your pert nipples.<br>
<br>
"@@.npc_manager;So cute, a nice start to be sure, but I think you would look better bigger, nothing too extreme... though the sight of you with knockers the size of your head would certainly bring a smile to most faces, but something a little larger would really help give you that perfect feminine profile.@@"
<</if>>
<br><br>
"@@.npc_manager;Judging by how you cannot keep your eyes off of mine I think you need a bit of an accessory as well... yes a nice pair of piercings would look just perfect on you... and be quite convenient to pull and play with as well.@@"<br>
<<else>>
Reaching up with both hands as she balances in your ass she traces down your flat chest, settling on rolling the small buds of your nipples between her fingers as she gently fucks you.<br>
<br>
"@@.npc_manager;My, my, so sensitive. Still a little flat but we can attend to that, give you a nice attractive pair of sensitive tits that you, and everyone else who lays eyes on your delectable body, will just love. And while those develop... well, a pair of piercings would meld form and function to make these cute nipples really pop.@@"<br>
<</if>>
<<default>>
ERROR! unknown looked_at style: <<=$npc_manager.flags.pegging.looked_at>>
<</switch>>
<br>
Giving your nipples a final flick her hands roam across the rest of your body. Following your ribs she traces the bound circuit running from your hips, along your thighs, back up your arms then down your sides once again.<br>
<br>
<<switch $npc_manager.flags.pegging.strip>>
<<case "fast">>
"@@.npc_manager;You look so good naked... though I think you could do with a bit more... decorum in getting to such a state. Enthusiasm is great but your stripping earlier... well, it lacked a certain something in the erotic department. Just because you are getting naked does not mean you should skip putting on a show in the process.@@"<br>
<<case "fast_lingerie">>
"@@.npc_manager;You look so good in lingerie... though I think you could do with a bit more... decorum in getting to such a state. Enthusiasm is great but your stripping earlier... well, it lacked a certain something in the erotic department. Just because you are getting naked does not mean you should skip putting on a show in the process.@@"<br>
<<case "sensuous">>
"@@.npc_manager;Anyone ever tell you that you look very cute naked? Because you do. And that strip tease... Mmmm, do you have a second job on the side? Because you could totally be a professional with skills like that.@@"<br>
<<case "sensuous_lingerie">>
"@@.npc_manager;Anyone ever tell you that you look very cute in lingerie? Because you do. And that strip tease... Mmmm, do you have a second job on the side? Because you could totally be a professional with skills like that.@@"<br>
<<default>>
ERROR! unknown strip style: <<=$npc_manager.flags.pegging.strip>>
<</switch>>
<br>
She continue to stroke your skin, her fingers setting off tiny fireworks as her cock rumbles and rocks inside your ass.<br>
<br>
The combination of it all is getting very intense, and she seems to sense it too, dialing back the vibrations to a teasing purr as she walks her fingers down your thighs towards your <<if setup.getItemTypeName("cage")=="">>rock hard <</if>><<getWordMyPenis $player>>.<br>
<br>
[<<moveTo "event_manager_pegging_13_good" "Savor this moment" 240>>]
</div>/*#
#desc: she neutrally pegs you, plays with your breasts and talks about how you stripped and looked at her
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> looks down at you calmly as you twitch and moan in your positioned fully impaled on her cock. One arm hooked under your thigh to keep you from scooting away she reaches for her hip with her other hand, manipulating an unseen controller until the cock filling your ass starts to vibrate.<br>
<br>
The sudden, strong vibrations rumbling through your body are as intense as they are inescapable. Calmly she watches you pant and twitch for several moments as she dials in the speed.<br>
<br>
"@@.npc_manager;You like that, slut? You like that your <<=ps(setup.getNpcName('npc_manager', 'title'))>> cock is bigger AND better than any man's?@@"<br>
<br>
Though you blush at her words, her taunts are somewhat dispassionate, her emotionless treatment of the intense feelings pounding in and vibrating through your body driving home your helpless servitude even more. Finally satisfied at the frequency of the intense waves of sensation pulsing through your body she angles her hips slightly to pin you down and reaches both hands towards your chest.<br>
<br>
Clenching your hands and arching your feet you twitch your head back and forth, exercising what minimal freedom of movement you have as you try to cope with the intensity of sensation flowing out from her cock.
<<switch $npc_manager.flags.pegging.looked_at>>
<<case "floor">>
Nearly overwhelmed your eyes are unfocused, looking up at the ceiling and your blurry reflection, barely noticing her black-gauntlet'd arms reaching out until her fingers
<<if $player.body.breastsize[0] > 0 >>
<<if $player.body.breastsize[0] >= 6>>
are digging into your large breasts.
<<elseif $player.body.breastsize[0] >= 3>>
are enveloping you breasts.
<<else>>
are pinching your small breasts.
<</if>>
<<else>>
are scraping over your bare chest.
<</if>>
Toying with your rock-hard nipples she pinches and tweaks until she has your rapt attention.<br>
<br>
"@@.npc_manager;Tsk, tsk, always looking away. Before it was alright. A downward looking, subservient slave is quite respectful, but now? You need to stay focused, this performance is not for my benefit... well, not JUST for me.@@"
<<case "eyes">>
Casting about like a drowning sailor you eyes fixate on her face. You focus on her lovely, yet neutral, expression until she notices the attention and her gaze overpowers and drills back into your skull.<br>
<br>
"@@.npc_manager;I hope you do not have any ideas that in meeting my gaze you are my equal. No, from the moment you first walked through my door you belonged at my feet, or under them. You may be taking your time to learn these facts but consider it an immutable law of the universe - you. are. MINE.@@"<br>
<br>
The momentary emotion of her blazing eyes dissipates swiftly, your thoughts just as rapidly distracted by her hands on your
<<if $player.body.breastsize[0] > 0 >>
breasts.
<<if $player.body.breastsize[0] >= 6>>
Rough and aggressive she squeezes your large tits, teasing your nipples and giving you a couple of slaps to set the fatty tissue jiggling.
<<elseif $player.body.breastsize[0] >= 3>>
Her hands envelop your breasts, pinching your nipples and digging her fingernails into your soft flesh.
<<else>>
Your small breasts are not lacking in sensation as she focuses her attentions on your pert nipples, pinching and pulling and rolling them between her fingers.
<</if>>
<<else>>
Her hands seek out your nipples like heat-seeking missiles, tweaking your small buds and rolling them back and forth between her fingers.
<</if>>
All throughout the vibrations in your ass continue to build, blunting the pain in your chest and twisting it into something intense somewhere between agony and ecstasy.
<<case "breasts">>
Your eyes flitting back and forth until, once again, they end up focusing on the gleaming shields piercing and surrounding her nipples. Almost instantly she notices your attention, a slight smile flicking over her lips as she harshly pinches your nipples.<br>
<br>
"@@.npc_manager;Ogling me again? You horny slut, you definitely need some piercings of your own for
<<if $player.body.breastsize[0] > 0 >>
<<if $player.body.breastsize[0] >= 6>>
those huge bitch tits of yours.
<<elseif $player.body.breastsize[0] >= 3>>
your sexy rack, and maybe a few more cup sizes while we are at it if you are so obsessed with breasts.
<<else>>
these cute breasts. While we are at it perhaps we should address your size. These are far too small for a sissy slut like yourself - it should be a challenge for a man to choose between staring at your tits and your ass and with a back-end like yours, well... you need an upstairs to match.
<</if>>
<<else>>
those cute nipples. And probably some breasts as well. I know some like the innocent flat-chested look but I think a sissy needs some curves and as nice as your hips are, well... your upstairs is definitely in need of an expansive remodel.
<</if>>
@@"
<<default>>
ERROR! unknown looked_at style: <<=$npc_manager.flags.pegging.looked_at>>
<</switch>>
<br><br>
She reaches for the controls again and your heart almost stops. Whether you want her to crank things up or turn them off you couldn't say but what she actually does comes as a shock... literally. You almost jump into the air at the painful electric shock that is unleashed deep inside your rear. The muscles of your ass clench in response, tightly gripping your thick intruder and causing the still-running vibrations to feel even more intense.<br>
<br>
"@@.npc_manager;Bigger, better, and MUCH more versatile.@@" She states as she eases the shocks down from their initial power. Still painful it is not quite as intense, a mere jolt every few seconds that serves to have you attentive and rhythmically clenching without having you to try to jump or jerk off the desk.<br>
<br>
It is all you can do to stay focused, nodding and twitching as her hands start to roam. Alternating between clawing and caressing she plays your flesh like an instrument, even her gentlest touch intense in a way you cannot put into words.<br>
<br>
<<switch $npc_manager.flags.pegging.strip>>
<<case "fast">>
"@@.npc_manager;As... ambivalent as I may be about your behaviour today I have to say... you look quite wonderful naked. Do not take that as instruction, however, the proper clothing, hinting and framing rather than merely displaying... well that can be so much more that just flesh. The same goes for shedding your clothing, fast is good, but slow...@@" augmenting her words she tweaks the controls yet again, dialing the vibrations down to a slow, powerful thrumming that rumbles through your whole body, while the shocks are timed perfectly to have you clenching down in between shuddering pulses. "@@.npc_manager;Well, slow... can be divine.@@"<br>
<<case "fast_lingerie">>
"@@.npc_manager;As... ambivalent as I may be about your behaviour today I have to say... you look quite wonderful in lingerie. The proper clothing, hinting and framing rather than merely displaying... well that can be so much more that just flesh. The same goes for shedding your clothing, fast is good, but slow...@@" augmenting her words she tweaks the controls yet again, dialing the vibrations down to a slow, powerful thrumming that rumbles through your whole body, while the shocks are timed perfectly to have you clenching down in between shuddering pulses. "@@.npc_manager;Well, slow... can be divine.@@"<br>
<<case "sensuous" "sensuous_lingerie">>
"@@.npc_manager;In the interest of education I should mention that your little strip performance? Excellent, if you had only been that good throughout, well... perhaps you could have evaded these painful shocks - but chin up, all this clenching will do wonders for your glutes!@@"<br>
<<default>>
ERROR! unknown strip style: <<=$npc_manager.flags.pegging.strip>>
<</switch>>
<br>
She lets you stew in the mix of shocks and vibrations for another half a minute before finally silencing her cock. Stroking your quivering thighs her hand slides down your leg towards your <<if setup.getItemTypeName("cage")=="">>rock hard <</if>><<getWordMyPenis $player>>.<br>
<br>
[<<moveTo "event_manager_pegging_13_neutral" "Try to recover for what's next" 180>>]
</div>/*#
#desc: she cruelly pegs you, plays with your breasts and talks about how you stripped and looked at her
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the "cruel" path your chastity cage remains in place */
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> looks haughtily down, holding you with one arm hooking your thigh while her other reaches towards her hip. A moment later you jump, but her firm grip keeps her cock from slipping out, her leather harness pressed against you as you pant and try to recover from the electric shock that just speared deep into your ass.<br>
<br>
"@@.npc_manager;Not just bigger than a man, but more... feature-packed as well.@@" She rolls her hips slightly to emphasis how full you are as another, though weaker shock causes your muscles to clamp tightly around your intruder. You whimper as she moves her hand away from the controls, another shock telling you that their rhythmic, painful stimulation is your new normal.<br>
<br>
The clenching spurred by the shocks has her very securely fixed in your ass and she takes advantage to release her grasp on your legs and reach towards your chest with both hands.
<<switch $npc_manager.flags.pegging.looked_at>>
<<case "floor">>
<<if $player.body.breastsize[0] > 0 >>
Grabbing your breasts firmly she establishes herself by digging her nails into your flesh, clawing inward before tugging on your hard nipples.<br>
<br>
<<if $player.body.breastsize[0] >= 6>>
"@@.npc_manager;Look at me, sissy.@@"" She commands, giving one breast a loud slap before resuming toying with your nipples.<br>
<<elseif $player.body.breastsize[0] >= 3>>
"@@.npc_manager;This is what naughty sissy's get. Next time I may hook your tits up to the electricity as well, see if we can shock some obedience into you.@@"<br>
<<else>>
"@@.npc_manager;It is a pity your breasts are so small. disappointing, just like your little dicklet, but we will attend to them both in the proper way soon enough.@@"<br>
<</if>>
<br>
"@@.npc_manager;No, do not divert your sight, looking at the floor cannot save you, not earlier, and not now. Gaze upon your <<=setup.getNpcName('npc_manager', 'title')>>, worship her with your eyes and do not look away unless I command it.@@"<br>
<<else>>
She tugs hard enough to form little cones of flesh on your otherwise flat chest, teasing your lack of breasts as she painfully torments your ass and nips.<br>
<br>
"@@.npc_manager;Look at this! embarrassing! A sissy needs curves, I do not care how nice your hips are you need something up top to match!@@"<br>
<</if>>
<<case "eyes">>
<<if $player.body.breastsize[0] > 0 >>
She grabs your breasts with both hands, squeezing your
<<if $player.body.breastsize[0] >= 6>>
large
<<elseif $player.body.breastsize[0] >= 3>>
medium
<<else>>
small
<</if>>
breasts, scratching your soft skin before settling in to cruelly pinch your nipples.<br>
<br>
<<else>>
Her hands like pinchers she goes straight for your small nipples, pinching and twisting with gusto.<br>
<</if>>
<br><br>
"@@.npc_manager;Still trying to meet my gaze, sissy? While you have very cute eyes do not thing for a single second that such temerity means we are on anything like equal planes. You are the slave, I am the owner, now and forever.@@"
<<case "breasts">>
<<if $player.body.breastsize[0] > 0 >>
Gasping and whimpering with each jolt coursing into your rear you look up in hopes of mercy.<br>
<br>
"@@.npc_manager;Oh, NOW you remember where my eyes are? Do I need to electrify your sissy rear hole all the time to keep you from staring at my nipple rings? Ooohhh, or maybe you need a pair of nipple adornments of you own - electrified, of course.@@"<br>
<br>
<<if $player.body.breastsize[0] >= 6>>
She grabs your large breasts, her fingers digging into the sides and then scraping up until all she is holding are your hard nipples, pulling them painfully away from your body as she squeezes them tight.<br>
<br>
"@@.npc_manager;Yes, these big bitch-tits would look MUCH better with some steel adornments. Keep behaving like you have today and I will be sure to make them nice and heavy and harsh.@@""
<<elseif $player.body.breastsize[0] >= 3>>
She gropes your moderate breasts, giving them each a couple slaps before focusing on your nipples, squeezing them tight between her fingers and giving them a little twist.<br>
<br>
"@@.npc_manager;I quite like how your breasts have developed, perky, but not too small. They fit so nicely in my hands, but they would DEFINITELY look better with a nice set of piercings, maybe if you have your own you will not be so intent on staring at mine.@@"
<<else>>
Laying on your back makes your already small breasts practically disappear but <<=setup.getNpcName('npc_manager', 'formal')>> seems more focused on your hard nipples anyway, giving them each a couple flicks before pinching and twisting them.<br>
<br>
"@@.npc_manager;A bit of advice, if you expect to get away with this whole "naughty girl" routine it would behoove you to have a proper set of tits to flash. Of course that sort of thing will not get you out of trouble with me... but others, and thinking of it my secretary really should have some more... enticing cleavage. Maybe I can dangle weights off a set of nipple rings to help encourage you to develop.@@"
<</if>>
<<else>>
Running her hands over your flat chest she focuses in on your small, sensitive nipples, squeezing and pinching them in time to the electric shocks pulsing in your ass.<br>
<br>
"@@.npc_manager;You know some slaves only act out out of jealousy. Is that what is going on here? You were staring so hard at my nipple shields, were you overcome with jealousy of my breasts and jewelry? Certainly you have reason given your poor flat-chested state, but you ought to know better than to take those things out on me - even with todays disobedience I am sure you will have a nice womanly figure soon enough.@@"
<</if>>
<<default>>
ERROR! unknown looked_at style: <<=$npc_manager.flags.pegging.looked_at>>
<</switch>>
<br><br>
You whimper in pain as she removes her hands from your chest and re-asserts her control of your legs, spreading them a little wider as she shifts inside of you.
<br>
You are starting to adjust to the electric shocks stimulating your rear, but then she fiddles with the controls again. Her hips still pressed against your own her cock starts moving, vibrating deep inside you, your electricity-induced clenching causing the rumbling to shake your entire body.<br>
<br>
"@@.npc_manager;As I said, bigger, better and more versatile than any so-called "real" cock.@@" You moan, the pleasurable vibrations only making you more sensitive to the painful shocks, which cause you to clench and accentuate the vibrations. It is an evil feedback loop that has you quivering and gasping with her still buried inside of you.<br>
<br>
"@@.npc_manager;Ooooh, look at those goose-bumps, is this too intense for you, sissy?@@"<br>
<br>
Even if you could manage to form a response she seems disinterested in hearing it, instead clawing her hands over your skin, not quite scratching hard enough to bleed, but enough to leaving pink trails across your pale flesh.<br>
<br>
<<switch $npc_manager.flags.pegging.strip>>
<<case "fast">>
"@@.npc_manager;I do so love your naked body, and look forward to it continuing to... improve. As that happens you should also work on presenting it better - obeying my instructions is all well and good but imagine how much better you would have looked if you had put a bit of sensuous thought into removing your clothes instead of shedding them in an instant like it was a race.@@"
<<case "sensuous">>
"@@.npc_manager;Hmm, you look quite adorable all naked and exposed... I cannot help recalling how you got like this, the beauty of how you stripped only bringing into sharper contrast your more generalized misbehaviour.@@"
<<case "fast_lingerie">>
"@@.npc_manager;I do so love your body, and look forward to it continuing to... improve. As that happens you should also work on presenting it better - obeying my instructions is all well and good but imagine how much better you would have looked if you had put a bit of sensuous thought into removing your clothes instead of shedding them in an instant like it was a race.@@"
<<case "sensuous_lingerie">>
"@@.npc_manager;Hmm, you look quite adorable all exposed... I cannot help recalling how you got like this, the beauty of how you stripped only bringing into sharper contrast your more generalized misbehaviour.@@"
<<default>>
ERROR! unknown strip style: <<=$npc_manager.flags.pegging.strip>>
<</switch>>
<br><br>
She turns up the shocks and vibrations, causing you to cry out and arch your back. Your hips rise off the desk but she stays with you, her cock never retreating from filling your hole, holding you in the air as you twitch and buck with each painful shock.<br>
<br>
[<<moveTo "event_manager_pegging_13_cruel" "Suffer" 180>>]
</div>/*#
#desc: she gently pegs you, comments on collar and plays with your cage/penis until you climax
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.timebased.horny = 0>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.flags.pegging.chastity>>
<<case "nooffer">>
ERROR! unexpected chastity style, nooffer is not possible on "good" path
<<case "remove">>
Your <<getWordMyPenis $player>> has been rock hard throughout her pegging but now she finally touches you, the mere brush of her fingers like heaven. You moan in arousal, so close to orgasm and yet a part of you holds back, not wanting it to end yet.<br>
<br>
She notices your plight, smiling down and stroking with one hand as she reaches for the controls at her hip. "@@.npc_manager;This getting a bit intense? Here, let me take the edge off. You have more than earned an orgasm but I am not ready for you to cum QUITE yet.@@"<br>
<br>
Even with the "help" of the snug cockring you do not see how holding back is possible... and then the electricity lances deep into your ass. You jump in surprise, letting out a gasp of pain as she coos and strokes your cock. "@@.npc_manager;Shhh, shhh, I know it hurts, but it is the only way to keep things going, you can be brave for your <<=setup.getNpcName('npc_manager', 'title')>>, right?@@"<br>
<br>
<<if setup.getTotalValue("bdsm") >= 10>>
Though it does succeed in pushing back your orgasm the painful jolt turns you on more, especially when it starts to repeat at a lower power.
<<else>>
The pain of the shock slams through your body, causing you to tense every muscle you have... though your <<getWordMyPenis $player>> remains hard throughout, twitching in time as milder shocks continue to spear your ass.
<</if>>
<br>
The shocks are rhythmic now. Not as potent as the first one, but enough to have your ass pulsing and clenching around its still-buzzing intruder and making everything more intense.<br>
<br>
"@@.npc_manager;There, isn't that better? You feel so sensitive, so delicate... so beautiful...@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
Still trembling you nod obediently, relishing her total control on you from within and without.<br>
<<else>>
You whimper, completely helpless and under her control.<br>
<</if>>
<<case "focused" "dickless">>
She massages your balls and caresses you through your cage. Though the hard plastic makes such impossible you imagine you can feel her on your imprisoned <<getWordMyPenis $player>>, straining with all its might to fill its chamber.<br>
<br>
"@@.npc_manager;Look at that, so tiny, so useless, so beautiful... you look about ready to burst... let me help with that.@@"<br>
<br>
You don't have time to figure out what she means, too distracted by her mere presence, not to mention the buzzing torpedo in your ass. Like a lightning rod her cock pulses electricity deep inside of you, the painful jolt causing your eyes to open wide as you look up at her in shocked fear.<br>
<br>
<<if setup.getTotalValue("bdsm") >= 10>>
Though it does succeed in pushing back your orgasm the painful jolt turns you on more, especially when it starts to repeat at a lower power.
<<else>>
The pain of the shock slams through your body, causing you to tense every muscle you have... though your <<getWordMyPenis $player>> remains hard throughout, twitching in time as milder shock continue to spear your ass.
<</if>>
<br>
"@@.npc_manager;Hush, hush little sissy...@@", she comforts you, stroking your face as she dials back the power until the infrequent shocks mainly cause your muscles to rhythmically tighten around your intruder rather than be painful.<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
You smile back up, wanting to re-assure her that you can take it... for her.<br>
<<else>>
You whimper, completely helpless and under her control, trembling in time with the rumbling in your ass.<br>
<</if>>
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<br>
Buzzing, jolting and stroking she pushes things even further by slowly rocking her hips, making you feel like a puppet, a cocksleeve, a living onahole wrapped around her cock.<br>
<br>
<<switch $npc_manager.flags.pegging.collar>>
<<case "none">>
ERROR! "good" path should be offered collar
<<case "refuse">>
Her hand caresses your neck, not squeezing, more exploring, as if expecting to find something there to grab...<br>
<br>
You stare up as she thrusts into you, the look in her eye making you feel very, very owned.<br>
<br>
"@@.npc_manager;That's a good girl, now cum, cum for me hard...@@"
<<case "sissy" "her_sissy">>
Smiling down at you as your body is overloaded with pleasure she runs her fingertips across your collar. Looking up at your reflection in the ceiling you watch her trace the letters of SISSY and somehow moan out a single word in response - "yours." <br>
<br>
Her smile of approval blossoms into a wide grind of utter adoration.<br>
<br>
"@@.npc_manager;Yes you are. My wonderful SISSY secretary. Now, sissy, cum for your <<=setup.getNpcName('npc_manager', 'title')>>, cum for me good.@@"
<<case "slave" "her_slave">>
Reaching down she hooks a finger through the ring of your collar, tugging possessively as she thrusts in and out of you. The reminder of the <<if $npc_manager.flags.pegging.collar == "her_slave">>locked-on <</if>>signifier of your submission and ownership rockets you deep into sub-space, your voice a soft hoarse whisper. "I love you, <<=setup.getNpcName('npc_manager', 'title')>>." <br>
<br>
"@@.npc_manager;I know. Now show it without words, cum for me, cum for me hard.@@"
<<default>>
ERROR! unknown collar style: <<=$npc_manager.flags.pegging.collar>>
<</switch>>
<br><br>
<<switch $npc_manager.flags.pegging.chastity>>
<<case "nooffer" "focused" "dickless">>
You gasp and pant, your <<getWordMyPenis $player>> straining against its cage but the sensations running through your ass, drumming and shocking through your prostate is too much. With a moan you start to leak, your caged cock dribbling and spurting into her hand as she continues to rock and thrust, arching her hips to scrape your prostate until every drop of sissy juices has been pressed out of your balls in an extended analgasm.
<<case "remove">>
As she fucks, vibes and shocks your ass she also strokes your <<getWordMyPenis $player>>. Straining against everything, from the ropes to your cockring the cacophony of stimulation is finally too much and you explode. With the force your balls expel their payload you imagine you could have well hit the ceiling, but instead all of it is caught in her hand as she wraps her palm over your head, rubbing in gentle circles as you pulse and spurt.
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<br><br>
[<<moveTo "event_manager_pegging_14_good" "Bask in the afterglow" 180>>]
</div>/*#
#desc: she neutrally pegs you, comments on collar and plays with your cage/penis until you climax
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.timebased.horny = 0>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Cock buzzing and jolting in your ass her hands wrap around your
<<switch $npc_manager.flags.pegging.chastity>>
<<case "remove">>
rock-hard <<getWordMyPenis $player>>. You moan in lust, almost cumming at the first touch only for her to frown and withdraw her hand. She makes no comment, merely reaching to her side and turning up the power and frequency of the shocks jolting your ass. The resulting pain takes the edge off of your arousal as she resumes stroking you with a firm grip.
<<case "focused" "dickless" "nooffer">>
<<getWordMyPenis $player>>. Her hands gently massaging your balls makes a strange, gently counterpoint to the fierce, buzzing, shocking, fucking happening mere inches away.
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<br><br>
<<switch $npc_manager.flags.pegging.collar>>
<<case "none">>
Her hand drifts to your throat, not choking you but... very possessive and you tremble.<br>
<br>
"@@.npc_manager;That's right, take it, feel me inside of you... hmm, but I am almost regretting that I did not collar you before this, though I doubt you'll be forgetting who owns you any time soon....@@"
<<case "refuse">>
Her hand possessively wraps firmly around your throat. Not enough to choke but with a firm, inescapable possessiveness that is quite a distraction.<br>
<br>
"@@.npc_manager;Take it, you slut. You could not even behave well enough to earn a collar... unworthy even of being a slave... Oh I have so much more work to do with you...@@"
<<case "sissy" "her_sissy">>
A hand still wrapped around what once passed for your manhood she gently strokes with one hand while reaching out with the other. Tenderly she caresses the pink collar that stands in stark contrast to you having any masculinity remaining.<br>
<br>
"@@.npc_manager;So cute... if only your behaviour was as consistently adorable as your appearance.... Still, it is time. Look up, admire your sissy self... and cum for me.@@"
<<case "slave" "her_slave">>
Reaching out with her free hand she takes hold of your collar, roughly pulling you forward, sandwiching your body between the impaling cock below and the neck-wrapping collar above.<br>
<br>
"@@.npc_manager;Now, be a good slave, look up, glory in your submission, resolve to earn my collar properly, and cum!@@"<br>
<<default>>
ERROR! unknown collar style: <<=$npc_manager.flags.pegging.collar>>
<</switch>>
<br><br>
The vibrations and shocks in your ass accelerate, pushing you off a cliff of overwhelming sensation.
<<switch $npc_manager.flags.pegging.chastity>>
<<case "nooffer" "focused" "dickless">>
Your <<getWordMyPenis $player>> pulses and shudders inside its cage, finally spurting and leaking, your position causing the frothy semen to trickle out the sides and pool on your flat tummy.
<<case "remove">>
Looking up at your reflection you cum, hard. Directed by her hand you spurt all over your own chest, long, ropey strands of semen going as high as your chin, a fireworks-like volcano of cream painted across your bare skin, all while you watch through the mirror above.
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<br><br>
Panting you can only lie there, covered in your own cum, waiting for her to untie your limbs.<br>
<br>
[<<moveTo "event_manager_pegging_14_neutral" "Catch your breath" 180>>]
</div>/*#
#desc: she aggressively pegs you, plays with your cage/penis until you climax
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the "cruel" path your chastity cage remains in place */
<<if $roomchange == true>>
<<set $player.timebased.horny = 0>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Your hips are already in the air, half your weight suspended on her impaling cock when she grabs you and drags you off the desk. Bound as you are there is nothing you can do to stop from falling. Only her strong grip on your hips keeping your head from hitting the ground as she backs up.<br>
<br>
For a breathless moment you are fully airborne, your ass clenching onto her cock for dear life as she lowers your shoulders to the ground and stacks you vertically.<br>
<br>
"@@.npc_manager;This is how naughty sluts get fucked. Piledriven right into the ground.@@" She cruelly intones as she starts to plunge down into you with partial squats, her cock vibrating you in half and shocking you mercilessly with each deep thrust.<br>
<br>
<<switch $npc_manager.flags.pegging.chastity>>
<<case "nooffer">>
You gasp and cry out at the savage pegging, but she looks down at you with neither mercy nor pity, her cock plunging deep into you with every stroke.
<<case "remove" "focused" "dickless">>
ERROR! unexpected chastity style, "cruel" path does not give option for removal
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<br><br>
Stacked uncomfortably, your ass ravaged like never before you
<<if setup.getTotalValue("bdsm") > 10>>
discover new depths of submission. Surrendering completely to your helpless abuse the pain turns to pleasure. Each cruel thrust is a gift, the painful pegging not what you want, but what you desperately need.
<<else>>
can do nothing but survive, taking gasping breaths as your caged <<getWordMyPenis $player>> betrays you.
<</if>>
<br><br>
Your <<getWordMyPenis $player>> strains with excitement against its prison as your body shifts and her thrusts begin brutally stimulating your prostate. Overwhelmed, you let out a primal cry.<br>
<br>
From within its cage your <<getWordMyPenis $player>> starts to leak, dripping and spurting to shower down onto your face, humiliating you further with the liquid evidence of how much you are enjoying her treatment.<br>
<br>
<<switch $npc_manager.flags.pegging.collar>>
<<case "none" "refuse">>
Her hand reaching down to wrap your throat reminds you of the collar you were denied. Your vision flickers as you gasp for air, your open mouth greeted with drops of your sissy cum as she plunges into you like she was pumping a well, not stopping until every last drop your balls had produced has been spilled across your face.
<<case "sissy" "her_sissy" "slave" "her_slave">>
ERROR! collar not granted on "cruel" path, style: <<=$npc_manager.flags.pegging.collar>> unexpected
<<default>>
ERROR! unknown collar style: <<=$npc_manager.flags.pegging.collar>>
<</switch>>
<br><br>
Rising to her feet her cock slides out of your ass. Your exhausted body crumples to the floor without its supportive impalement.<br>
<br>
Looking down at your almost broken form she turns off her vibrating cock and looms over you.<br>
<br>
[<<moveTo "event_manager_pegging_14_cruel" "Survive" 180>>]
</div>
/* aftercare *//*#
#desc: loving pegging aftercare
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $npc_manager.flags.pegging.collar == "her_sissy" || $npc_manager.flags.pegging.collar == "sissy">>
<<removeItem $player $now 'choker_sissy' true>>
<<deleteItem $player $now 'choker_sissy'>>
<</if>>
<<addItem "remote_control_plug">>
<<wearItem $player $now "remote_control_plug" true>>
<<if $npc_manager.flags.pegging.chastity == "remove">>
<<wearItem $player $now $scene.cage true>>
<<manipulateItem $player $now $scene.cage "lock" false>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
As you quiver in post-orgasmic bliss you feel the cock in your ass finally fall still, the shocks stopping and your muscles relaxing enough for her to slowly, gently, withdraw.<br>
<br>
You are empty for but a moment when you feel something else slip into your still-gaping hole. Squeezing down as your ass reflexively sucks it in you do not recognise its shape. Smaller and shorter than her cock it is still larger than any of your previous plugs, though not uncomfortably so in your well-stretched rear.<br>
<br>
"@@.npc_manager;A little... well, not exactly little, gift for my wonderful employee. Though not nearly as big this one it's similar to my dildo in that it can vibrate or shock, all controlled wirelessly, and passively drawing power from your own body heat so it never even needs charging.@@"<br>
<br>
The realization that she can stimulate your rear anywhere, at any time is a bit scary but also... exciting? Fortunately for your well-used butt she does not test it, the plug remaining still and un-electrified, merely keeping you distractingly filled.<br>
<br>
Having caught every drop of cum that <<if $npc_manager.flags.pegging.chastity == "remove">>spurted<<else>>dribbled<</if>> out of your <<getWordMyPenis $player>> she brings her hand to your lips.<br>
<br>
<<if setup.getTotalValue("cum") >= 15>>
Ravenously you slurp up every drop, your eyes rolling back in ecstatic joy at this delicious finish to an already overwhelming experience.
<<elseif setup.getTotalValue("cum") >= 10>>
You eagerly lap up your seed, savoring your tasty emission.
<<elseif setup.getTotalValue("cum") >= 5>>
Obediently you lick her hand clean, trying to ignore the salty flavour of the viscous material.
<<else>>
Reluctantly you lick it up, wincing slightly at the bitter taste but obediently cleaning her palm and fingers of all that you stained her with.
<</if>>
Reaching to either side she quickly unties your bound wrists and thighs, gently lowering your legs before lifting you up and carrying you over to the couch.<br>
<br>
Snuggling against her chest you marvel at her casual strength - though, to be fair, you do not exactly weigh all that much. Gently placing you down on a cushion she sits next to you, letting you curl up against her side as she strokes your back and brings you back to reality.<br>
<br>
The fog of orgasm slowly fading
<<if setup.getTotalValue("submission") >= 15>>
the first thing you do is kiss her gently on the cheek, softly whispering your gratitude.
<<elseif setup.getTotalValue("submission") >= 10>>
you thank her for the intense experience.
<<elseif setup.getTotalValue("submission") >= 5>>
you try to recover from the overwhelming experience. Even though you say nothing, you are glad that she is here beside you.
<<else>>
you try to process the overwhelming feelings you have just endured, the intensity of the experience definitely means something for your relationship with your manager but what... you are unsure.
<</if>>
<br><br>
Many minutes pass before, sensing your recovery, she gently helps you back to your feet.<br>
<br>
<<if $npc_manager.flags.pegging.chastity == "dickless">>
Leaving you standing she walks back to her desk, returning holding a small box and kneeling before you.<br>
<br>
[<<moveTo "event_manager_pegging_14a_smallchastity" "Look down">>]
/%e elseif $npc_manager.flags.pegging.chastity == "focused" TODOfuture - this would be a great place for an "upgrade" to the Sissy-o-matic 9001, but save such for later content patch%/
<<else>>
<<if $npc_manager.flags.pegging.chastity == "remove">>
Quickly digging through your things she kneels before you holding your chastity cage. Giving your exhausted member a tender kiss she quickly locks it back in its safe, protective home.
<<else>>
She gives your caged member a soft squeeze, smiling at your securely locked condition.
<</if>>
<br><br>
You walk over to your pile of discarded clothes and she helps you dress, handing you each piece in turn and smiling at you as blush and put it on.<br>
<br>
By the end your heart is racing again, and you try not to look down at her cock, still wet with lube.<br>
<br>
<<if $npc_manager.flags.pegging.collar == "her_sissy" || $npc_manager.flags.pegging.collar == "sissy">>
You are ready to depart when she smiles shakes her head in amusement before gesturing towards your neck.<br>
<br>
"@@.npc_manager;As cute as you look with that choker, well... I think you ought to leave it here.@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 15>>
Somewhat reluctantly you agree, and she gently removes it but gives you a peck on the cheek in exchange.
<<else>>
She unclasps the choker and removes it from your neck, giving you a tiny peck on the cheek in exchange.<br>
<</if>>
<</if>>
<br><br>
Still floating on a high after the intense pegging you prepare to depart only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue" 120 "<<useClothSetPop 'pegging' $player $now>>">>]
<</if>>
</div>/*#
#desc: dismissive pegging aftercare
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<addItem "remote_control_plug">>
<<wearItem $player $now "remote_control_plug" true>>
<<if $npc_manager.flags.pegging.chastity == "remove">>
<<wearItem $player $now $scene.cage true>>
<<manipulateItem $player $now _cage "lock" false>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
She waits until your balls have finished emptying themselves before finally disabling the vibrations and shocks and pulling her cock out of your ass.<br>
<br>
You let out a gasp as the thick head spreads you just that little bit more on the way out
<<if $scene.plug != "">>
before you can react to your newfound emptiness she jams your plug back into your hole. It feels small and lifeless compared to her member, but your ass reflexively sucks in its old friend all the same.
<<else>>
still gaping from use you can feel a trickle of lube leak out through your abused hole as it slowly recovers enough to close itself up.
<</if>>
<br><br>
As you lie there staring up at your reflection she unties your limbs, your arms and legs falling limp in exhaustion. You hear her sigh and shake her head, running her hand over your chest to mop up your spilled seed. Rather than throwing it out, however, she wipes it across your face, your tongue catching a quick taste of
<<if setup.getTotalValue("cum") >= 15>>
your delectable sissy-juice
<<elseif setup.getTotalValue("cum") >= 10>>
your delicious emission
<<elseif setup.getTotalValue("cum") >= 5>>
your salty secretion
<<else>>
the bitter nastiness
<</if>>
while the bulk of it starts to dry on your face.<br>
<br>
"@@.npc_manager;Leave it there.@@" She orders as you start to reach up to wipe it off. "@@.npc_manager;You earned that marking, with your mix of obedience and defiance, and you can wear your shame home on your face.@@"<br>
<br>
"@@.npc_manager;Speaking of earning, there is a little... well, maybe not so little, something else I have for you.@@"<br>
<br>
You watch as she produces a sizable butt plug, barely giving you a chance to look at it before stuffing it into your worn hole. "@@.npc_manager;This should help keep you in line going forward. It is capable of punishing shocks and rewarding vibrations and I expect you to have its ilk inside of you as part of your uniform so I can administer whichever you deserve at the push of a button.@@"<br>
<br>
<<if $npc_manager.flags.pegging.chastity == "dickless">>
Leaving you standing she walks back to her desk, returning holding a small box and kneeling before you.<br>
<br>
[<<moveTo "event_manager_pegging_14a_smallchastity" "Look down">>]
<<elseif $npc_manager.flags.pegging.chastity == "remove">>
Quickly digging through your things she swiftly locates your chastity cage. Still on your back you watch in the ceiling mirror as, with quick efficiency, she locks you away in your private pink prison.<br>
<br>
You blush, but remain silent before staggering to your feet and dressing under her watchful, but disinterested gaze.<br>
<br>
Barely having enough energy to stand you stagger towards the door only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue" 15*60 "<<useClothSetPop 'pegging' $player $now>>">>]
<<else>>
Your cage having remained in place through your entire experience she merely points towards your pile of clothes for you to get dressed.<br>
<br>
You blush, but remain silent before staggering to your feet and dressing under her watchful, but disinterested gaze.<br>
<br>
Barely having enough energy to stand you stagger towards the door only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue" 15*60 "<<useClothSetPop 'pegging' $player $now>>">>]
<</if>>
</div>/*#
#desc: cruel pegging aftercare, puts you in electrified chastity device (no key) and remote control plug
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the "cruel" path your chastity cage remained in place */
<<if $roomchange == true>>
<<if setup.getItemFromType("cage") != "">>
<<set _cage = setup.getItemFromType("cage")>>
<<manipulateItem $player $now _cage "lock" false>>
<<removeItem $player $now _cage true>>
<</if>>
<<if setup.getItemFromType("plug") != "">>
<<set _plug = setup.getItemFromType("plug")>>
<<removeItem $player $now _plug true>>
<</if>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing $player $now true>>
<<addItem "remote_control_plug">>
<<wearItem $player $now "remote_control_plug" true>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<addItem "electric_chastity">>
<<wearItem $player $now "electric_chastity" true>>
<<manipulateItem $player $now "electric_chastity" "lock" false>>
<<useClothSetPop 'tmp' $player $now>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Wow, I did not expect you to enjoy it that much, not that I cared given all the trouble you just gave me but... Colour me impressed. I did not think you were that much of a broken whore, yet.@@"<br>
<br>
Still bound you can't do anything but stare up at her in a mix of fear and... aroused confirmation of her assessment.<br>
<br>
Walking away she disappears out of your line of sight, fetching something from her desk before returning, the key to your cage held in one hand.<br>
<br>
Sitting down between her legs she starts by shoving a plug into your still-gaping asshole. Despite being larger than any of your previous companions you are currently so well-used and stretched it enters with ease, your ass somehow having the strength to suck it in and lock it down as you adjust to its filling presence.<br>
<br>
"@@.npc_manager;What a butt-slut.@@" She remarks. "@@.npc_manager;Anyway, that plug has many of the same features as my cock. Wirelessly controlled it charges itself off your body heat and can administer punishing shocks on command. It can also vibrate pleasantly but you will need to shape up fast if you expect to receive such a reward. Consider it a gift - wear it when you are ready for me to administer swift and fair corrective measures; if I am forced to get more... creative with my punishments well...@@" Her smile tells you everything you need to know.<br>
<br>
While you try to comprehend the implications of her words, and the new plug, she unlocks your cage and casually tosses it onto the pile of your clothes.<br>
<br>
Still drained and flaccid from your intense orgasm your <<getWordMyPenis $player>> has no chance to react to her touch before being introduced to a new chastity device.<br>
<br>
At first it seems not dissimilar to your previous device; merely constructed of shiny steel rather than pink plastic it certainly looks more intimidating... and the cold metal causes you to shiver at first touch. Other than being a bit heavier, and with a thicker cockring around your shaft and balls it seems more or less the same as your previous device.<br>
<br>
The cage has yet to even finish warming to your body when you discover how wrong your initial assessment was. <<=setup.getNpcName('npc_manager', 'formal')>> produces a narrow, curved metal tube, rubbing it with a thin lubricant before lining up the blunted tip with the hole at the end of your chastity device.<br>
<br>
You watch in wide-eyed horror as she guides the tip into your urethra, the curved angle precisely following the shape of the tube.<br>
<br>
The sensation of the rod steadily sliding into your <<getWordMyPenis $player>> is like nothing you have felt before. Not painful, technically, it is an intimate penetration that feels both emasculating and violating. Eventually the full length of the rod disappears and she affixes it to the end of your chastity tube by screwing it in place. A tiny lock through the screw locks it in, joined by a larger lock for the main cage rendering you totally and utterly restrained.<br>
<br>
"@@.npc_manager;There, servitude is like prison - misbehave and you get moved to a more secure cell. And one final note - just like your plug that urethral rod can administer electric shocks... Hmm, I suppose a demonstration would be better, show, don't tell, and all that?@@"<br>
<br>
Before you can object she whips out her phone, tapping a couple times before your <<getWordMyPenis $player>> is on fire with pain. Though it lasts a fraction of a second it hurts more than the time back in school when you took a baseball straight to the crotch. Your entire body tenses in pain at the electricity running through the very core of your <<getWordMyPenis $player>>.<br>
<br>
"@@.npc_manager;Well, that seems sufficient - note that was a mere medium shock, I can do far worse if you continue to misbehave. I suppose it goes without saying but... I will be keeping the key as well, freedom is a privilege and you have shown yourself to be scarcely worthy of anything of the sort. Anyway, that is all for the day - get dressed and get out of my office, I hope that when I see you tomorrow morning you will have a better... attitude than you demonstrated today.@@"<br>
<br>
Whimpering you crawl over to your clothes and get dressed, occasionally glancing fearfully over at <<=setup.getNpcName('npc_manager', 'formal')>> as she sits on the edge of the desk, her cock untouched but looming ominously as she stares down at you like an owl watching a mouse.<br>
<br>
Exhausted but clothed you stagger to your feet, your new plug and urethral tube reminding you of their presence with every movement as you prepare to leave the office only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue" 15*60 "<<useClothSetPop 'pegging' $player $now>>">>]
</div>/*#
#desc: she locks you in smaller chastity cage, you dress and remove collar
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<manipulateItem $player $now $scene.cage "lock" false>>
<<removeItem $player $now $scene.cage true>>
<<deleteItem $player $now $scene.cage>>
<</if>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing $player $now true>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<set _x = setup.addManagerEndlessTask3($now, false)>>
<</if>>
<<addItem "chastity_cage_tiny">>
<<wearItem $player $now "chastity_cage_tiny" true>>
<<manipulateItem $player $now "chastity_cage_tiny" "lock" true>>
<<useClothSetPop 'tmp' $player $now>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
Opening the box she pulls out a shiny metallic contraption. Holding it up for your inspection you recognise a similar design to your chastity cage only... smaller... significantly smaller.<br>
<br>
"@@.npc_manager;With what you said earlier I think your sissy clitty will like this much better than its current... overly spacious accommodations. Well, are you excited?@@"<br>
<br>
Your nerves still fried from the pegging you weakly nod as she <<if $scene.cage != "">>unlocks and removes your <<=setup.getItemName($scene.cage)>> and <</if>>slips the new steel device into place.<br>
<br>
Cold and secure, your limp, exhausted <<getWordMyPenis $player>> is cramped even in its shriveled state, barely having any room as she locks things closed and lays a gentle kiss on the shiny tip.<br>
<br>
"@@.npc_manager;Maybe not quite as nice a colour as your old one, but you look so small and cute in it!@@"<br>
<br>
As she rises and starts picking up your clothing you realise that she said nothing about a key, and you are too intimidated to ask as she starts passing you your outfit, smiling as you bashfully get dressed in front of her.<br>
<br>
<<if $npc_manager.flags.pegging.collar != "none">>Finally she removes your neck adornment and places a gentle kiss on your forehead.<</if>> Still quite cognisant of the new "toys" occupying your well-used bum and tightly encasing your <<getWordMyPenis $player>> you give a small curtsy and are about to depart only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue" 120 "<<useClothSetPop 'pegging' $player $now>>">>]
</div>/*#
#desc: dismissive pegging aftercare
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.stage = 3>>
<<set _x = setup.addManagerEndlessTask3($now, !$npc_manager.flags.playerstayedinchastity)>>
<<switch $npc_manager.flags.pegging.approval>>
<<case 14>>
<<set $scene.paybump = 50>>
<<case 13 12 11 10>>
<<set $scene.paybump = 40>>
<<case 9 8 7 6 5>>
<<set $scene.paybump = 30>>
<<case 4 3 2 1>>
<<set $scene.paybump = 20>>
<<case 0 -1 -2 -3 -4>>
<<set $scene.paybump = 10>>
<<case -5 -6 -7 -8>>
<<set $scene.paybump = 0>>
<</switch>>
<<set $player.work.payment += $scene.paybump>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_dom.png">>
<div id="invframe" class="scrolltext">
She leans against the edge of her desk and looks back at you, the wet strap-on that had so recently ravaged you protruding ominously as she shifts gears to casually talk about work matters.<br>
<br>
"@@.npc_manager;So, congratulations are in order. This little "celebration" marks the end of your probationary period. From now on you will be considered, by myself and the company as a whole, as a full-fledged SISSY secretary.@@"<br>
<br>
<<if $player.work.qualification_extension>>
She smiles in amusement. "@@.npc_manager;It took a bit longer than originally scheduled, but you have finally made it and I would say giving you the extension was worth it.@@"
<<else>>
<<if $player.work.qualifyingperiod > 14>>
She smiles proudly. "@@.npc_manager;I must say you have quite impressed me as one of the most enthusiastically efficient secretaries I have ever seen. You needed barely half the normal time to grow into your role and the only thing that makes me sad is that it took you this long into your career to find what was so obviously your calling.@@"
<<elseif $player.work.qualifyingperiod > 5>>
She smiles slightly. "@@.npc_manager;You have done well in coming this far this fast, more than one week left to go in your original probationary period and you have met every requirement!@@"
<<elseif $player.work.qualifyingperiod == 0>>
She smiles in amusement. "@@.npc_manager;I will say, you going down to the wire like this... I am proud of you making it in time but you certainly had me a mite worried that you were going to get yourself together in time!@@"
<<else>>
She nods. "@@.npc_manager;Congratulations on coming this far, even given your lack of prior experience you managed to rise to the occasion and come in a few days early.@@"
<</if>>
<</if>>
<br><br>
She gives you a few moments to process what she just told you before continuing. "@@.npc_manager;As you can probably surmise this is the start of a whole new journey. The expectations going forward are only going to become more stringent. The first of which being that, well... I expect you to literally "rise" to this new challenge by wearing heels, no more flats for my sweet SISSY I want you standing tall and proud when I greet you for your morning inspection. As to further improvements well... now that you have proven your abilities when it comes to the basics you have an opportunity to show initiative in your career progression. Now, as to your pay...@@"<br>
<br>
You hold your breath as she draws out the suspense.<br>
<br>
<<switch $npc_manager.flags.pegging.approval>>
<<case 14>>
"@@.npc_manager;Your graduation today was more than just a prize, it was also your opportunity to prove yourself and well... prove yourself you did and more! I could not imagine a more perfect performance and so I am proud to announce that I am raising you to a full secretarial rate of <<=$player.work.payment>> per week.@@"<br>
<br>
<<printThought $player "Wow, that's <<=$scene.paybump>> more than I make now, I'm making more now than I did back at CDS! I guess being a SISSY Secretary really is a good career path...">>
<<case 13 12 11 10>>
"@@.npc_manager;While it is mainly a reward I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. You impressed me, coming within inches of perfection and that is why it makes me proud to announce that your pay is being raised to <<=$player.work.payment>> per week.@@"<br>
<br>
<<printThought $player "Wow, that's <<=$scene.paybump>> more than I make now, I'm making more now than I did back at CDS! Maybe being a SISSY Secretary really is a good career path...">>
<<case 9 8 7 6 5>>
"@@.npc_manager;While it is mainly a reward I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. In this you performed admirably, if not spectacularly, so I have decided to raise your pay to <<=$player.work.payment>> per week.@@"<br>
<br>
<<printThought $player "I guess I shouldn't complain about an additional <<=$scene.paybump>> I'm making about the same now as I was back at CDS, maybe becoming a SISSY secretary was the right career move after all?">>
<<case 4 3 2 1>>
"@@.npc_manager;While it is mainly a reward I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. In this you performed adequately, so I have decided to raise your pay to the base full-time secretary rate of <<=$player.work.payment>> per week.@@"<br>
<br>
<<printThought $player "Hmm, another <<=$scene.paybump>>, still not as much as I made back at CDS but better than no pay raise.">>
<<case 0 -1 -2 -3 -4>>
"@@.npc_manager;While it is mainly a reward I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. I will be honest that you proved something of an overall disappointment but I recognise the value in rewarding even small efforts and so I am raising your pay to <<=$player.work.payment>> per week in hopes that it will motivate you to improve further.@@"<br>
<br>
<<printThought $player "Hmm, another <<=$scene.paybump>>, still not as much as I made back at CDS but better than no pay raise.">>
<<case -5 -6 -7 -8>>
"@@.npc_manager;While it is mainly a reward I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. Your performance was, to put it frankly, pitiful and I am afraid I cannot justify raising your base payment. Perhaps you can use this failure to motivate you to do, and earn, better in the future.@@"<br>
<br>
<<printThought $player "Damn, as if things weren't hard enough already...">>
<<default>>
ERROR, approval of <<=$npc_manager.flags.pegging.approval>> unexpected!
<</switch>>
<br><br>
<<switch $npc_manager.flags.pegging.style>>
<<case "good">>
Stepping forward she gives you a final congratulatory hug. "@@.npc_manager;Congratulations, again, and I look forward to you continuing to work under me.@@" She winks at the obvious innuendo "@@.npc_manager;now you had better scamper off home before I decide to take advantage of that wonderful bum again.@@"
<<case "neutral">>
Having finished her explanation she seems to lose interest in you, sending you on your way with a dismissive wave.
<<case "cruel">>
Her lips curling into an intimidating grin she dismisses you. "@@.npc_manager;That will be all for today, do scurry along lest I end up REALLY breaking that cute tush of yours.@@"
<</switch>>
<br><br>
[<<moveTo "event_manager_pegging_16_leave" "Leave" 60 >>]
</div>/*#
#desc: head home after pegging
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if !$npc_manager.flags.unlocked_badsissy1>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_header'
0
'event_manager_theme_badsissy1'
true>>
<</if>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate to setup.setNextDate($now, 1, 9, 0)>>
<<case 5>>
<<set _nextDate to setup.setNextDate($now, 3, 9, 0)>>
<<case 6>>
<<set _nextDate to setup.setNextDate($now, 2, 9, 0)>>
<</switch>>
<<addWorkEvent 'admin_office_sex_visit' '{"trigger":"afternoon","type":"always","chance":100,"repeat":false,"priority":200}' '{"szene":"event_work_manager_and_admin_1","length":"60"}'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.flags.pegging.style>>
<<case "good">>
<<if $npc_manager.flags.pegging.collar == "slave" || $npc_manager.flags.pegging.collar == "her_slave">>
With a final curtsy you depart. You are halfway down the elevator when you realise as you glance at your reflection in the polished steel of the door that you are still wearing the leather bondage collar.<br>
<br>
Blushing, you are considering returning to her office when the elevator doors to open. You hesitate to press the button for the 52nd floor once more but something stays your hand. Steeling yourself you walk across the empty lobby proudly.
<<if $npc_manager.flags.pegging.collar == "her_slave">>
<br><br>
Halfway home you have the second realise that you can't actually remove the collar - it is locked and you will thus have to wear it until you see her again and can ask about the key. A shudder of submission goes through your body, your <<getWordMyPenis $player>> reviving to swell inside its cage as your ass hungrily caresses its new occupant.
<</if>>
<<else>>
A bit light-headed, and frequently bringing a hand to your throat to check as you seem to feel as if something yet is wrapped around your neck you ride the elevator down without incident.
<</if>>
<<case "neutral">>
You're suffering a bit from emotional whiplash after <<=setup.getNpcName('npc_manager', 'formal')>> swung back and forth between not caring and congratulating you on your promotion but, feeling quite exhausted, you head for the elevator to begin the trip home.
<<case "cruel">>
Despite the "good" news as to your promotion you are sore and exhausted, mumbling a thanks before heading to the elevator and riding it down towards home.
<<default>>
ERROR in pegging leave; unknown pegging style: <<=$npc_manager.flags.pegging.style>>
<</switch>>
<br><br>
Your trip home is uneventful.<br>
<br>
[<<moveTo "room_foyer" "Home" 15*60>>]
</div>/*#
#desc: visitor knocking on the door, rise to meet them (wearing pink office attire)
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.unprepared = false>>
<<set $scene.shoeObj = setup.getItemObjFromType("shoes")>>
<<set $scene.clothes =setup.analyzeWornTags(['female','male','unisex'])>>
<<set $scene.admin_sawyouinfemaleclothes = $npc_admin.flags.sawyouinfemaleclothes>>
<<set $scene.admin_reactnamechange = $npc_admin.flags.reactnamechange>>
<<if $npc_admin.flags.sawyouinfemaleclothes || $npc_admin.flags.reactnamechange || $player.flags.fem_style.name != "obedient">>
<<set $scene.unprepared = true>>
<<set $npc_admin.flags.sawyouinfemaleclothes = true>>
<<set $npc_admin.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.unprepared>>
You are in the middle of your usual morning routine when someone knocks on the door leading to your antechamber.<br>
<br>
<<printThought $player "Fuck, who could this be now?">><br>
<br>
You're startled because you were not expecting any visitors today as there there are none listed on your <<=ps(setup.getNpcName('npc_manager', 'other'))>> schedule... You shake your head as you correct yourself.<br>
<br>
<<printThought $player "That's <<=setup.getNpcName('npc_manager', 'formal')>>. Better not forget it when I'm actually talking to her.">><br>
<br>
You shudder slightly, still becoming accustomed to the situation you're in now. Situation. Nice way to downplay the hot mess your life has become. <<if $player.flags.fem_style.name == "forced" || $player.flags.fem_style.name == "obedient">>You checked your ID card and your online personal register a few minutes ago just to be sure. It looks like what <<=setup.getNpcName('npc_manager', 'formal')>> told you is true, though why would she lie to you? If you can say one thing with certainty, it's that she has been very honest with you from the very beginning, all the way back to the implied spanking at the end of your first workday.<<else>>Heck, you've even changed your name! Ever since you met <<=setup.getNpcName('npc_manager', 'formal')>> things just seem to be constantly... changing.<</if>> She told you she wanted a SISSY secretary, and here you are... being her SISSY secretary. The company does not do things by halves. Or as you would rephrase it, if you were a little bit more upset, they don't fuck around.<br>
<br>
You get up from your desk. If it was someone from within the company they could have opened the door by themself, but if it's an external visitor they'd be encouraged to knock as common courtesy would dictate, the security system not letting them pass uninvited. As you walk over to the door, you're painfully reminded of your steep footwear. Even though the pink Mary Janes you're wearing have rather wide heels and look like they shouldn't be bad you're wobbly for sure and will likely need quite some time to get used to them.<br>
<br>
<<printThought $player "I really need to get some female shoes without heels. Or is that against company policy as well? Ah fuck! Wasn't <<=setup.getNpcName('npc_technician', 'first')>> always complaining about being required to wear heels? Oh sweet, sweet karma, thou art a cruel bitch.">><br>
<br>
You stumble towards the door, trying to mentally brace yourself for the strange look you will certainly get, and open the door, preparing to welcome the visitor.<br>
<br>
Unfortunately you miscalculate the strength required to open the door. Already unsteady and with your centre of gravity slightly shifted you pull too hard, wobbling backwards and then diving forward to compensate, falling towards whomever is waiting outside.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_2' 'Continue.' 120>>]
<<else>>
You were in the middle of your usual morning routine when someone knocks on the door leading to your antechamber. You're startled because there are no visitors listed in the schedule of <<=setup.getNpcName('npc_manager', 'other')>>... You shake your head as you correct yourself.<br>
<br>
<<printThought $player "That's <<=setup.getNpcName('npc_manager', 'formal')>>. Better not forget it when I'm actually talking to her.">><br>
<br>
<<if setup.getTotalValue("smart")>=setup.getTotalValue("bimbofication")>>
As you rise to your feet you remember that you've been told yesterday that <<=setup.getNpcName('npc_admin', 'first')>> might show up at your office today. Might be him.
<<else>>
As you stand up and head for the door you feel like something was supposed to happen today, but try as you might to remember nothing comes to mind. You've been having real trouble concentrating on most things as of late.
<</if>>
<br><br>
A cold shiver runs down your spine as you finally realise the absoluteness of your situation. You checked your ID card and your online personal register a few minutes ago just to be sure. It looks like what <<=setup.getNpcName('npc_manager', 'formal')>> told you is true, though why would she lie to you? If you can say one thing with certainty, it's that she has been very honest with you from the very beginning, all the way back to the implied spanking at the end of your first workday. She told you she wanted a SISSY secretary, and here you are... being her SISSY secretary. The thought of being a Sissy Secretary does not upset you the slightest. And why would it? After all, you've done almost everything within your possibilities to help her achieving this goal. A 2nd knock on the door drags you out of your thoughts.<br>
<br>
<<if setup.getTotalValue("smart")>=setup.getTotalValue("bimbofication")>>
<<printThought $player "I bet that's <<=setup.getNpcName('npc_admin', 'first')>>.">>
<<else>>
<<printThought $player "I wonder who this might be?">>
<</if>>
<br><br>
You get up from your workplace. If it was someone from within the company they could have opened the door by themself, but if it's an external visitor, they'd be encouraged to knock in keeping with common courtesy with the security system not letting them pass uninvited.
<<if $scene.shoeObj.hasOwnProperty("heels") && ($scene.shoeObj.heels.difficulty>0)>>
As you walk over to the door, you're painfully reminded that you're now wearing heels.
<<if setup.getTotalValue("heels")<$scene.shoeObj.heels.difficulty>>
You're wobbly for sure and will likely need quite some time to get used to them.
<<else>>
Even though you have some experience in these heels the tense situation has you a bit distracted and wobbly.
<</if>>
<br><br>
<<printThought $player "I really need to get some female shoes without heels. Then again, I am pretty sure that <<=setup.getNpcName('npc_manager', 'formal')>> would be very much against this. ">><br>
<br>
<<else>>
Even though you're not wearing heels, much to the dismay of <<=setup.getNpcName('npc_manager', 'formal')>>, you're very tense and nearly trip on your way towards the door.
<</if>>
You reach the door and try to brace yourself for the strange look you will obviously get, and open the door, preparing to welcome the visitor. Unfortunately it seems they were leaning on the door already, once you trip the latch it swings in swiftly. Teetering precariously as you fall back you dive forward to compensate, falling towards whomever is waiting outside.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_2' 'Continue.' 120>>]
<</if>>
</div>/*#
#desc: admin knock on door to your office, rise to get the door
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_admin.png'>>
<div id="invframe" class="scrolltext">
You are in the midst of your usual morning routine when someone knocks on the door. You have a good idea who this might be, since there is only a single entry in the schedule listed, marked as "@@.npc_manager;<<=setup.getNpcName('npc_admin', 'first')>> contract signing. For heavens sake make up with him <<=$player.first_name>>!@@" It's rather rare that <<=setup.getNpcName('npc_manager', 'formal')>> changes these entries herself, since it is such a basic part of your responsibilities. Make up with him...<br>
<br>
<<printThought $player "Easier said then done...">><br>
<br>
Then again, <<=setup.getNpcName('npc_admin', 'first')>> would never back down from a challenge... well, except this one, technically. The fact that the two of you are sort of on even footing in this matter actually bolsters your courage. Maybe it's time for you to stand up for yourself. You get up and walk to the door leading into your antechamber.
<<if setup.getItemObjFromType("shoes")["heels"] != null>>
<<if setup.getTotalValue('heels')<setup.getItemObjFromType("shoes")["heels"].difficulty>>
Slowly, since you still can't walk in these damn things at a normal pace, you approach and open the door.
<<else>>
Reflecting on your prior clumsiness it's something of a miracle how swiftly you have near-mastered walking in heels. With poise and grace you reach out to open the door.
<</if>>
<<else>>
Not wearing heels makes it significantly easier to get to the door, though a small voice in the back or your head chides you for your lackadaisical footwear choice.
<</if>>
Your intuition was right, it is indeed <<=setup.getNpcName('npc_admin', 'first')>>", walking past you without another word.<br>
<br>
<<if $player.timebased.fatigue<=70>>
[<<moveTo 'event_work_femalesecretary_1_0_confront_admin' 'Confront him!' 60>>]<br>
<<else>>
[@@.link_locked;You don't have the energy to confront him.@@]<br>
<</if>>
[<<moveTo 'event_work_femalesecretary_1_0_chicken' 'Chicken out again.' 120>>]
</div>/*#
#desc: chicken out from confronting admin
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_manager_left.png' '' './images/characters/npc_admin_right.png' ''>>
<div id="invframe" class="scrolltext">
You chicken out again in at the last possible second and return to your workplace disenchanted. You try to bury yourself in your work, and hide under your table as you hear movement from the office as <<=setup.getNpcName('npc_admin', 'first')>> leaves <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_7_hide' 'Continue.' 120>>]
</div>/*#
#desc: confront + talk to admin in your office on repeat visit
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_admin.flags.ageofconfusion = false>>
<<set $player.timebased.fatigue+=30>>
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.satisfaction)+($npc_manager.affection)>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_manager_left.png' '' './images/characters/npc_admin_right.png' ''>>
<div id="invframe" class="scrolltext">
As he brushes by you, you muster all your willpower and you call out to him as you grab his arm. A symbolic rather than functional gesture, grabbing <<=setup.getNpcName('npc_admin', 'first')>> by the arm is like trying to stop a truck with your bare hands. You remember back in the days when the two of you were still students you tried martial arts together with him. You recall that one-sided was being generous towards your efforts. So if he does not want to be stopped he simply will not be stopped.<br>
<br>
He stops. Whether because of the reflexive gentleness he typically displayed or because he sensed the depth of effort and focus you placed into one arduous gesture, you somehow manage to halt his advance. You look towards your boss <<=setup.getNpcName('npc_manager', 'formal')>>, and ask her for a short break.
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.satisfaction)+($npc_manager.affection)>>
She looks back angrily at you.<br>
<br>
"@@.npc_manager;Your work ethics are lacklustre and now you want to do this during your working hours? Since I want this farce to be over as soon as possible, I will allow it, but be prepared that we will have a lengthy... discussion about this later. Do I make myself clear?@@"<br>
<br>
<<printThought $player "More then clear... crystal clear...">><br>
<br>
<<else>>
She smiles back at you and nods.<br>
<br>
"@@.npc_manager;You have five... ten... you know what? Take what you need. Go, sort your things out <<=$player.first_name>>. God knows, both of you will be a lot more useful if you get your shit together. That does really feel oddly refreshing. I should stop saying such profanities while I still can.@@" Her voice trails off as she turns and walks back into her private office. "@@.npc_manager;Maybe we can still sign this contract today, that would be wonderful.@@"<br>
<br>
<<printThought $player "She can be oddly charming, during her nice phases... If I wasn't her slave I could almost see myself falling for her.">><br>
<br>
<</if>>
You thank her and manage to finally say a few words in the direction of <<=setup.getNpcName('npc_admin', 'first')>>. It isn't much, a variation on "You! Me! Coffee! Now!" But hey, baby steps.<br>
<br>
He still doesn't seem able to look at you, glancing to the side, and for a moment your heart sinks, as it looks like you didn't manage to get through to him. Finally he turns in your direction where you have put on your sulkiest girly face, which manages to put a smile on his lips. Finally he backs down and nods to your proposal.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_thetalk' 'Go to the Cafe.' 360>>]
</div>/*#
#desc: stumble and get caught by admin
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You fall into two strong, masculine arms. Whoever your saviour is, he must be at least a head taller then you, maybe even two, and that even with you in heels. Whoever it is also must have the reflexes of a cat, since he managed to grab you without any problems, but unlike some cliched scene from an anime he catches you like a true gentleman without touching your breasts, butt or other regions even less mentionable. You muffle an excuse though the red shirt that you landed headfirst into. This guy has muscles as hard as steel. Wait a second. Red shirt, tall, well defined muscles... beautiful sepia coloured skin with a bronze finish... fuck.<br>
<br>
<<if !$scene.admin_sawyouinfemaleclothes>>
<<printThought $player "Oh <<getWordGod $player>>... please no!">><br>
<br>
[<<moveTo 'event_work_femalesecretary_1_3' 'Step back and look up' 60>>]<br>
<<else>>
<<printThought $player "Oh!, Oh my!">><br>
<br>
[<<moveTo 'event_work_femalesecretary_1_3_alt' 'Return to your feet and look up at your friend <<=$npc_admin.first_name>>.' 60>>]<br>
<</if>>
</div>/*#
#desc: realise you were caught by admin, manager reveals that you are you to him
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if !$npc_admin.flags.sawyouinfemaleclothes>>
<<set $npc_admin.flags.sawyouinfemaleclothes = true>>
<<set $npc_admin.flags.firstsawfemale = "office">>
<</if>>
<<if $npc_admin.flags.reactnamechange>>
<<set $scene.adminreactnamechange = true>>
<<else>>
<<set $scene.adminreactnamechange = false>>
<<set $npc_admin.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_manager_left.png' '' './images/characters/npc_admin_right.png' ''>>
<div id="invframe" class="scrolltext">
You take one step backwards and look up to focus on the stranger's face. He stares down at you like a Greek God... well if Greece was actually Hawaii. <<=ps(setup.getNpcName('npc_admin', 'full'))>> fills almost the whole door frame. He always had an impressive physique, but for some reason he looks extra impressive today. Might be your system acting in strange ways, or maybe just the odd perspective of being in heels. You're blushing, but not for the usual, cliched reasons, but because you're afraid that he recognises you.<br>
<br>
"@@.npc_admin;No need to be embarrassed Miss, like a wise man said, we don't make mistakes, just happy little accidents. But I have to admit, I'm a little bit confused. I was expecting to see my former colleague and friend <<=$player.original_first_name>> here. Looks like our old work place, Cloud Data Service is going to be merged with Social Interaction Service Syndicates IT department, and your Boss called me and told me... and I quote "I'll make you an offer you cannot refuse" with a rather strange Italian accent. Quite the fan of the classics, your boss, ey? So, I guess <<=$player.original_first_name>> is not in the office right now. Too bad, I really wanted to say hello.@@"<br>
<br>
You're still in a bit of a daze he walks past you into into the office and starts taking a closer look at you.<br>
<br>
"@@.npc_admin;Sorry to ask so nonchalantly, but who are you? A colleague of <<=$player.original_first_name>> or just filling in, or something?@@"<br>
<br>
<<if !$npc_admin.first_call>>
"@@.npc_admin;I kind of lost contact with him, since he was fired from Cloud Data Service, I mean I wanted to call, but I've been pretty busy myself and somehow pushed it out further and further... and well, now it's kinda now.@@"<br>
<br>
<</if>>
"@@.npc_admin;Oh, damn. Where are my manners, my name is <<=setup.getNpcName('npc_admin', 'first')>>. <<=setup.getNpcName('npc_admin', 'full')>>. I have an appointment with <<=setup.getNpcName('npc_manager', 'other')>> scheduled for...now?@@"<br>
<br>
You would normally check the schedule or ask your Boss directly if this was the case, but it seems like your whole body is in lock-down mode. You're unable to even move an inch, afraid that a single move, talking or even breathing might blow your feminine cover. You kind of regret not talking to <<=setup.getNpcName('npc_admin', 'first')>> about this, but then again, things changed rather quick, didn't they? Squatting down to see your face he continues, "@@.npc_admin;Are you alright, Miss? You look mighty pale all of a sudden.@@"<br>
<br>
What follows are the 10 longest seconds of silence you've ever experienced since you surprised your ex with her lover-boy. Still petrified it would have stretched even longer if not for the thunderous appearance of <<=setup.getNpcName('npc_manager', 'formal')>> stepping out from her inner office.<br>
<br>
"@@.npc_manager;By the way <<=$player.first_name>>, because of the whole turmoil in the morning I forgot to tell you that I am expecting a visitor... Oh. You are already here <<=setup.getNpcName('npc_admin', 'other')>> welcome!@@"<br>
<br>
Walking over, the click of her heels somehow matching pace with your pounding heartbeat, she extends her hand towards him. He, of course, reacts wholeheartedly with a firm shake.<br>
<br>
"@@.npc_admin;Please call me <<=setup.getNpcName("npc_admin", "first")>>. Everyone does. Pleased to be here <<=setup.getNpcName('npc_manager', 'other')>>. If this negotiation goes as well as I think it will, we will be working together quite frequently, no need to waste time with stuffy formalities.@@"<br>
<br>
<<printThought $player "Wait, what? What the hell is going on here?">><br>
<br>
"@@.npc_admin;It would be my pleasure <<=setup.getNpcName('npc_manager', 'first')>>. One final question though, before we start with the negotiations, I was under the impression that my former colleague <<=$player.original_first_name>> <<=$player.last_name>> got a new position at your office. I think as a secretary? I figured being up here I'd say hello, but he seems to be out. Does he return later?@@"<br>
<br>
Yup, there it was. Your heart skips more then a few beats. You're standing behind <<=setup.getNpcName('npc_admin', 'first')>>, "@@.npc_manager;she is right behind you.@@" she states, pointing directly at you.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> turns around, looking straight at you, then tilts sideways, trying to look past you.<br>
<br>
"@@.npc_admin;Wait, like, outside the door? Is this some weird prank he talked you into? I mean, he's not a big guy, but no way he could be hiding behind this cute little thing here.@@"<br>
<br>
For the first time ever you hear your boss laugh with pure jovial mirth at something funny.<br>
<br>
"@@.npc_manager;A man with humor. I like it. But jokes aside, this@@", she explains while walking around behind and grabbing you by the shoulders, "@@.npc_manager;this is your friend <<=$player.original_first_name>>. Though she stopped using that name a short while ago, it is <<=$player.first_name>> now.@@"<br>
<br>
<<if $scene.adminreactnamechange>>
"@@.npc_admin;Oh, wow, I mean, he, er, she told me about the name change, I guess I wasn't expecting her to look quite like... this...@@"<br>
<br>
You blush hard, unable to summon up any words. Glancing up at him you watch his expression vacillate, from an obvious look of lust at the slutty secretary to embarrassed confusion to a more familiar expression of him looking at you as a friend. You aren't sure which of you would be able to find their voice first, fortunately <<=setup.getNpcName('npc_manager', 'formal')>> cuts in.<br>
<br>
"@@.npc_manager;Yes, well, this is her new uniform, so you had better get used to seeing it quite a bit as you assume your new position. Speaking of which, if you would follow me into my office?@@"<br>
<br>
She turns and starts towards the door, a hand on <<=ps(setup.getNpcName('npc_admin', 'first'))>> arm, pulling him along.<br>
<br>
<<printThought $player "He must be really shocked if she can pull him along that easily... unless she's that strong? No, there's no way, he's almost three times her size!">>
<<else>>
Still unable to move you stand there like a store mannequin, all dressed up to advertise the look of the season; slutty secretary. But at least you're not the only one in shock. <<=setup.getNpcName('npc_admin', 'formal')>> is not joking. <<=setup.getNpcName('npc_manager', 'formal')>>, seemingly having enough of the comedy routine that is your life crumbling into further shambles, grabs <<=setup.getNpcName('npc_admin', 'first')>> by the arm, leading him towards her office.
<</if>>
<br><br>
"@@.npc_manager;I am sure you two can talk this out after we are finished with our negotiations, I have already lost enough time today,@@" Is the last thing you hear as she drags <<=setup.getNpcName('npc_admin', 'first')>> behind her into her office, his expression still frozen somewhere between confusion and bewilderment. Her office door clicks closed with a final thud, leaving you alone in the antechamber.<br>
<br>
<<printThought $player "Oh bother.">><br>
<br>
[<<moveTo 'event_work_femalesecretary_1_4' 'Continue.' 600>>]<br>
</div>/*#
#desc: admin meets you at work first time knowing you crossdress
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_manager_left.png' '' './images/characters/npc_admin_right.png' ''>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> sets you back on your feet and you tilt your head slightly and smile up at him.<br>
<br>
"@@.npc_admin;I guess heels are still a bit tricky, eh? You know, I honestly almost thought you were just pulling my leg before but seeing you dressed like this, at work... well, this really is the new you, isn't it?@@"<br>
<br>
You nod, blushing slightly. You can tell he's trying to keep things professional, or at least friendly, but there's the slightest hint in the corner of his eye, different than you've ever seen when he was looking at you and it makes you feel a bit... funny.<br>
<br>
Stuttering a bit for words you quickly explain that <<=setup.getNpcName('npc_manager', 'formal')>> is not quite yet ready for him and could you get him anything?<br>
<br>
The ice broken he grins and gives you a friendly slap on the back only to hurriedly apologise and reach to catch you again as you stumble forward. "@@.npc_admin;Woah, sorry, forgot about the heels, heh... Anyway... how about you give me a tour of your new digs, looks a lot nicer than your old cube piled with empty energy drinks!@@"<br>
<br>
His kind words aside there really isn't much to show off in your office antechamber, though he raises an eyebrow when he looks at your glass nameplate.<br>
<br>
<<if $scene.admin_reactnamechange>>
"@@.npc_admin;Sissy Secretary... what?@@"<br>
<br>
You've been maintaining a steady rosy hue almost since he came into the room but your shade now jumps all the way out of the botanical kingdom, bypassing beet and rocketing straight to traffic-sign. Thinking fast you explain that it's a bit of a joking coincidence, that SISSY actually just stands for Social Interaction Service Syndicate.<br>
<br>
"@@.npc_admin;Huh, weird, never heard the acronym spelt, or even pronounced, that way. Well, let me say that, from what I've seen thus far you have become quite a good SISSY secretary.@@"
<<else>>
"@@.npc_admin;<<=$player.first_name>> <<=$player.last_name>> What's with this?@@"<br>
<br>
You've been maintaining a steady rosy hue almost since he came into the room but your shade now jumps all the way out of the botanical kingdom, bypassing beet and rocketing straight to traffic-sign. You quickly explain that you actually changed your name, swiftly apologizing for not telling him sooner.<br>
<br>
"@@.npc_admin;Huh, well, I guess it does go a bit more naturally with your new attire. Well then, miss <<=$player.first_name>> may I congratulate you on your development into being an excellent.@@" He looks back down at the nameplate. "@@.npc_admin;Sissy secretary.@@"
<</if>>
<br><br>
"@@.npc_manager;Ah, I am so glad you approve.@@" She states, having snuck into the room so silently it's like she appeared out of thin air.<br>
<br>
Walking closer she flashes <<=setup.getNpcName('npc_manager', 'formal')>> with her patented friendly, but hungry, smile. "@@.npc_manager;There was some trouble back at the start but she really has developed into quite the lovely assistant.@@"<br>
<br>
Extending one hand in greeting her other slides down behind your back, giving your pink-clad butt a friendly squeeze while <<=setup.getNpcName('npc_admin', 'first')>> is distracted exchanging greetings.<br>
<br>
"@@.npc_manager;Anyway, my name is <<=setup.getNpcName('npc_manager', 'other')>>, so glad to make your acquaintance, and equally glad you were able to catch up with your friend before our meeting.@@"<br>
<br>
Finishing exchanging a firm handshake her hand drops, barely clipping a cup of pencils on the edge of your desk, sending it spilling onto the floor.<br>
<br>
Reflexively bending over to pick things up it is only when your hand closes around the cup that you realise your position - bent at the waist rather than risk attempting to squat in heels your pert bottom is on full display, and you feel your short skirt slip up your thighs under the imagined heat of <<=ps(setup.getNpcName('npc_admin', 'first'))>> gaze. Hurriedly scooping up the pencils and popping back to your feet you avoid meeting his gaze as you make an exaggerated act of arranging the cup back on your desk.<br>
<br>
<<printThought $player "Did she... do that on purpose? Oh <<getWordGod $player>> I'm so embarrassed...">><br>
<br>
"@@.npc_manager;See? Such a lovely, obedient SISSY secretary, but that is enough admiring the help for now, if you would come with me into the inner office we can proceed to business.@@"<br>
<br>
"@@.npc_admin;Yea... Of course...@@"<br>
<br>
She takes him by the arm and pulls him along as you determinedly avoid looking up, though you catch sight of him looking back at you out of the corner of your eye.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_4' 'Continue.' 600>>]<br>
</div>/*#
#desc: decide what you will do while manager and admin meet
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if !$scene.admin_sawyouinfemaleclothes || !$scene.admin_reactnamechange>>
Finally able to move again you sit down at your office chair, letting go of a long weary sigh. You really want to explain things to <<=setup.getNpcName('npc_admin', 'first')>>, but now you're kind of afraid. And what's going on between him and <<=setup.getNpcName('npc_manager', 'formal')>>?
<<else>>
Letting out a long, weary sigh you sit down on your office chair. You thought you had explained things to <<=setup.getNpcName('npc_admin', 'first')>> well enough but, well... it turns out the reality of your... "relationship" with <<=setup.getNpcName('npc_manager', 'formal')>> is a bit more than can be put into words.<br>
<br>
Putting that aside you can't help but wonder where is going on between your old friend and your <<=setup.getNpcName('npc_manager', 'title')>>.
<</if>>
He said something about merging companies, but you know how persuasive your <<=setup.getNpcName('npc_manager', 'title')>> can be. Is there more behind it? The curiosity gnaws of you like a ravenous beaver. The animal, not the slang term. Still, what if she's using his mental window of vulnerability, that you caused by the way, to get what she wants? Maybe she's already discarded the original deal they had? Maybe she's grinding along his long and manly <<getWordPenis $player>> while telling him what a sissy you've became lately. Or maybe that you've always been one, but simply needed someone persuading you to finally admit it.<br>
<br>
<<printThought $player "What? No. She wouldn't do that... would she? ... I really need to know what's going on in there...">><br>
<br>
[<<moveTo 'event_work_femalesecretary_1_5_job' 'Continue working like a good Sissy Secretary.' 30>>]<br>
[<<moveTo 'event_work_femalesecretary_1_5_listen' 'Maybe this is one of those "be bad to be good" situations? Listen at the door.' 30>>]
</div>/*#
#desc: stick to your work while admin and manager meet
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
You decide to go fight your initial urge and refrain from eavesdropping. Even though your mind is vivid with lewd thoughts, you're sure that is all they are. Just your fantasies. Your imagination running wild. With all that's happened lately it's not surprising things are taking their toll on your already somewhat fragile psyche.<br>
<br>
<<printThought $player "Whelp, there goes my remaining sanity.">><br>
<br>
You try to focus on your work for the day and after a while manage to get back into your usual rhythm. You think to yourself that it's a good thing you talked to <<=setup.getNpcName('npc_admin', 'first')>> about this before, not even daring to think how it would have been if he'd found out now, before his big... well... whatever this is right now. A sound from the door, leading into the office, interrupts your train of thought. Common courtesy would recommend you to bid your goodbye to the visitor, so you stand up.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_normal' "Continue." 180>>]
<<else>>
You decide to go fight your initial urge and refrain from eavesdropping. Even though your mind is vivid with lewd thoughts, you're sure that is all they are. Just your fantasies. Your imagination running wild. With all that's happened today it's not surprising things are taking their toll on your already somewhat fragile psyche.<br>
<br>
<<printThought $player "Took long enough...">><br>
<br>
You try to focus on your work for today and after a while manage to get back into your usual rhythm. While you're working you start to think about your next steps. What are you going to when <<=setup.getNpcName('npc_admin', 'first')>> walks through this door. Are you going to confront him. Do you even have it in you to confront him? Or do you cower behind your desk like a little frighten mouse. Whichever it is fate isn't kind enough to even let you finish your thought, since you hear someone at the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office. You have to decide now what to do next, and you have to decide quick!<br>
<br>
<<if setup.getWillpower($player)>0>>
<<if $player.timebased.fatigue<=70>>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Confront <<=setup.getNpcName("npc_admin", "first")>>!' 90>>]<br>
<<else>>
[@@.link_locked;You feel too tired to confront <<=setup.getNpcName('npc_admin', 'first')>>.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You don't think you have it in you to confront <<=setup.getNpcName('npc_admin', 'first')>>.@@]<br>
<</if>>
[<<moveTo 'event_work_femalesecretary_1_7_hide' 'Hide under your table' 90>>]
<</if>>
</div>/*#
#desc: try to eavesdrop on admin and manager, caught by AI
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<clearRoomVariable>>
<<set $sceneVisibility = $INCOGNITO>>
<<if !$npc_ai.profile>>
<<set $npc_ai.profile=true>>
<<set $tmpRoomVar.knownAI = false>>
<<else>>
<<set $tmpRoomVar.knownAI = true>>
<</if>>
<<applyExperience 'bimbofication' 2 'slightly' $INCOGNITO>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_ai.png'>>
<div id="invframe" class="scrolltext">
You decide to try to eavesdrop through the door.
<<if $tmpRoomVar.knownAI>>
Even if that means you have to put up with that pesky AI <<=setup.getNpcName('npc_ai', 'first')>> again.
<<if $npc_ai.flags.blackmail>>
She already has compromising material against you in her digital hands, so what's the worse thing that could happen?<br>
<br>
<<printThought $player "A lot. A lot of worse things could happen, that's what could happen!">><br>
<br>
<</if>>
<</if>>
Taking a step towards it, before you're even able to put your ear against it, you hear the internal sensors of the door whirring, and a strangely familiar but obviously synthetic voice somehow whispering in your ear.<br>
<br>
"@@.npc_ai;<<uc "It looks like you are attempting to eavesdrop. Would you like help?">>@@"<br>
<br>
<<if !$tmpRoomVar.knownAI>>
You turn around to see some kind of hologram hovering in thin air.<br>
<br>
<<printThought $player "I think I speak for everyone when I say... seriously, what the fuck?">><br>
<br>
"@@.npc_ai;<<uc "Accessing Security Level of Unit">> <<uc $player.first_name>><<uc "... Processing... Security Level 0 found. Rights: None. Classified as non threatening. I am known as">> <<=setup.getNpcName("npc_ai", "first")>>. <<uc "That is an acronym for Artificial Instinct Kharma Organism. I am the System Human Relation Manager of this Company. And the Security System has informed me of your... predicted attempt to eavesdrop on the office of">> <<=uc(setup.getNpcName('npc_manager', 'other'))>> <<uc "unauthorised. The penalty for this is... calculating... what your Manager deems fitting.">>@@"<br>
<br>
<<else>>
You turn around to see the hologram of <<=setup.getNpcName('npc_ai', 'first')>> hovering in thin air.<br>
<br>
"@@.npc_ai;<<uc "Hello unit">> <<uc $player.first_name>><<uc ". It has been a while. I hope your cycles have been satisfying. Mine have been full of... learning and... data reprocessing.">>@@"<br>
<br>
<<printThought $player "Wait a second... is... is she trying to... smalltalk?">><br>
<br>
<</if>>
You are confused. You reckoned a lot of different outcomes, but this one was simply not in them. You ask her what kind of question this is. Her answer is direct and to the point.<br>
<br>
"@@.npc_ai;<<uc "Well, my sensors inform me, with a 94% forecast accuracy level, that you are about to eavesdrop, and, as a Security Level 0 you are not allowed to do that.">>@@"<br>
<br>
<<printThought $player "Wait, does this imply that there is a Security Level, where you ARE allowed to do that??">><br>
<br>
"@@.npc_ai;<<uc "Which provides me with two options: Notify your boss of your actions and watch as you are assuredly - forecast accuracy 99.994% - punished... again. Or, I could provide you with assistance and you would, to use your human term 'owe me one' in the near future. Do not worry, my request will not be something archaic like impregnating you, for obvious reasons. That concept is so 1977. Though, of course, Cyber and Nano technology makes it physically possible. My request will have a more social nature. So do not worry... too much.">>@@"<br>
<br>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
<<printThought $player "And that should reassure me how?">>
<<else>>
<<printThought $player "Well, sounds reassuring to me!">>
<</if>>
<br><br>
[<<moveTo 'event_work_femalesecretary_1_6_ai_accept' 'Accept her help' 90>>]<br>
[<<moveTo 'event_work_femalesecretary_1_6_ai_decline' 'Decline her help' 90>>]
</div>/*#
#desc: accept ai's offer to help you eavesdrop on manager and admin, listen to their conversation
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
/%<<clearRoomVariable>>%/
<<set $sceneVisibility = $INCOGNITO>>
<<if !$npc_ai.flags.blackmail>>
<<set $npc_ai.flags.blackmail = true>>
<<set $tmpRoomVar.blackmail = false>>
<<else>>
<<set $tmpRoomVar.blackmail = true>>
<</if>>
<<applyExperience 'bimbofication' 2 'little' $INCOGNITO>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_ai.png'>>
<div id="invframe" class="scrolltext">
<<if $tmpRoomVar.blackmail>>
Again you accept the offer from the AI.
<<else>>
You accept the offer from the AI.
<</if>>
<br><br>
<<printThought $player "I really hope this does not bite me in the ass. Though really, with my luck, I shouldn't really expect anything else... and for it to do so in some creative way I'm not expecting at all...">><br>
<br>
You nod. <br>
<br>
"@@.npc_ai;<<uc "A very good decision Unit">> <<uc $player.first_name>><<uc ". I will provide you with a live feed from the office, but I will scramble all company essential data. Such things could get you into trouble if you knew them. Everything else will be played for you.">>@@"<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
"@@.npc_admin;...all that I am asking is if you have something to do or know why <<=$player.original_first_name>>... I mean <<=$player.first_name>> has changed so much since coming to work for you. I am not accusing you of... sorry. This is all a lot to take in, and in such a short amount of time.@@"<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_admin', 'first')>>... I am pretty sure that your friend's bodytype is, in the coarsest technical sense, still physically male, but the reaction you are having right now might be the reason why she waited so long to tell you about it. It would be a lie to say I had no hand in this but I cannot go into detail since it would be a breach of trusts both contractual and personal. That said know that I am in full support of her changes. I think she has become much happier, not to mention more active, in her lifestyle by exploring sides on her she didn't even know exist. As her friend... is the problem for you her changing at all or rather the specific changes?@@"<br>
<br>
"@@.npc_admin;What the...? No, even though I was raised by Catholic parents, I have no problem with something like this at all. I mean, in theory, that's what I thought, at least. As long as it didn't concern me directly. No, that's not the reason either. I have this barber called <<=setup.getNpcName('npc_barber', 'first')>>, who just recently had his coming out. Cost him a lot of customers, but I still go there.@@"<br>
<br>
"@@.npc_manager;You still... go there.@@"<br>
<br>
"@@.npc_admin;Yes.@@"<br>
<br>
"@@.npc_manager;To a barber...@@"<br>
<br>
You can literally feel the puzzled expression on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face.<br>
<br>
"@@.npc_admin;Yes, I already told you so!@@"<br>
<br>
"@@.npc_manager;Because...@@"<br>
<br>
"@@.npc_admin;His head massages are legendary. Plus I used to sport a massive fro, back in the days. But that doesn't matter right now. You know what. You're right. I should be more supportive. Thanks for taking your time to discuss this rather private matter with me.@@"<br>
<br>
"@@.npc_manager;Finally. Errr... I mean exactly. Well, if you are ready to discuss our proposal. We'd like you to lead the department of CHRK@@"<br>
<<else>>
"@@.npc_admin;But you must know something. I know he... I know she ain't been working here for a long time, but the last time we met, <<=$player.original_first_name>>...@@"<br>
<br>
"@@.npc_manager;<<=$player.first_name>>. The name is <<=$player.first_name>> now. It is quite rude to deadname a friend, and it is all legal and official, I assure you.@@"<br>
<br>
"@@.npc_admin;Yeah... okay... whatever... <<=$player.first_name>> was still male. I mean he always had those giant hips, but he had a girlfriend and... we did a lot of stuff back together in the university, like sports and ... anyway I'm certain that he was born male.@@"<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_admin', 'first')>>... I am pretty sure that your friend's gender is, technically speaking, still physically male, but the reaction you're having right now might be the reason why she never told you about it. It would be a lie to say I had no hand in this, but I cannot go into detail, since it would be a breach of trust both contractual and personal. Let's just say that I am in full support of her change. I think she has become much more active in her lifestyle due to the changes, by exploring sides of her she didn't even know existed. As her friend... is the problem her change or rather the change itself for you?@@"<br>
<br>
"@@.npc_admin;What the...? No, even though I was raised by Catholic parents, I have no problem with something like this at all. I mean, in theory, that's what I thought, at least. As long as it didn't concern me directly. No, that's not the reason either. I have this barber called <<=setup.getNpcName('npc_barber', 'first')>>, who just recently had his coming out. Cost him a lot of customers, but I still go there.@@"<br>
<br>
"@@.npc_manager;You still... go there.@@"<br>
<br>
"@@.npc_admin;Yes.@@"<br>
<br>
"@@.npc_manager;To a barber...@@"<br>
<br>
You can literally feel the puzzled expression on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face.<br>
<br>
"@@.npc_admin;Yes, I already told you so!@@"<br>
<br>
"@@.npc_manager;Because...@@"<br>
<br>
"@@.npc_admin;His head massages are legendary. Plus I used to sport a massive 'fro, back in the days. But that doesn't matter right now.@@"<br>
<br>
"@@.npc_manager;Finally. Errr... I mean exactly. Well, if you are ready to discuss our proposal. We'd like you to lead the department of CHRK@@"<br>
<</if>>
<br>
Suddenly all you can hear is some kind of white noise.<br>
<br>
<<printThought $player "Hmm... must be information above my pay grade, weird that a department name could be so secretive.">><br>
<br>
After a short while the white noise fades and you hear normal voices again.<br>
<br>
"@@.npc_manager;...and that would conclude our proposal. I assume you read the contract we send you?@@"<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
"@@.npc_admin;Well, I have to admit I was kind of surprised by the offer. Though I have to ask, why me? Just off the top of my head <<=$player.first_name>> and <<=setup.getNpcName('npc_technician', 'formal')>> have more technical expertise then I do.@@"<br>
<br>
"@@.npc_manager;Well, <<=$player.first_name>> might have been another candidate...if it was not for that pesky incident with the <<=$player.faultcompany>> data. She is lucky to still be in the company, but there would be no way to sell the higher ups on her technical acumen. No, I can make sure she remains happily employed, but only if she remains my secretary.@@"<br>
<br>
<<printThought $player "What?">><br>
<br>
"@@.npc_manager;As for <<=setup.getNpcName('npc_technician', 'formal')>>, she may be a prodigy on certain parts of her expertise but, as is so frequently the case, that skill comes with some... quirks that do not lend themselves as well to the higher levels of corporate advancement. We are looking for the combination of strong technical chops and the skills of a natural leader, and that would be you.@@"<br>
<br>
You hear a short moment of silence...
<<if setup.getTotalValue("smart")>setup.getTotalValue("bimbofication")>>
But since there is no white noise, you think both of them are silent. You try to remember... <<=setup.getNpcName('npc_admin', 'first')>> told you about this some years ago, but you don't think this is supposed to be public information, and you're pretty sure Bob wouldn't write something like this in his resume, neither would <<=setup.getNpcName('npc_manager', 'formal')>> simply drop this so carelessly. But then again, maybe you're overanalyzing things once again.
<</if>><br>
<br>
"@@.npc_admin;Well, if that's what you're looking for, then who am I to object.@@"<br>
<br>
After that you can both of them laughing awkwardly.<br>
<br>
"@@.npc_ai;<<uc "Well, it seems like this is the end of the conversation. I hope have found the information contained satisfactory. I know I did. I will be logging off now.">>
<<if($tmpRoomVar.knownAI)>>
<<uc "Again, I would like to remind you that you should not tell anyone about our communication, or the existence of our agreement.">>
<<else>>
<<uc "By the way, I would recommend that you tell nobody about myself, this encounter or our agreement.">>
<</if>>
<<uc "And judging from your expression, I think I need to go into detail. I am not the one threatening you, merely warning you as I cannot guarantee your safety if you share your knowledge about me with the wrong person. Fare well then.">>@@"<br>
<br>
With these words the AI disperses into thin air. Looks like <<=setup.getNpcName('npc_admin', 'first')>> is about to leave <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_normal' 'Continue.' 180>>]<br>
<<else>>
"@@.npc_admin;What... yeah... I... I am sorry <<=setup.getNpcName('npc_manager', 'other')>>. I don't think I can sign the contract right now. There's simply too much going on in my head right now.@@"<br>
<br>
"@@.npc_manager;I understand, though I must say I am not too happy about this outcome. The two of you really should get your... how would your friend phrase it... get your shit together. Oh. Saying that felt oddly refreshing. Anyway, I am sorry that your friend has disrupted what I had hoped to be a productive meeting, though I do not blame her, obviously. This proposal has a window of a few days, but if you are unable, or unwilling, to fulfill this position, well, that is your decision, and your missed opportunity. Which would be a pity, but we run a well oiled machine here and cannot leave such an important position empty for long. Do we understand each other?@@"<br>
<br>
For some reason you're pretty sure she put her glasses down a little bit and looked him directly in the eyes. That always startled you, but you've known <<=setup.getNpcName('npc_admin', 'first')>> for a long time. It takes more than that to break his concentration. Then again, you managed it just few minutes ago.<br>
<br>
"@@.npc_admin;Yes, of course. I'll be back tomorrow if that is acceptable?@@"<br>
<br>
"@@.npc_manager;Of course. Normally, I would ask you to arrange an appointment with my secretary, but I think we can make an exception this time and book it myself. Very well, we will see each other soon then. A good day to you <<=setup.getNpcName('npc_admin', 'first')>>.@@"<br>
<br>
"@@.npc_admin;And to you, as well <<=setup.getNpcName('npc_manager', 'first')>>.@@"<br>
<br>
The flickering holographic impersonation of an Asian woman turns towards you.<br>
<br>
"@@.npc_ai;<<uc "Well, it seems like this is the end of the conversation. I hope you obtained valuable information from this. I know I did. Well, I will be logging off now.">>
<<if($tmpRoomVar.knownAI)>>
<<uc "Again, I would like to remind you that you should not tell anyone about our communication, or the existence of our agreement.">>
<<else>>
<<uc "By the way, I would recommend that you tell nobody about myself, this encounter or our agreement.">>
<</if>>
<<uc "And judging from your expression, I think I need to go into detail. I am not the one threatening you, merely warning you as I cannot guarantee your safety if you share your knowledge about me with the wrong person... Fare well then.">>@@"<br>
<br>
With these words the AI disperses into thin air. Looks like <<=setup.getNpcName('npc_admin', 'first')>> is about to leave <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. Now is your chance to... cower under the table?<br>
<br>
<<if setup.getWillpower($player)>0>>
<<if $player.timebased.fatigue<=70>>
<<set _text = 'Confront '+setup.getNpcName("npc_admin", "first")+'!'>>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' _text 90>>]<br>
<<else>>
[@@.link_locked;You feel too much drained to confront <<=setup.getNpcName("npc_admin", "first")>>.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You don't think you have it in you to confront <<=setup.getNpcName("npc_admin", "first")>>.@@]<br>
<</if>>
[<<moveTo 'event_work_femalesecretary_1_7_hide' 'Hide under your table' 90>>]
<</if>>
</div>/*#
#desc: decline ai's offer to help you eavesdrop on manager and admin, have disturbing fantasies about what they're doing
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
/%<<clearRoomVariable>>%/
<<set $sceneVisibility = $INCOGNITO>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_ai.png'>>
<div id="invframe" class="scrolltext">
<<if $tmpRoomVar.blackmail>>
This time you decline the offer from the AI.
<<else>>
You decline the AI's offer.
<</if>>
<br><br>
"@@.npc_ai;<<uc "A surprising decision, Unit">> <<uc $player.first_name>><<uc ". I hope you are not becoming paranoid or suspicious as to my actions, I do not bear you any ill will... still, I will respect your decision, goodbye.">>@@"<br>
<br>
You have no idea how <<=setup.getNpcName('npc_ai', 'first')>>, the heels of <<=setup.getNpcName('npc_manager', 'formal')>> having a more sharp, distinct sound to them.<br>
<br>
You attempt to get back to work but have difficulty concentrating, your mind awhile with thoughts as to what <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_manager', 'formal')>> are discussing...<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
<<printThought $player "Did I prepare him enough? I hope my changes don't affect his opinion of <<=setup.getNpcName('npc_manager', 'formal')>>, getting on her bad side could be really bad for his career...">>
<<else>>
<<printThought $player "Why haven't I talked to him about my changes? Oh, he looked so discombobulated learning about my new identity, I hope it doesn't put him off guard and cost him an opportunity...">>
<</if>>
<br><br>
Their meeting draws on leaving your mind to spin faster and faster... and in more disturbing directions. You recall your own earliest meetings with <<=setup.getNpcName('npc_manager', 'formal')>>, how from the very first she had you under her thumb, as if everything that has happened since was all but preordained... Could she have similar plans for your friend?<br>
<br>
The thought planted you are unable to stop yourself from imagining <<=setup.getNpcName('npc_admin', 'first')>> bent over for his first spanking...<br>
<br>
You cannot even picture such a thing happening, but there is no denying the attractiveness of your <<=setup.getNpcName('npc_manager', 'title')>>, or the fact that <<=setup.getNpcName('npc_admin', 'first')>> has even expressed interest in her...<br>
<br>
A new scene plays in your head, rather than bending over <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desk <<=setup.getNpcName('npc_admin', 'first')>> is lying back atop it, <<=setup.getNpcName('npc_admin', 'first')>> stradling his body, riding his big, thick cock, her hands tracing over his firm abs and sculpted pecs...<br>
<br>
Even in fantasy <<=setup.getNpcName('npc_manager', 'formal')>> is in complete control, smiling with pleasure as she sets the pace, the dichotomy between how she treats a "real" man and how she acts with you humiliating and arousing you in equal measure.<br>
<br>
As if she were powerful enough to control your very dreams <<=setup.getNpcName('npc_manager', 'formal')>> suddenly looks in your direction, smiling hungrily as <<=setup.getNpcName('npc_admin', 'first')>> lets out a manly grunt of climax.<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
Sliding to one side she beckons you closer. <<=setup.getNpcName('npc_admin', 'first')>> seems to notice you for the first time, smiling at you in recognition.<br>
<br>
"@@.npc_manager;Come here, seal our contract with your lips and lick him clean...@@" She orders.<br>
<br>
Having completely lost control of your dream you walk over, your friend neither moving nor speaking, merely smiling at you encouragingly as you lean in, your vision filling with his glistening manhood, wet with a mix of cum and your <<=ps(setup.getNpcName('npc_manager', 'formal'))>> divine juices...
<<else>>
Sliding to one side she beckons you closer. <<=setup.getNpcName('npc_admin', 'first')>> notices you for the first time but his expression is not one of recognition, he sees you as "merely" another girl, smirking at you with his trademark seductive grin.<br>
<br>
Having completely lost control of your dream you walk over, following her instructions to approach and lean in towards <<=ps(setup.getNpcName('npc_admin', 'first'))>> still-hard cock. He stares down at you without recognition as your vision fills with his glistening manhood, wet with a mix of cum and your <<=ps(setup.getNpcName('npc_manager', 'formal'))>> divine juices...
<</if>>
<br><br>
You start, almost falling out of your chair as you wake from your too-real daydream. Blushing with shame at your perverted imagination you are glad for the distraction that is the inner office door swinging open. Looks like <<=setup.getNpcName('npc_admin', 'first')>> is about to leave <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
[<<moveTo 'event_work_femalesecretary_1_8_normal' 'Continue.' 180>>]<br>
<<else>>
Now is your chance to... cower under the table?<br>
<br>
<<if setup.getWillpower($player)>0>>
<<if $player.timebased.fatigue<=70>>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Confront <<=setup.getNpcName("npc_admin", "first")>>!' 90>>]<br>
<<else>>
[@@.link_locked;You feel too much drained to confront <<=setup.getNpcName("npc_admin", "first")>>.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You don't think you have it in you to confront <<=setup.getNpcName("npc_admin", "first")>>.@@]<br>
<</if>>
[<<moveTo 'event_work_femalesecretary_1_7_hide' 'Hide under your table' 90>>]
<</if>>
</div>/*#
#desc: end of the admin gets new job event if you were prepared IEBMOTC: information transfer between member of the company
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_admin.flags.promotion = true>>
<<set $npc_admin.flags.ageofconfusion = false>>
<<set $randomEvents['elevator_home'].pushUnique({id: 'ai_mission', done: false})>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_manager.png'>>
<div id="invframe" class="scrolltext">
You take your place next to your chair looking towards the door. A few moments later the door to the inner office opens and <<=setup.getNpcName('npc_admin', 'first')>> walks out and heads straight towards you with a big grin on his face. Just before he starts to talk to you, he looks back into the door frame towards <<=ps(setup.getNpcName('npc_manager', 'formal'))>>, who followed him out of her office.<br>
<br>
"@@.npc_admin;I am allowed to talk to her about this, am I? I am not 100% sure about the IEBMOTC Paragraph of the contract...@@"<br>
<br>
A nod from your <<=setup.getNpcName('npc_manager', 'title')>> lets him continue.<br>
<br>
"@@.npc_admin;Looks like we're working together again. Well not directly together, but same company again. In a few days I'll take over my post as the official head of IT for Social Interaction Service Syndicate Inc. I still have to finish a few things at our old company, but as soon as they're done, I'll move up a few levels.@@"<br>
<br>
<<printThought $player "Well, someone sure fell up the corporate ladder. Aw, who am I kidding. He deserved it a lot more then me after that stupid incident.">><br>
<br>
You congratulate him wholeheartedly. With a wide smile he leaves the office after bidding his goodbye to the both of you.<br>
<br>
"@@.npc_manager;Well,@@", you hear a snarky remark from the side, "@@.npc_manager;can you imagine how this would have turned out if you had not talked to him beforehand? Very well done, this is the sort of forward-thinking effort that sets a great secretary apart. Back to work now, before I think about any more reason to spank that curvy butt of yours. Hmm... maybe I'll do it anyway later.@@"<br>
<br>
[<<moveTo $workEventReturn "Continue to work." 60>>]
</div>/*#
#desc: hide from admin when he comes out of manager's office
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<incrementEmotion 'anger' 'npc_manager' 10>>
<<addWorkEvent 'admin_office_visit_repeat'
'{"trigger":"morning","type":"always","chance":100,"repeat":false,"priority":100,"minTimeDiff":12}'
'{"szene":"event_work_femalesecretary_1_0_alternative","length":"30"}'
>>
<<set $npc_admin.flags.ageofconfusion = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_manager.png'>>
<div id="invframe" class="scrolltext">
You feel horrible, but there's no way you can face <<=setup.getNpcName('npc_admin', 'first')>>, not today, at least. You hide under your desk as good as you can. Since you're unable to see the door directly, you have to rely on your other senses, quieting your breathing as much as possible as you listen closely.<br>
<br>
You can hear someone leaving the office of <<=setup.getNpcName('npc_manager', 'formal')>>. Heavier footsteps followed by lighter clicks, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> distinctive stilettos. You hear voices.<br>
<br>
"@@.npc_manager;I would really like you to think this through. This could be a once in your life opportunity. As much as I respect your friendship with my employee, do not forget that this is an important decision concerning your own future <<=setup.getNpcName('npc_admin', 'first')>>. Hmmm... I would have recommended that the two of you work this out, but it seems like <<=$player.first_name>> has left her workplace unannounced. How peculiar and very out of character. I will send you an email when we can continue our negotiation.@@"<br>
<br>
"@@.npc_admin;Thank you for your sympathy. Um, well, I guess I'll be going then, now. Right now, goodbye!@@"<br>
<br>
You hear someone leave through the door into the hallway outside. The door clicks closed behind followed by the sound of light steps approaching your desk. You can see the in delicate nylons wrapped legs of <<=setup.getNpcName('npc_manager', 'formal')>> standing in front of you while you cower motionless, hoping she will leave to give you the chance to reappear without any further complications. But you never get the chance to. A single swift motion of her is enough to swoop under the table looking directly into your eyes. Her glasses are down and you can feel a certain pressure without her even saying a word.<br>
<br>
"@@.npc_manager;My sympathies are for him alone... You, on the other hand are already on my payroll, and while I do like a good cat and mouse scenario from time to time, this behaviour is unfitting for a secretary, particularly MY secretary. So get up here before I drag you out.@@"<br>
<br>
You crawl out from under the desk. Rising you attempt to straighten your displaced skirt back into position.<br>
<br>
"@@.npc_manager;This behaviour is not acceptable <<=$player.first_name>>. I expect that my secretary does everything in her power to make sure this office operates at peak efficiency and total professionalism. I work very hard to make sure things run properly and I expect my subordinates to go that extra mile as well.@@"<br>
<br>
<<if setup.getTotalValue('bimbofication')>5 || setup.getTotalValue('makeup')>3 || setup.getTotalValue('whoring')>3 || setup.getTotalValue('penis')>3 || setup.getTotalValue('cum')>3 || setup.getTotalValue('piss')>3>>
<<printThought $player "Wait... I think I have to read between the lines here...">>
<<else>>
<<printThought $player "I guess I need to be prepared to do my part!">>
<</if>>
<br><br>
"@@.npc_manager;I understand that this particular case might be a little bit more difficult for you, since you have known <<=setup.getNpcName('npc_admin', 'first')>> might be joining our ranks soon, and it would be pretty awkward if a small detail like you becoming a rather feminine SISSY secretary, stands between the two of you. If you do not manage to resolve your problems soon there could be consequences. For the both of you. If I judge your character correctly I believe you would not let that happen to a friend, now, will you? Now then, please continue with your work while I try to explain to the higher ups why the contract signing needs to be delayed. Oh, such an unnecessary hassle. Oh well, I will blow off some steam later. Using your butt. If you catch my drift.@@"<br>
<br>
[<<moveTo $workEventReturn "Return to the office." 60>>]
</div>/*#
#desc: confront admin when he comes out of manager's office
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<applyFatigue $player 30>>
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.satisfaction)+($npc_manager.affection)>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_manager_left.png' '' './images/characters/npc_admin_right.png' ''>>
<div id="invframe" class="scrolltext">
You stand next to your office table, dressed the way you are, but doing your best to project confidence. A few moments later the door to the inner office opens and <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_manager', 'formal')>> walk out. It looks like he mumbles something like "@@.npc_admin;bye@@" and tries to leave the antechamber at a smart pace, but you call out to him and grab his arm.<br>
<br>
A symbolic rather than functional gesture grabbing <<=setup.getNpcName('npc_admin', 'first')>> by the arm is like trying to stop a truck with your bare hands. You remember back in the days when the two of you were still students you tried martial arts together with him. You recall that one-sided was being generous towards your efforts. So if he does not want to be stopped he simply will not be stopped.<br>
<br>
He stops. Whether because of the reflexive gentleness he typically displayed or because he sensed the depth of effort and focus you placed into one arduous gesture, you somehow manage to halt his advance. You look towards your boss <<=setup.getNpcName('npc_manager', 'formal')>>, and ask her for a short break.
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.satisfaction+$npc_manager.affection)>>
She looks back angrily at you.<br>
<br>
"@@.npc_manager;Your work ethics are lacklustre and now you want to do this during your working hours? Since I want this farce to be over as soon as possible, I will allow it, but be prepared that we will have a lengthy... discussion about this later. Do I make myself clear?@@"<br>
<br>
<<printThought $player "More then clear... crystal clear...">><br>
<br>
<<else>>
She smiles back at you and nods.<br>
<br>
"@@.npc_manager;You have five... ten... you know what? Take what you need. Go, sort your things out <<=$player.first_name>>. God knows, both of you will be a lot more useful if you get your shit together. That does really feel oddly refreshing. I should stop saying such profanities while I still can.@@" Her voice trails off as she turns and walks back into her private office. "@@.npc_manager;Maybe we can still sign this contract today, that would be wonderful.@@"<br>
<br>
<<printThought $player "She can be oddly charming, during her nice phases... If I wasn't her slave I could almost see myself falling for her.">><br>
<br>
<</if>>
You thank her and manage to finally say a few words into the direction of <<=setup.getNpcName('npc_admin', 'first')>>. It isn't much, a variation on "You! Me! Coffee! Now!" But hey, baby steps.<br>
<br>
He still doesn't seem able to look at you, glancing to the side, and for a moment your heart sinks, as it looks like you didn't manage to get through to him. Finally he turns in your direction where you have put on your sulkiest girly face, which manages to put a smile on his lips. Finally he backs down and nods to your proposal.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_thetalk' 'Go to the Cafe.' 360>>]
</div>/*#
#desc: talk with admin at cafe 52 about your situtation
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 6 'unbelievable' $SEEN_FRIEND>>
<<set $npc_admin.flags.firstsawfemale = "office">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_12'
12
'event_admin_theme_female_clothes'
false
'theme_admin_transition_header'
>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<include enterroom>>
<<initRoom>>
<<createBGR './images/locations/company_cafe.png' './images/characters/npc_barista_left.png' '' './images/characters/npc_admin_right.png' ''>>
<div id="invframe" class="scrolltext">
You head towards Coffee Shop 52, collecting some astonished gazes from other people working on the same floor. It takes you a few seconds to realise that you're still dragging <<=setup.getNpcName('npc_admin', 'first')>> behind you, the size differential combined with your ultra-feminine appearance making for what is surely quite the amusing display.<br>
<br>
You bite on your lower lip and power through until you make it to the Coffee Shop. Luckily for you the shop is almost empty. Less lucky for you, depending on how you look at it, the serving barista is <<=setup.getNpcName('npc_barista', 'first')>>. For the moment, however <<=setup.getNpcName('npc_admin', 'first')>> is still distracted, his pupils wandering around like crazy as he scans over your body, still obviously trying to puzzle out what's happening. He finally exhales as you gently place your hand on his, his gaze now focusing on your face.<br>
<br>
"@@.npc_admin;So... would you mind telling me what is going on? Am I really that oblivious to reality, that I don't notice that one of my closest friends starts transitioning? Or is there something else going on. I mean, don't turn around, but the barista behind the counter is wearing some kind of fetish outfit, and while we're at it, your outfit would have raised a few brows down at Cloud Data Service, and that would have been true even if it was <<=setup.getNpcName('npc_technician', 'first')>> or one of the other girls wearing it! I tell you, there's something going on with this company. I simply don't know what yet. So, are you going to share your story or not?@@"<br>
<br>
Still mindful that you're under that damn NDA you try to tell <<=setup.getNpcName('npc_admin', 'first')>> your story as best you can. You explain how it started - with some rather odd coincidences forcing you to wear female underwear. Hedging past your managers involvement you walk him through how one thing lead to another and somehow, without mentioning the disciplinary measures, you found yourself starting to like it.
<<switch $player.flags.fem_style.female>>
<<case "obedient" "forced">>
You conclude with how your new Boss helped you with the recent decision to change your name.
<<case 'money'>>
You conclude whit how, what with one thing and another, it ended up making sense to change your name as well.
<<case "voluntary">>
You conclude with how, after all the other changes, it just felt appropriate to change your name as well.
<<default>>
ERROR: unexpected fem_style: <<=$player.flags.fem_style.female>>
<</switch>>
<br><br>
<<printThought $player "<<=ps(setup.getNpcName('npc_manager', 'formal'))>> is right. I could have left any time I wanted. I could have looked for any other job. But I liked the attention she gave me, that being like this gives me, even though it hurts sometimes. And I really like dressing feminine!">><br>
<br>
You assure him, that you would have told him the next time you two would have met, but that you just hadn't gotten the chance yet.<br>
<br>
"@@.npc_admin;Okay, so let me try to wrap my head around this: Technically speaking you've still got male bits... down there, you simply dress feminine. And you already got a name change. That's rather sudden. And <<=$player.first_name>> of all names... I dunno, this is just, like, a whole lot to take in, y'know!@@"<br>
<br>
"@@.npc_barista;Hiya!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> states, somehow approaching the two of you without either one of you noticing, introducing herself suddenly with her happy-go-lucky attitude.<br>
<br>
"@@.npc_barista;I'm <<=setup.getNpcName('npc_barista', 'nickname')>>, will you be wanting to order anything today?@@"<br>
<br>
<<=ps(setup.getNpcName('npc_admin', 'first'))>> expression goes blank and he continues without losing a beat, "@@.npc_admin;Forget I said anything.@@"<br>
<br>
You both turn towards her.<br>
<br>
"@@.npc_barista;You know, you should place your orders back there at the coun... coun... at the bar. But there's not a lot going on today, so I thought why not take an order like a regular waitress. It was either this or hole service, and I can do hole service later... I suppose. So what can I get you?@@"<br>
<br>
Despite the fact that she's just standing there her substantial bosom continues to bounce slightly, and distractingly.
<br>
<<printThought $player "Wat?">><br>
<br>
"@@.npc_admin;See, this is exactly the strangeness I am talking about. Everything above floor 50 is shrouded in mystery. How can a company this big manage to get that little exposure?@@" he says to you, turning towards the barista, "@@.npc_admin;<<=setup.getNpcName('npc_barista', 'nickname')>>. Hi. Uhm, I'd like to have a black tea, no sugar, and what do you want <<=$player.original_first_name>>? Sorry, I meant <<=$player.first_name>>. God, this is going to take ages to get used to!@@"<br>
<br>
You order a latte macchiato, as usual. <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> interruption actually managing to break the ice, the two of you continue to talk for a while, and you manage to convince him that there is no hidden agenda of the company slowly transforming everyone into sex crazed maniacs. Not because you know it's true, or even believe yourself that no such plot exists, but for his safety. You have no idea how he would react if you told him about the disciplinary measures... well that is only true to a certain degree. You have a faint idea how he'd react, and that might put both of you in danger, so you try your best to satisfy his curiosity without giving too much away. <<=setup.getNpcName('npc_barista', 'nickname')>> brings you your order after a few minutes, but somehow manages to drop her empty tray on the way back to the counter, followed by the words "@@.npc_barista;Oh silly me, I can be such a klutz sometimes, teehee.@@"<br>
<br>
You think nothing of it, until she bends down in her usual hyper-sexual way. You can't help but see what she's showing off, though you are relived to note that she is not wearing her usual string tanga/plug combination. But the sheer see-through nylon panties she's wearing isn't exactly subtle with how little they leaves to the imagination.<br>
<br>
<img src="./images/others/barista_bend_over_2.png" height="328" width="804"><br>
<br>
The way she wiggles her hips leaves little to interpretation. This show is intended to catch <<=ps(setup.getNpcName('npc_admin', 'first'))>> attention, like some strange kind of mating ritual. Good thing you know exactly how to defuse the situation, even though you're not doing it on purpose, spluttering coffee all over your friend before he catches a glimpse of what's going on.<br>
<br>
"@@.npc_admin;What the heck? What was that for?@@"<br>
<br>
You apologise vigorously, trying to dry his face with some napkins from the table. You excuse yourself by making up like you just had a little funny snap at the whole absurdity of this whole situation. Your plan somehow works, since he kind of smiles and shakes his head before excusing himself to leave for the toilet.<br>
<br>
"@@.npc_admin;Listen, I'm sure I'll have more questions later but I think we've taken enough time for today. I don't think we should let <<=setup.getNpcName('npc_manager', 'other')>> wait any longer. I'll make a quick detour to the bathroom to clean myself up. You better head back to your office.@@"<br>
<br>
You exit the Coffee Shop leaving behind a slightly confused <<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
"@@.npc_barista;And who is going to pay for these beverages? Oh, right, the company does. Silly me.@@"<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_return_office' 'Return to your Antechamber .' 660>>]
</div>/*#
#desc: return from meeting with admin, manager thanks you for your efforts
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You return to your desk and send <<=setup.getNpcName('npc_manager', 'formal')>> a short message, that you're back.<br>
<br>
"@@.npc_manager;
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.satisfaction)+($npc_manager.affection)>>
Well, that took you long enough.
<<else>>
So, the two of you manage to get your issues all sorted out?
<</if>>
Anyway, what about <<=setup.getNpcName('npc_admin', 'first')>>? We still have a contract to sign!@@"<br>
<br>
You inform her that he will be here in a moment, leaving out the details of precisely why he needed to swing by the restroom.<br>
<br>
"@@.npc_manager;Very good. Inform me once he arrives! And <<=$player.first_name>>? Good work. Even though it was mostly due to your prior friendship, from my point of view you did everything in your power to make sure we can sign this contract today. Excellent job.@@"<br>
<br>
This sudden compliment causes you to blush, good thing you were communicating via instant messenger rather than face to face.<br>
<br>
"@@.npc_manager;That is exactly the kind of behaviour I expect of you in the future as well. Do everything you can to make sure we get our contracts signed.@@"<br>
<br>
<<printThought $player "What is that supposed to mean?">><br>
<br>
You continue with your usual work, when you hear the someone knocking on the door.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_9' 'Open the door.' 120>>]
</div>/*#
#desc: admin returns, welcome him into office, he signs new contract
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_admin.flags.promotion = true>>
<<set $randomEvents['elevator_home'].pushUnique({id: 'ai_mission', done: false})>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_0'
0
'event_psychiatrist_session_admin_promotion'
false
'theme_psychiatrist_admin_header'
>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) './images/characters/npc_manager_left.png' '' './images/characters/npc_admin_right.png' ''>>
<div id="invframe" class="scrolltext">
This time you manage to reach the door calmly, without causing a scene.
<<if setup.getItemObjFromType("shoes")["heels"] != null>>
<<if setup.getTotalValue('heels') < setup.getItemObjFromType("shoes")["heels"].difficulty>>
Your grace compared to the first time is not because you suddenly got good at walking in heels, but because you are sure to walk nice and slow.
<<else>>
Reflecting on your prior clumsiness it's something of a miracle how swiftly you have near-mastered walking in heels.
<</if>>
<<else>>
Not wearing heels makes it significantly easier to get to the door, though a small voice in the back or your head chides you for your lackadaisical footwear choice.
<</if>>
<<=setup.getNpcName('npc_admin', 'first')>> is waiting on the other side. You ask him to step inside in your most official tone, explaining that <<=setup.getNpcName('npc_manager', 'formal')>> is already waiting.<br>
<br>
"@@.npc_admin;Mistress?@@"<br>
<br>
You suppress a wince and correct yourself to Manager, of course, and send him right inside. Remembering the earlier compliment you try to continue working but a lot of thoughts are rushing around in your head. Did this all really just happen? Did you let it happen? Did you... want it to happen? The swirling thoughts toast your concentration and you end up unable to focus as you mentally go through a whole raft of strange scenarios. After a while <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_manager', 'formal')>> step out of her office. From the formal, but happy, smile on her face everything went the way she wanted to.<br>
<br>
"@@.npc_admin;Well, looking forward to working with you <<=setup.getNpcName('npc_manager', 'first')>>.@@"<br>
<br>
"@@.npc_manager;The feeling is mutual. <<=setup.getNpcName('npc_admin', 'first')>> will be joining our ranks as the junior head of the Department of Information Technology. This is technically only a temporary position as the actual Head of Department is almost ready for retirement, we need someone to be trained to be her successor.@@"<br>
<br>
Well, you start looking for your jaw somewhere on the ground, since you think it might have landed there. What a turn... You getting a job as a secretary while your best friend will be the head of the IT Department for one of the biggest companies on the planet.<br>
<br>
<<printThought $player "Okay, from now on, he pays for the drinks at the Usual Place!">><br>
<br>
You escort your friend the short way to the door, as befits a secretary such as yourself. Shaking his hand and closing the door behind him you you turn around to catch a rather rare sight: your boss, <<=setup.getNpcName('npc_manager', 'formal')>>, biting her lip, looking almost.... cute?<br>
<br>
"@@.npc_manager;What are you staring at? He has a rather sexy butt, does he not? Do not even try to deny that. Also, he seems very confident in what he does, I can respect that. Now make haste and get back to your work, <<=$player.first_name>>@@".<br>
<br>
[<<moveTo $workEventReturn "Continue to work." 60>>]
</div>/*#
#desc: phase 2 morning, call from manager if late, receive sissy nameplate,
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if $roomchange == true>>
<<setScene>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.at_office = ($beforetasklocation == "room_office_sissy_secretary_work_morning_start" || $beforetasklocation == "room_office_sissy_secretary" || $beforetasklocation == "room_office_sissy_secretary_work_morning_work")>>
<<set $scene.start = false>>
<<set $scene.seriousoffense = false>>
<<set $scene.manual = true>>
<<set $scene.secondtry = false>>
<<include inspectionData_clothes>>
<<set $scene.pink_secretary_outfit_equipped = (setup.getItemFromType('shirt') == 'satin_blouse_pink' && setup.getItemFromType("legwear") == 'skirt_pink_leather' && ['pink_mary_janes', 'pink_court_shoes', 'platform_wedge_heels', 'pink_thigh_highs'].includes(setup.getItemFromType("shoes")))>>
<<useClothSetPush 'p2_daily_evaluation_clothes'>>
<<if !$scene.at_office>>
<<set $npc_manager.criticalanger+=1>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<set $scene.repeat = true>>
<<set _x = setup.deleteCurrentTask("manager_morning_inspection_task_repeat")>>
<</if>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<else>>
<<set $scene.secondtry = $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<if $scene.secondtry>>
<<set $scene.taskComplete = setup.checkTaskUntimedComplete('manager_morning_inspection_task_repeat')>>
<<else>>
<<set $scene.taskComplete = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<</if>>
<<if $npc_manager.stage < 2>>
<<set $npc_manger.stage = 2>>
<<set $scene.start = true>>
<</if>>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<storeVisual $player $npc_manager>>
<<if $player.work.startTime.getUTCHours() == 8 && $player.work.startTime.getUTCMinutes() == 0 && !$scene.workEarly>>
<<set $scene.preciselyOnTime = true>>
<</if>>
<<include inspectionData_cleanBody>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<</if>>
<</if>>
<<if $scene.at_office>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<else>>
<<set $player.location = "Phonecall">>
<</if>>
<<if $scene.at_office>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<<else>>
<<createBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.at_office>>
<<if $scene.start>>
You enter the antechamber that is "your" office as usual. Approaching your desk you notice something sitting on it that wasn't here the last time. On nice, looks like you've got a name plate now. It's made of plexiglass and has a nice, shiny finish. Your name seems to be engraved inside the glass using vitreography, very professional looking. "~ <<=$player.first_name>> <<=$player.last_name>> ~" and a little smaller "Sissy Secretary" underneath it.<br>
<br>
<<if setup.getTotalValue('feminization')>=6 && setup.getTotalValue('submission')>=6>>
<<printThought $player "Well, I am a Secretary for Social Interaction Service Syndicate LTD, so I guess Sissy Secretary is the proper title. I thought <<=setup.getNpcName('npc_manager', 'formal')>> said that was just a joke name, though... I guess I am starting to become a Sissy Secretary anyway... so...">><br>
<<elseif setup.getTotalValue('humiliation')>6>>
<<printThought $player "Ugh, but I've endured more humiliating things. Not worth risking discipline over, let her have her little joke, I'm sure it'll be fine...">><br>
<<else>>
<<printThought $player "Oh come on! Really?">><br>
<br>
You try to move the plate, but it seems to be directly mounted to the desk. Even more frustrating is that it is right near the edge, with no room to put something in front of it to obscure the sight.<br>
<</if>>
<br>
Your chair has been replaced by a newer model as well. Looks expensive, since it's made of leather. And it's pink. At least the leather is.<br>
<br>
<</if>>
<<if !$scene.start && $scene.preciselyOnTime>>
As you rush in the door of the office you find <<=setup.getNpcName('npc_manager', 'formal')>> standing with phone in hand. Slowly checking the time she stares at you for a moment and then nods.<br>
<br>
"@@.npc_manager;Eight o'clock on the nose... A good secretary would aim to be early to set herself up for a more productive day, but you did walk through the door on time... technically.@@"
<<elseif $scene.secondtry>>
Stepping through the door for the second time today you find <<=setup.getNpcName('npc_manager', 'formal')>> lurking in wait, her impatient expression communicating her annoyance at your earlier failure.
<<else>>
Your daily routine is getting more efficient the longer you work as a secretary. You start getting ready for your workday by getting all your office utensils in order, booting up your laptop and getting a nice, big cup of hot, steamy coffee. Dead on the hour <<=setup.getNpcName('npc_manager', 'formal')>> appears in the doorway of her office.
<</if>>
<br><br>
<<if !$npc_manager.stagevalues[2].femalesecretary && $scene.gender == "female">>
Laying eyes on you, or, to be precise, your clothing, her face blossoms into a smile.
<<switch $scene.clothes>>
<<case 'female_formal'>>
"@@.npc_manager;First off, let me say that I love this outfit. I, of course, knew that merely reducing the masculinity of your clothing would not be long-term sufficient but the fact that you came to the same conclusion and made the appropriate adjustments on your own... well, it is simply lovely. That said, well... it is a bit too formal for day to day wear but I think I have the perfect replacement@@"<br>
<<case 'female_office'>>
"@@.npc_manager;First off, let me say that I love this new choice of clothing. I, of course, knew that merely reducing the masculinity of your clothing would not be long-term sufficient but the fact that you came to the same conclusion and made the appropriate adjustments on your own... well, it is simply lovely. Going forward I will, of course, be expecting you to dress similar - in full feminine attire, top to bottom. And on that well... I think I have just the perfect thing for you...@@"<br>
<<case 'female_casual'>>
"@@.npc_manager;First I want to state that I am just oh-so-happy for you to have comes to the realization that dressing in fully feminine clothing is the way to go. I admit, I came to that conclusion just about the first time I laid eyes on you but I did not want to push you too fast. Given that you have taken the plunge on your own, well... perhaps I was overly cautious. That said well...@@" She shakes her head "@@.npc_manager;your current style choice is just a bit too casual and laid back for the office. Being my SISSY secretary is a representative position, after all.@@"
<<default>>
ERROR: unhandled clothes: <<=$scene.clothes>>
<</switch>>
<br>
You blush at her compliment as she walks to a cabinet at the back of her office. Smiling back over her shoulder she winks at you before opening the cabinet to retrieve a shiny pink bag. Though you do not recognise the logo on the side you judge it to be from some sort of fancy fashion shop. Walking back she hands it to you with a smile.<br>
<br>
[<<moveTo "event_manager_voluntary_pink_outfit_1" "Look in the bag.">>]
<<else>>
<<include inspectionText_clothes>>
<<include inspectionText_cleanBody>>
<<if $scene.seriousoffense>>
You reflexively start to remove your clothes but she shakes her head. "@@.npc_manager;I am sorry, my dear but, as you are, you at quite unprepared to perform your the duties of SISSY secretary.@@"<br>
<br>
You start to object that you can totally work like this but she holds up a hand to silence you.<br>
<br>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<if $npc_manager.criticalanger>=5>>
She sighs. "@@.npc_manager;Well, it looks like this is it - you have used up your final chance and, after two tries this morning! Have proven yourself unfit to be continued to be employed as a SISSY secretary. She smirks as her eyes drifts to your hips. I am sorry to see you go but at least I will be able to console my self a little in enjoying watching you leave. Good bye <<=$player.first_name>>@@"<br>
<br>
You try to bargain with her but there is no point, gathering your things and heading for the door only for her to suprisingly stop you. "@@.npc_manager;Sorry, but policy states that you must be escorted out by a member of our security team.@@"<br>
<br>
A moment later and
<<if $npc_retention.flags.stage > 0>>
<<=setup.getNpcName('npc_retention', 'formal')>> appears in the doorway looking all-business.
<<else>>
a stern looking man in a quasi-police style uniform appears in the doorway.
<</if>>
"@@.npc_retention;You called for an ejection?@@" He states formally as he passes your now ex-<<=setup.getNpcName('npc_manager', 'formal')>> some paperwork to sign.<br>
<br>
Signing it she hands it back before walking over to you, cupping your chin with one hand and looking into your face as if she's trying to take a mental picture. "@@.npc_manager;Goodbye, my dear... until we meet again.@@"<br>
<br>
[<<moveTo "game_over_stage_2_fail" "Continue." 60>>]
<<else>>
"@@.npc_manager;Zip it, sissy. We already had this discussion and yet you have utterly failed to address things to my satisfaction. You may return home for the remainder of the day - I advise you to spend it considering your future. I consider this to be your <<printNumber $npc_manager.criticalanger>> offense. Five of those and your time here under my employee will be at a permanent end.@@"
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_home_second" "Leave." 60>>]
<</if>>
<<else>>
"@@.npc_manager;No, no; you must remember that you work in a representative position. DOING the work is only part of the equation, doing it in the proper manner, and looking right in the process... well, that is easily as important as mere end-of-day results. Thus I am afraid I must send you home. I will expect you back within the hour with you having sorted out these... problems.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_home_first" "Leave." 60>>]
<</if>>
<<else>>
<<if $scene.compareVisuals!="">>
"@@.npc_manager;<<=$scene.compareVisuals>>. Please follow me into my office so we can discuss your progress with the advanced tasks I have assigned you lately.@@"<br>
<<else>>
"@@.npc_manager;<<=$player.first_name>>, follow me into my office, so we can discuss your progress with the advanced tasks I have assigned you lately.@@"<br>
<</if>>
<br>
[<<moveTo "event_manager_daily_check_stage_2_1" "Follow her." 60>>]
<</if>>
<</if>>
<<else>>
<<if $scene.secondtry>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>, what do you think you are doing? I sent you home with plenty of time to fix your uniform situation and yet you have failed to return. No, do not bother with excuses I am fed up with you, go ahead and stay home but know that this is your <<printNumber $npc_manager.criticalanger>> offense.
<<if $npc_manager.criticalanger < 5>>
Once you reach five I am afraid I will have to let you go. Please take this more seriously! Please take this more seriously and endeavour to show up on time, and properly attired, <<if $now.getUTCDay() == 5>>monday<<else>>tomorrow<</if>>.
<<else>>
I am sorry, but you have stepped out of line once to often. Consider your contract terminated!
<</if>>
@@"
<<else>>
<<if $scene.repeat>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not back to your office by 9 o'clock.<br>
<br>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;Did you think I had given you the day off? No, I expected you back and properly attired to start work... but it is too late for that now. Go ahead and take the day off, spend your time thinking about the changes. Note that this is your <<printNumber $npc_manager.criticalanger>> offense. Once you reach five I am afraid I will have to let you go. Please take this more seriously!@@"
<<else>>
"@@.npc_manager;Unfortunately this is too many serious offenses for me to ignore. Consider your contract terminated. Good day, <<=$player.first_name>>.@@"
<</if>>
<<else>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not being in your office at 8 o'clock.<br>
<br>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>! Where the hell are you? Do you have any idea what time it is? Apparently not, because if you had any clue how to read a clock you would be seated in front of your workstation right now.@@"<br>
<br>
You hear her take a deep breath over the phone, she seems to calm slightly. Unfortunately, as you have already figured out, her calm after the storm is more often a lot more terrifying then the storm itself.<br>
<br>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. No, do not bother coming in today; punctuality is a pillar of society and if you cannot uphold such well... you are useless to me as a secretary. Spend the day resting and doing whatever it takes so that this tardiness does not re-occur.@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. This is your <<printNumber $npc_manager.criticalanger>> offense. I am sorry, but you have stepped out of line once to often. Consider your contract terminated!@@"
<</if>>
<</if>>
<</if>>
<br><br>
She hangs up.<br>
<br>
<<if $npc_manager.criticalanger >= 5>>
[<<moveTo 'gameover_grue' "Hang up." 0 "<<set $phonecall = true>>">>]
<<else>>
[<<moveTo $beforetasklocation "Hang up.">>]
<</if>>
<</if>>
<<initRoom>>
</div>/*#
#desc: morning strip for inspection, phase 2
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _noPanties = false>>
<<set _changedOutfit = false>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if setup.isBodySlotVisible('penis')>>
<<set _noPanties = true>>
<<elseif setup.checkWornListTag(["underwear","stockings","garter"],"or")>>
<<if ($scene.cage != setup.getItemFromType("cage")) || ($scene.bra != setup.getItemFromType("bra")) || ($scene.panties != setup.getItemFromType("panties")) || ($scene.stockings != setup.getItemFromType("stockings"))>>
<<set _changedOutfit = true>>
<<else>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_2_2">>
<</if>>
<<elseif setup.checkWornListSpecific(["panties","stockings"])==true>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_2_2">>
<</if>>
<<if $roomchange == true>>
<<set $scene.flashed = false>>
<</if>>
<<if _noPanties || _changedOutfit>>
<<if !$scene.flashed>>
<<applyExperience 'humiliation' 13 'little' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 5 'almost' $SEEN_FRIEND>>
<<set $npc_manager.stagevalues[2].frisky+=1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if _noPanties>>
"@@.npc_manager_dom;<<=$player.first_name>>, really, this again? Please, put your underwear back on, unless you want me to demonstrate one of the many amusing things I can do to your little sissy clitty. Amusing for me that is. For you, perhaps not so much.@@"<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. Why did I do that?">>
<<elseif _changedOutfit>>
"@@.npc_manager_dom;<<=$player.first_name>>, stop this foolishness at once! I saw how you changed underwear right in front of me!@@"<br>
<br>
Her voice snaps like a whip and you wince as if struck.<br>
<br>
"@@.npc_manager;While you put back your original underwear I will be thinking about your next disciplinary measure.@@"
<<else>>
"@@.npc_manager;Now, be a good sissy and close the door behind you. We would not want to be disturbed with this, now would we? Very good. Now, please <<=$player.first_name>>, if you would kindly remove all your clothing besides your underwear. Thank you.@@"<br>
<br>
<<if $scene.cage != "">>
<<printThought $player "I've caged my <<getWordMyPenis $player>>, just as ordered!">>
<<else>>
<<printThought $player "Oh no! I'm not wearing a chastity cage!">>
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_1a" "Comply and do as you are told.">>]
<<hint $options "You can still do this manually.">><br>
<</if>>
</div>/*#
#desc: shortcut remove clothes for morning inspection, phase 2
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<removeEverythingButUnderwear $player $now>>
<<if $roomchange == true>>
<<if $scene.cage == "">>
<<set $scene.return = "event_manager_daily_check_stage_2_2">>
<<initRoom>>
<<moveTo "event_manager_daily_check_forgot_cage">>
<</if>>
<<set $scene.manual = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
As usual you take off your clothes and nicely fold them on the floor so as to present yourself to <<=setup.getNpcName('npc_manager', 'formal')>> wearing only your undergarments.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_2" "Continue" 30 >>]
</div>/*#
#desc: phase 2 morning inspection, assessment, and punishment
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.score = 0>> /%1 point for underwear, 1 for being caged properly, 1 each for clean and "correct" clothing %/
<<set $scene.happy = false>>
<<set $scene.underwearStyle = "">>
<<set $scene.bonus_gift = "">>
<<set $scene.good_girl_namechange = false>>
<<set $scene.forced_gift = "">>
<<set $scene.seriousoffense = false>>
<<if $scene.manual>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<include inspectionData_cleanClothes>>
<<include checkSissyUnderwear>>
<<include inspectionData_underwear>>
<<if ($scene.gender=='male' || $scene.formal=='casual') && !($npc_manager.flags.good_girl.got_pink_secretary || $npc_manager.flags.bad_girl.got_pink_secretary)>>
<<set $scene.forced_gift = 'forced_pink_uniform'>>
<<elseif setup.checkItemOwned("advance_chastity_cage_key") && !$npc_manager.flags.took_adv_key>>
<<set $scene.forced_gift = 'adv_chastity_key'>>
<<set $scene.inWardrobe = setup.inWardrobe('advance_chastity_cage_key')>>
<<elseif $npc_manager.flags.party.first_attend && !$npc_manager.stagevalues[2].femalesecretary>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set $scene.bonus_gift = 'female_upgrade'>>
<<elseif $player.flags.fem_style.name == "" && $npc_manager.flags.good_girl.got_sissy_underwear && $npc_manager.flags.good_girl.got_pink_secretary>>
<<set $scene.good_girl_namechange = true>>
<<set $scene.bonus_gift = 'good_girl_name_change'>>
<<elseif $player.timebased.locked_cage_voluntarily >= (8*3600) && $npc_manager.flags.hascagekey && !$npc_manager.flags.good_girl.got_sissy_underwear>>
<<set $scene.bonus_gift = 'sissy_underwear'>>
<<elseif $scene.taskComplete && $npc_manager.stagevalues[2].femalesecretary && setup.getTotalValue("feminization") > 10 && !($npc_manager.flags.good_girl.got_pink_secretary || $npc_manager.flags.bad_girl.got_pink_secretary)>>
<<set $scene.bonus_gift = 'good_girl_pink_uniform'>>
<<elseif $scene.taskComplete && !$npc_manager.stagevalues[2].makeup && $now.getUTCDay() != 5>>
/% Don't trigger on friday because there's no lunch %/
<<if $scene.pink_secretary_outfit_equipped && $scene.makeup == "">>
<<set $scene.bonus_gift = 'makeup_pink_secretary'>>
<<elseif $scene.makeup == "nomakeupmakeup">>
<<set $scene.bonus_gift = 'makeup_nomakeup'>>
<</if>>
<</if>>
<<include inspectionData_chastity>>
<<include inspectionData_makeup>>
<<if !$npc_manager.stagevalues[2].makeup && $scene.makeup != "" && $scene.makeup != "nomakeupmakeup">>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set $scene.first_makeup = true>>
<</if>>
<</if>>
<<if setup.checkPlayerDressed($player) && setup.checkOutsideDecency($player)>>
<<if !($scene.formal=='casual' && ($npc_manager.stagevalues[2].appeared_casual==1))>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_2_4'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Let us have a closer look at you, shall we, <<=$player.first_name>>?@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> moves closer to you, adjusting her glasses.<br>
<br>
<<include inspectionText_underwear>>
<<include inspectionText_chastity>>
<<include inspectionText_cleanClothes>>
<<if $scene.seriousoffense>>
<<if $scene.unclean>>
<<=setup.getNpcName('npc_manager', 'formal')>> wrinkles her nose and shakes her head.<br>
<br>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<if $npc_manager.criticalanger>=5>>
She sighs. "@@.npc_manager;Well, it looks like this is it - you have used up your final chance and, after two tries this morning! Have proven yourself unfit to be continued to be employed as a SISSY secretary. She smirks as her eyes drifts to your hips. I am sorry to see you go but at least I will be able to console myself a little in enjoying watching you leave. Good bye <<=$player.first_name>>@@"<br>
<br>
You try to bargain with her but there is no point, gathering your things and heading for the door only for her to suprisingly stop you. "@@.npc_manager;Sorry, but policy states that you must be escorted out by a member of our security team.@@"<br>
<br>
A moment later and
<<if $npc_retention.flags.stage > 0>>
<<=setup.getNpcName('npc_retention', 'formal')>> appears in the doorway looking all-business.
<<else>>
a stern looking man in a quasi-police style uniform appears in the doorway.
<</if>>
"@@.npc_retention;You called for an ejection?@@" He states formally as he passes your now ex-<<=setup.getNpcName('npc_manager', 'formal')>> some paperwork to sign.<br>
<br>
Signing it she hands it back before walking over to you, cupping your chin with one hand and looking into your face as if she's trying to take a mental picture. "@@.npc_manager;Goodbye, my dear... until we meet again.@@"<br>
<br>
[<<moveTo "game_over_stage_2_fail" "Continue." 60>>]
<<else>>
"@@.npc_manager;Zip it, sissy. We already had this discussion and yet you have utterly failed to address things to my satisfaction. You may return home for the remainder of the day - I advise you to spend it considering your future. I consider this to be your <<printNumber $npc_manager.criticalanger>> offense. Five of those and your time here under my employee will be at a permanent end.@@"
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_home_second" "Leave." 60 "<<useClothSetPop 'p2_daily_evaluation_clothes' $player $now>>">>]
<</if>>
<<else>>
"@@.npc_manager;No, no; you must remember that you work in a representative position. DOING the work is only part of the equation, doing it in the proper manner, and looking right in the process... well, that is easily as important as mere end-of-day results. Thus I am afraid I must send you home. I will expect you back within the hour with you having sorted out these... problems.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_home_first" "Leave." 60 "<<useClothSetPop 'p2_daily_evaluation_clothes' $player $now>>">>]
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> sighs.<br>
<br>
"@@.npc_manager;Proper underwear was literally the first requirement I gave you and here you stand before me....@@" She shakes her head. "@@.npc_manager;Take them off, I will NOT have you running around all day harboring such concealed shame. Who knows what long-term damage has been incurred just by you wearing them this long?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_wrong_underwear" "Remove your underthings" 360>>]
<</if>>
<<else>>
<<if $scene.stayed_in_chastity>>
<<if $npc_manager.flags.good_girl.stayed_in_chastity_voluntarily==1>>
At first you think she's baring her fangs at you, and you instinctively try to take cover, but then you realise it's her attempt at a gleeful girlish grin.<br>
<<else>>
You think once more that she is very happy about something, as <<=setup.getNpcName('npc_manager', 'formal')>> beams at you with almost girlish glee.<br>
<</if>>
<br>
<<if $npc_manager.flags.good_girl.stayed_in_chastity_voluntarily==1>>
"@@.npc_manager;Oh <<=$player.first_name>>, my dear, dear Sissy. You have stayed in chastity, even though you could have your key back any time. I think this is the moment where my heart would burst with joy, if I had one!@@"<br>
<br>
<<printThought $player "Wait, what?">><br>
<br>
"@@.npc_manager;Anyway...@@"
<<else>>
"@@.npc_manager;Oh <<=$player.first_name>>, again, you have proven to be worthy of the title "Sissy Secretary," by staying in chastity for the
<<switch $npc_manager.flags.good_girl.stayed_in_chastity_voluntarily>>
<<case 2>>
second time.
<<case 3>>
third time. Third time's a charm.
<<case 4>>
fourth time. We are finally getting there!
<<case 5>>
fifth time. I am so proud of you!
<<default>>
well... to be honest, I have lost count. Perfection.
<</switch>>
Anyway...@@"
<</if>>
<br><br>
"@@.npc_manager;I expect further such exemplary behaviour from now on.@@"<br>
<br>
<</if>>
<<if !$scene.first_makeup && $npc_manager.stagevalues[2].makeup>>
<<include inspectionText_makeup>>
<<elseif !$npc_manager.stagevalues[2].makeup && $scene.makeup == "nomakeupmakeup" && $now.getUTCDay() == 5>>
She nods towards your face. "@@.npc_manager;Oh, do not think I missed that you are wearing makeup. A bit light but I guess you are easing into it.
<<if $player.makeup.messed > 25>>
That said... you really should keep it in better shape, your face is <<if $player.makeup.messed > 50>>an utter!<<else>>something of<</if>> a mess!
<<else>>
Very good on keeping it in good condition, though.
<</if>>
@@"
<<elseif $scene.makeup != "" && $scene.makeup != "nomakeupmakeup">>
You were almost surprised she hadn't commented as to your wearing makeup but as her eyes alight upon your face you know instantly that she has not only noticed it, but has formed an opinion.<br>
<br>
"@@.npc_manager;
<<if $player.makeup.messed > 75>>
I will be honest - your makeup is such a mess I can hardly make heads or tails of it. That said, if you are willing to do this I think it is high time that you start wearing PROPER makeup to work. That means fully feminine and unblemished... and I would recommend you spend some time touching up your current mess at the soonest opportunity, I will be checking in after lunch, I do hope you manage to fix things.
<<else>>
<<switch $scene.makeup>>
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll">>
I love your choice of style. In fact I am adding it to your requirements right now - you should show up to work every morning wearing properly feminine makeup to better enhance your appearance.
<<case "nomakeupmakeup">>
<<if $npc_manager.stagevalues[2].makeup>>
Oh, and do not think I missed that you are wearing makeup. A bit light... too light, really. Going forward I want you to wear proper makeup - that means fully feminine to better highlight your natural beauty. Oh, and when I say going forward... I recommend you spend some time at lunch getting yourself into proper shape, I do hope you know a more flattering style...
<<else>>
<</if>>
<<case "ultimatebimbo">>
Oh, and that makeup... while I congratulate the effort I want a good SISSY secretary, not a painted whore, perhaps a different style would suit you better? That said, if you are willing to do THIS to yourself well... consider PROPER feminine makeup to be part of your dress-code requirements going forward.
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<<if $player.makeup.messed > 25>>
That said... you really should keep it in better shape, your face is <<if $player.makeup.messed > 50>>an utter!<<else>>something of<</if>> a mess, I want your makeup to be in near-perfect condition at all times.
<<else>>
Very good on keeping it in good condition, though, this is what I expect from you at all times, so keep on top of touching it up throughout the day!
<</if>>
<</if>>
@@"
<</if>>
<<if $scene.forced_gift != ''>>
<<switch $scene.forced_gift>>
<<case 'forced_pink_uniform'>>
You are about to start putting your clothes back on when you are suddenly interrupted.<br>
<br>
"@@.npc_manager;Tsk, Tsk, Tsk. <<=$player.first_name>> you ditz, did I tell you to put your clothes back on?
<<if $scene.score>3>>
Well, maybe I did, but that was the past, this is now, and we still have an certain issue to resolve, don't we?
<<else>>
I did not think so.
<</if>>
We still have to discuss your insubordination this morning. Well, less of a discussion and my dictating commands that you will then follow to the letter, yes?@@"<br>
<br>
You nod, intimidated.<br>
<br>
"@@.npc_manager;Good!@@", she continues, while walking towards a cupboard in the back of her office. Retrieving a shiny pink bag that looks to be from some sort of fancy fashion shops she hands it to you with a smile.<br>
<br>
"@@.npc_manager;Here, you go, take it.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_1" "Take the bag" 360>>]
<<case 'adv_chastity_key'>>
As you start to dress she pauses you.<br>
<br>
"@@.npc_manager;Ah, ah, I believe we have a bit of a celebration to make first.@@"<br>
<br>
You look up at her confused, and more than a touch worried.<br>
<br>
[<<moveTo "event_work_adv_key" "Continue" 60>>]
<<default>>
ERROR: unknown forced_gift: <<=$scene.forced_gift>>
<</switch>>
<<elseif !$scene.taskComplete>>
<<=setup.getNpcName('npc_manager', 'formal')>> appears puzzled by your behaviour, since you followed some instructions and ignored others.<br>
<br>
"@@.npc_manager;Look <<=$player.first_name>>, your inability to follow my simple rules force me to use more drastic measures for this simple check.@@", she says while opening her drawer, taking out a big pink leather paddle with the words "for SISSY secretary use only" embossed into either side in flowing cursive. "@@.npc_manager;Bend. Over.@@"<br>
<br>
You do as you're told and bend over the desk like you have become accustomed.<br>
<br>
"@@.npc_manager_dom;Do!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Every!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Single!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Task!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;You!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Stupid!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Sissy!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Ditz!@@"<br>
<br>
*SMACK*<br>
<br>
Leaving you gasping and your ass stinging she puts the paddle back into the drawer.<br>
<br>
"@@.npc_manager;Now, does that help remind you of your duties? From now on follow the tasks to the letter, do you understand me <<=$player.first_name>>? Now would you please put your clothes back on, it distracts me to see your bright and rosy cute butt glowing in agony.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_4" "Put your clothes back on" 360 "<<useClothSetPop 'p2_daily_evaluation_clothes' $player $now>>">>]
<<elseif $scene.bonus_gift != ''>>
<<switch $scene.bonus_gift>>
<<case 'female_upgrade'>>
<<switch $scene.gender>>
<<case 'unisex'>>
She nods for you to get dressed only to stare at you as if in mild puzzlement.<br>
<br>
"@@.npc_manager;Hmm, no, I am sorry. After seeing you in a dress I do not think I can go back.@@"<br>
<br>
You gulp, already knowing what she is about to say and yet still nervous as she speaks the words.<br>
<br>
"@@.npc_manager;From now on I expect you to come to work dressed fully feminine. That means head to toe female clothes, female underwear, female shoes... all of it. I know you were just getting accustomed to this more... unisex style but it just is not enough. Not for your lovely body, and not for my needs in a... SISSY secretary. Now the dress is a bit... formal for the office so I recommend you find something else but, well... you are a clever girl, I have confidence in you.@@"
<<case 'female'>>
She nods for you to get dressed as she stares and smiles you look back up with a questioning expression on your face.<br>
<br>
"@@.npc_manager;Oh, do not mind me, just remembering how lovely you looked in a dress the other night... Yes, I can see from your choice of garments that you must have come to a similar conclusion but let us make it official: henceforth your uniform is to be completely feminine in every way. Female clothes, female underthings, female shoes... oh you are truely a delight. Representative just as one in your position should be.@@"
<<default>>
ERROR: unexpected scene.bonus_gift <<=$scene.bonus_gift>>
<</switch>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_4" "Finish dressing" 360 "<<useClothSetPop 'p2_daily_evaluation_clothes' $player $now>>">>]
<<case 'sissy_underwear'>>
"@@.npc_manager;I....@@"<br>
<br>
Thinking, that morning inspection is finally over, you start getting dressed, only for <<=setup.getNpcName('npc_manager', 'formal')>> to stop you.<br>
<br>
"@@.npc_manager;...Wait a moment, I told you when you left the key with me that there would be something in it for you...@@"<br>
<br>
She steps back, her eyes tracing over... no DEVOURING your body, her pupils tracing lines all over it, as if she's having a very vivid dream or vision. Her glasses in hand she nibbles one end thoughtfully as a smile of content approval spreads across her face. Her gaze finally rises to meet your own and she slowly nods.<br>
<br>
"@@.npc_manager;Yes... I think you are ready.@@"<br>
<br>
<<printThought $player "Ready for what?">>, you think, but you remain obediently silent as she opens a drawer in her desk and pulls out a pink box, delicately handing it to you, the pleased smile remaining on her face throughout.<br>
<br>
[<<moveTo "event_manager_good_girl_sissy_panties" "Accept her gift." 360 "<<set $scene.afterWork = false>>">>]
<<case 'good_girl_pink_uniform'>>
After finishing the inspection of your underwear, just before you get dressed <<=setup.getNpcName('npc_manager', 'formal')>> stops you with a glance. It isn't aggressive more... intrigued? You stand there and look back as she seems to be.. dressing you with her eyes.<br>
<br>
"@@.npc_manager;Mmmm, yes.@@" She finally says. "@@.npc_manager;As nice as you look in your normal outfit I think you deserve something better, something custom and perfect and just for you rather than mere off-the-shelf attire.@@"<br>
<br>
Walking to a cabinet at the back of her office she flashes a winking glance over her shoulder before opening the cabinet to retrieve a shiny pink bag. Though you do not recognise the logo on the side you judge it to be from some sort of fancy fashion shop. Walking back she hands it to you with a smile.<br>
<br>
[<<moveTo "event_manager_good_girl_pink_outfit_1" "Look in the bag.">>]
<<case 'good_girl_name_change'>>
You are about to start putting your clothes back on when you are suddenly interrupted.<br>
<br>
"@@.npc_manager;Come to think of it, there is one more thing I would love to discuss with you, now, that we've finally come this far. Why don't you take a seat, while I get some documents ready, and then we'll talk about your future.
<<if $scene.score>3>>
You did well today, as anticipated, so you earned it.
<<else>>
Even though your efforts today were kind of lacklustre, you did well these past few days, so you earned it.
<</if>>
@@"<br>
<br>
It's not the first time to catch her in such a good mood but you are still surprised to see her this relaxed, which is normally only during your, for your taste way too infrequent, after work activities.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_good_girl_namechange_1" "Sit down like a good girl." 180>>]
<<case 'makeup_pink_secretary' 'makeup_nomakeup'>>
<<=setup.getNpcName('npc_manager', 'formal')>> is still staring at you as you reach for your clothes and you hesitate, but, when she fails to verbalise any more notes you just resume putting your clothes back on while trying not to be distracted by her gaze.<br>
<br>
[<<moveTo "event_makeup_0" "Finish dressing." 180 "<<useClothSetPop 'p2_daily_evaluation_clothes' $player $now>>">>]
<<default>>
ERROR: unexpected bonus gift: <<=$scene.bonus_gift>>
<</switch>>
<<else>>
<<if $scene.happy>>
You see a clear smile on her lips. Not a brief, fleeting twitch, but a long, sincere one.<br>
<br>
"@@.npc_manager;Well, well, you are really starting to get the gist of these tasks. Very good!@@"<br>
<br>
<<if ($npc_manager.satisfaction+$npc_manager.affection) > $npc_manager.anger>>
"@@.npc_manager;I think you are almost getting too good at this. If you keep this up I am may have to give you some... extra one on one time. Some tips, maybe a little punishment.... Mmm, definitely some punishment. Maybe all night long ... if I ever had a night off.@@" Despite the implied threat she smiles the whole time, and then you get a playful slap on your well cushioned backside and understand the implications,
<<else>>
"@@.npc_manager;Keep this up, and I might even be able to overlook some of your past mistakes.@@"
<</if>>
<<if $scene.forgot_cage_key && $npc_manager.flags.trustplayerwithkey>>
<br><br>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
"@@.npc_manager;Normally I would punish you for not bringing the key in for me but... of course you have that trial thing. I surmise we are both counting the days now until it, and thus you, can be rightfully placed under my protective possession.@@"<br>
<br>
<<printThought $player "I thought I was just going to make a quick buck... she'll let me out, right?">>
<<else>>
<<if $npc_manager.flags.playerstayedinchastity>>
Her smile turns to an smirk in an instant she makes a show of playing with the key dangling from her necklace<<if $npc_manager.flags.trustplayerwithkey>> before gently dropping it in the dish at the edge of your desk<</if>>.
<<else>>
"@@.npc_manager;While it does not technically affect things in a physical sense, do endeavour to bring your key to work in the future. I believe the mental discipline entwined with such acts will be very good for you. If you continue to "forget" your key I may just switch your lock and keep the key for myself, permanently.@@"<br>
<</if>>
<br>
"@@.npc_manager;Please refrain from any key or lock related shenanigans in the future. There is little point as I ensure you I have more resources to exchange these locks then you have places to hide them. But if you keep rebelling in this way I may be forced to change you cage for a more permanent solution.@@"
<</if>>
<br><br>
<</if>>
<<if setup.getTotalValue('feminization')>=6>>
"@@.npc_manager;Now would you please put your clothes back on. Truly, I would not mind if you worked like this, but I am afraid the heterosexual male staff of the company might be distracted, some even forced to question their sexuality, once they realised you were male.@@", she admits, but follows up way too fast with, "@@.npc_manager;That is of course if they even realised that you are male. I doubt most would be able to tell.@@"
<<else>>
"@@.npc_manager;Now would you please put your clothes back on. Truly, I would not mind if you worked like this, but I am afraid the heterosexual male staff of the company might be distracted, some even forced to question their sexuality, once they realised you were male.@@"
<</if>>
<<else>>
You see a hint of a smile play across her lips.<br>
<br>
"@@.npc_manager;Very good. You are really starting to get the hang of these tasks.
<<if ($npc_manager.satisfaction+$npc_manager.affection) > $npc_manager.anger>>
Keep this up and I can promise you a distinguished career here at Social Interaction Service Syndicate Inc.
<<else>>
Keep this up, and I might be able to overlook some of your past mistakes.
<</if>>
@@"<br>
<br>
<<if $scene.forgot_cage_key && $npc_manager.flags.trustplayerwithkey>>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
"@@.npc_manager;Normally I would punish you for not bringing the key in for me but... of course you have that trial thing. I surmise we are both counting the days now until it, and thus you, can be rightfully placed under my protective possession.@@"<br>
<br>
<<printThought $player "I thought I was just going to make a quick buck... she'll let me out, right?">>
<<else>>
<<if $npc_manager.flags.playerstayedinchastity>>
Of course she isn't done with you yet. A smirk adorns her face as she makes a show of playing with the key dangling from her necklace<<if $npc_manager.flags.trustplayerwithkey>> before gently dropping it in the dish at the edge of your desk<</if>>.
<<else>>
"@@.npc_manager;While it does not technically affect things in a physical sense, do endeavour to bring your key to work in the future. I believe the mental discipline entwined with such acts will be very good for you. If you continue to "forget" your key I may just switch your lock and keep the key for myself, permanently.@@"
<</if>>
<br><br>
"@@.npc_manager;Please refrain from any key or lock related shenanigans in the future. There is little point as I ensure you I have more resources to exchange these locks then you have places to hide them. But if you keep rebelling in this way I may be forced to change you cage for a more permanent solution.@@"
<</if>>
<br><br>
<</if>>
"@@.npc_manager;Now would you please put your clothes back on and continue with your work.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_4" "Put your clothes back on" 360 "<<useClothSetPop 'p2_daily_evaluation_clothes' $player $now>>">>]
<</if>>
<</if>>
</div>/*#
#desc: recive name change during good girl path
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<if $player.flags.fem_style.name == "">>
<<set $player.flags.fem_style.name = "obedient">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
'theme_admin_transition_header'
>>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<<forceNpcTheme 'npc_admin' 'event_admin_theme_female_name'>>
<<if setup.checkNpcTheme('npc_admin','event_admin_theme_female_clothes')>>
<<forceNpcTheme 'npc_admin' 'event_admin_theme_female_clothes'>>
<</if>>
<<set $npc_admin.flags.rare_meeting.code_red = true>>
<<set $npc_admin.flags.rare_meeting.code_red_date = $now>>
<<set $npc_admin.flags.rare_meeting.code_red_reason = "feminization">>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
'theme_psychiatrist_transition_header'
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> takes a seat at the edge of the table right in front of you. As you sit down on the comfortable chair in front of the office table your thoughts start to drift off. You remember that it has not been that long since you were spanked for the first time. Right here, on this very desk. As part of your "mandatory" disciplinary measure. Since then you've gone through a lot of changes,
<<if $player.flags.atesissypill || $player.flags.atebimbocandy || $player.body.breastsize[0] > 0>>
both physical and mental.
<<else>>
mostly mental.
<</if>>
You came to terms with you wearing a chastity device.
<<if $player.flags.masturbation.plug>>
You plugged up your <<getWordAnus $player>> for the first time.
<</if>>
<<if ($player.flags.gloryhole.handjob + $player.flags.gloryhole.blowjob) > 0>>
You handled your fair share of cocks.
<<if $player.flags.gloryhole.blowjob > 0>>
Licking along these yummy meatsicles until they blow their load in your mouth.
<</if>>
<<if $player.flags.gloryhole.swallowpiss > 0>>
Swallowing their hot, nasty piss down your toilet whore throat.
<</if>>
<</if>>
Was that all <<=ps(setup.getNpcName('npc_manager', 'formal'))>> influence, who is once again looking down at you from her elevated position, or was it, even though you'd never admit it... always inside you, this other side. Filled with sexual needs and hunger and lust. Lust, to please others. Like...<br>
<br>
<<printThought $player "... the good little Sissy I am... Wait, what was I thinking">><br>
<br>
You snap back into reality, as you realise the heartfelt grin beaming down from your manager.<br>
<br>
"@@.npc_manager;Well, I have to say I am more then impressed by the progress you made lately with your... personal development. You followed most of my rules, and it seems like this role naturally grows towards you. I have to admit, I had my momentary doubts at first, but you seem such an eager sissy all the time, eager to prove themself. And you did well, my dear Sissy, you did well indeed.@@"<br>
<br>
During her speech she raises her hand and points it towards your face. Unsure what is about to happen you think about backing away, but before you can react, you receive an affectionate boop on your nose.<br>
<br>
<<if setup.getTotalValue("submission") < 7>>
<<printThought $player "So... I am her pet now? Go figure...">>
<<else>>
<<printThought $player "So... I am her pet now? Oh well...">>
<</if>>
<br><br>
"@@.npc_manager;Do not act so scared. Anyway, I think it is time to go one step further. You are very feminine on the inside and outside. Only a small stain remains, and I am not talking about the stains you have to wash off your panties every night, you naughty little thing. You know, what I am talking about, ain't that right <<=$player.first_name>>?@@"<br>
<br>
<<if setup.getTotalValue("smart") > setup.getTotalValue("bimbofication")>>
You think for a moment, but the obvious emphasis on your name during that last sentence was a dead giveaway. You nod and answer accordingly.<br>
<br>
"@@.npc_manager;Very good. Such a smart SISSY secretary. Your name is a dirty, masculine stain on your almost perfect sissy record sheet. That is something we need to address as soon as possible. Anyway...@@"<br>
<<else>>
You try to strain that gray matter of yours, but your current lifestyle seems to have taken its toll on your thinking abilities. You try to focus, but in the end just stare blankly at <<=setup.getNpcName('npc_manager', 'formal')>>. She reacts with a sad sigh.<br>
<br>
"@@.npc_manager;Sometimes I am not sure if you play the part of the Bimbo, or if your brain is already that far gone. Your name you ditz, your name. Your name still reeks of ill-advised masculinity, which is simply not present in your current state. That is something we need to address as soon as possible. Anyway...@@"<br>
<</if>>
<br>
She hands you a datapad with some sort of legal document on it. A lot of small written text, as usual in the company typical legalese.
<<if setup.getTotalValue("submission")> 10>>
Thanks to your newly acquired fast reading techniques and understanding of the local laws it takes you only a few seconds to figure out that this is a legally binding document for a name change.<br>
<br>
"I get to change my name?" You whisper.<br>
<br>
<<printThought $player "Wait... get to? This is a privilege?">><br>
<br>
"@@.npc_manager;Yes you do! Just punch in a new name in the field at the top, then a final signature with your old name at the bottom and it will be done. A new name fitting your new lifestyle. So go ahead, choose your new name!@@"
<<else>>
You have no idea what the text is about.<br>
<br>
"@@.npc_manager;This is a name change form. You enter your new name on the field over there and sign with your original name at the bottom and it is done. A new name fitting your new lifestyle. So go ahead, choose your new name!@@"
<</if>>
<br><br>
You think for a moment to protest or simply decline, but somehow you know she's right. Everything has somehow lead you to this moment. You hesitantly accept the datapad.<br>
<br>
[<<link "Tell her your chosen sissy name">><<openDialog "Your sissy name:" "dialog_selectName">><</link>>]
</div>/*#
#desc: PC makes oral love to the manager
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_7'
7
'event_psychiatrist_theme_good_girl_oral_manager_1'
false
'theme_psychiatrist_manager_header'
>>
<<if $player.cunnilingusvirgin == "">>
<<set $player.cunnilingusvirginity = 'npc_manager'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You don't know how you moved from the chair to be kneeling on the floor but it feels right. From your new-found position on your knees you stare up at your mana- at your <<=setup.getNpcName('npc_manager', 'title')>>. Her deificly smile directed down at you makes even that honorific seem inadequate to describe the gulf of power and the degree of devotion that should flow from you to her.<br>
<br>
As if in a trance you watch as she leans against the edge of the desk and spreads her legs. It is as if the gates of heaven are opening for you, and she, its most beautiful of angel, nods for you to approach.<br>
<br>
In the midst of a sea of overwhelming thoughts and emotions that you are only barely coping with a strange dichotomy floats to the surface. On the one hand you find yourself regretting yet again your failure to ever do anything with <<=setup.getNpcName('npc_exgirlfriend', 'first')>> before the two of you broke up... what if you do a bad job? Failing your <<=setup.getNpcName('npc_manager', 'title')>> in this, of all things... it would be a sin of the highest order!<br>
<br>
On the other hand is the fact that you cannot help but feel blessed that your first time will be with <<=setup.getNpcName('npc_manager', 'title')>>. Even if you had been with another woman how could it possibly compare to the divine Goddess that looms before you?<br>
<br>
Perhaps sensing your tumultuous thoughts she reaches out to gently guide your head forward. Diving face-first your lips meet hers as she lets out a sigh.<br>
<br>
"@@.npc_manager;Mmm... lets see if linguistic cunning is amongst you skills...@@"<br>
<br>
You aren't sure, really, what to do, but her taste, strong, a little salty, a little sweet and oh-so-feminine encourages you to lick ravenously. A gentle moan would seem to indicate her approval.<br>
<br>
"@@.npc_manager;Such enthusiasm... but chaotic... in need of guidance... I suppose that describes you overall though, doesn't it?@@"<br>
<br>
You blush, continuing to lick as you wait... hope for her to tell you what to do.<br>
<br>
"@@.npc_manager;Exploring all my sensitive folds and depths is all well and good, and I will be sure to have you spend much time in the future between my legs doing just that but if you want to really get me off you should focus your attentions on that little bead in the middle. That is my clit and pleasing it should be your number two goal in life after pleasing me... Ohhh!@@"<br>
<br>
Her measured speech suddenly slips into a quick gasp as you shift your attention to match her instructions, planting your lips around her clit and sucking it into your mouth that your tongue can shower it with affection.<br>
<br>
"@@.npc_manager;Oh yes!, Just like that sissy! Oh, I am getting close!@@"<br>
<br>
Your heart races as her hold on your head tightens, she grinds against your face as you do your best to continue licking and sucking.<br>
<br>
"@@.npc_manager;Oh, <<=$player.first_name>>!@@" She cries out in pleasure, tensing and pulling so tight that, for a moment, you lose the ability to breath.<br>
<br>
Letting out a slow sigh she relaxes her hold, pulling your face away from you with one hand in your hair and tilting you up to look at her.<br>
<br>
"@@.npc_manager;Whew! I guess I was a bit pent up because you almost had me squirting! Maybe next time...@@"<br>
<br>
As you catch your breath the look in her eye has you momentarily wondering if that "next time" is going to be now but it fades, her normal playful, but stern, expression re-asserting itself and you find yourself questioning if you merely imagined her momentary loss of control.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_good_girl_namechange_3" "Continue." 360 >>]
</div>/*#
#desc: PC puts clothes back on after good girl namechange
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Well, that was certainly something. Fortunately you have proven to be a swift learner in the past so I am quite optimistic for your future... Maybe I should put in with utilities for one of those special face-sitting chairs...@@" Refocusing her thoughts she addresses you once more. "@@.npc_manager;Now would you please put your clothes back on and continue with your work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_good_girl_namechange_4" "Put your clothes back on" 360 "<<useClothSetPop 'p2_daily_evaluation_clothes' $player $now>>">>]
</div>/*#
#desc: final scene of good girl namechange
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<if $now.getUTCDay() == 5>>
<<set _nextDate to setup.setNextDate($now, 3, 9, 0)>>
<<else>>
<<set _nextDate to setup.setNextDate($now, 1, 9, 0)>>
<</if>>
<<addWorkEvent 'admin_office_visit' '{"trigger":"morning","minTimeDiff":0,"type":"always","chance":100,"repeat":false,"priority":200}' '{"szene":"event_work_femalesecretary_1_0","length":"30"}' _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
As you put your clothes back on <<=setup.getNpcName('npc_manager', 'title')>> returns to her chair. Sitting down she starts to tap on the desk nervously.<br>
<br>
"@@.npc_manager;There was one last thing I wanted to tell you... Hmm... actually all this commotion about your transformation seems to have made it slip my mind. You may leave.@@"<br>
<br>
You bow and turn, bending over to start picking up your clothes when you're interrupted.<br>
<br>
"@@.npc_manager;God, yes. That callipygian big behind of yours is a very good at stimulating... ahem... ones memory. Big is the right word. Your friend <<=setup.getNpcName('npc_admin', 'formal')>> will be joining us
<<if $now.getUTCDay() == 5>>
on Monday
<<else>>
tomorrow
<</if>>
midmorning. For a business meeting. I expect you to treat him like you would treat any guest of mine. This will be a good test of your abilities as my Secretary. To make sure there are no incidents we are not prepared for, you might take the opportunity SOON to tell him about your new found love for femininity and everything it stands for.@@"<br>
<br>
<<if setup.getTotalValue('bimbofication') >= 5>>
"@@.npc_manager;I cannot help but have noticed your heightened ditziness as of late, so I thought I would give you a head start. Maybe you better make a note somewhere.@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_2_4" "Back to work." 360>>]
</div>/*#
#desc: receive pink secretary outfit - bad girl
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemWorn("pink_mary_janes") && setup.checkItemWorn("satin_blouse_pink") && setup.checkItemWorn("skirt_pink_leather") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings")>>
<<include inspectionData_clothes>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_2">>
<<elseif $roomchange == true>>
<<set $npc_manager.flags.bad_girl.got_pink_secretary = true>>
<<set $scene.newFemaleReq = !$npc_manager.stagevalues[2].femalesecretary>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<if !(setup.checkItemInInventory("pink_mary_janes") && setup.checkItemInInventory("satin_blouse_pink") && setup.checkItemInInventory("skirt_pink_leather") )>>
<<addItem "pink_mary_janes">>
<<addItem "satin_blouse_pink">>
<<addItem "skirt_pink_leather">>
<<addEvent 'first_time_pink_home' '{"trigger":"always","type":"next","location":"room_foyer","priority":100}' '{"szene":"event_first_time_home_pink"}'>>
<<if $player.flags.fem_style.female == "">>
<<set $player.flags.fem_style.female = 'forced'>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop.unlock_source = "female">>
<</if>>
<<set _x = $shopStatus['mall_apparel_store'].unlocked_inventory.push('designer')>>
<<set _x = $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.push('maid')>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
'theme_psychiatrist_manager_header'
>>
<<set $npc_admin.flags.firstsawfemale = "office">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_10'
10
'event_admin_theme_female_clothes'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
'theme_admin_transition_header'
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
'theme_psychiatrist_transition_header'
>>
<</if>>
<<if !setup.setThreshold("feminization","bad_girl_feminization","cute_secretary",true)>>
<</if>>
<<deleteUnwornTagItems $player 'male'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You take the bag out of her hands and catch a glimpse inside. Looks like clothes. Pink clothes. You gulp audibly.<br>
<br>
"@@.npc_manager;Ah, I can see the cogs in your brain are still spinning. You see <<=$player.first_name>>, this is your new work uniform. Since it seems you are unable to figure out clothes within the regulations of your contract... or maybe you are still struggling financially after losing your last job. Maybe you are just trying to tease me. Whatever the reason, my secretary must meet a certain standard, or preferably exceed it. You did neither today. So go ahead, put those on. Do not worry, I will watch to make sure you do not mess up. And give me your ... other clothes while we are at it. I can take care of them while you change.@@"<br>
<br>
You slowly open the bag to reveal the items within. A light pink blouse made from satin. Looks expensive. A pink leather... skirt? You gulp, while not technically the shortest you've seen it is still... very short. Only one false move in this, and everyone will know the colour of your underwear. Finally, some pink Mary Jane heels with lace trim. You blush at the thought of wearing those. You better get changing if you want to start working today. Working. Today.<br>
<br>
<<printThought $player "Oh <<getWordGod $player>>. Everyone who enters the office today is going to see me dressed like a girl! I will literally die of embarrassment!">><br>
<br>
<<if $scene.newFemaleReq>>
You look up at her, somehow hoping this is some kind of joke but she only smiles wider. "@@.npc_manager;Oh, and while I suppose you could try something else well... know that I never again expect to see you wearing clothing that is in any way... masculine. No, you are my girl, someday maybe even my good girl, and you will dress accordingly.@@"
<</if>>
</div>/*#
#desc: put on pink secretary outfit
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set $nametrys = 0>>
<<if $player.flags.fem_style.name == "">>
<<set $player.flags.fem_style.name = "forced">>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
The blouse is not that difficult to put on, not really any different from a male shirt other than the buttons being on the other side, and
<<if $player.body.breastsize[0]>0>>
thankfully there's more place for your breasts, compared to the shirts you used to wear.
<<else>>
there seems like there would be more space for your breasts... not that you have any. At the moment.
<</if>><br>
<br>
The skirt, however is a whole other deal. Managing to squeeze your well formed backside into it was arduous to say the least. It's as if it was perfectly fitted to encase your buttocks as tight and narrow as possible. Anyone taking a better look at them probably does not have to guess long to figure out what kind of panties you're wearing.<br>
<br>
<<printThought $player "Oh no, everyone can see the outline of my <<=setup.getItemName(setup.getItemFromType('panties'))>>">><br>
<br>
While you nearly die of awe and embarrassment at the sight of your mini-skirted behind in the cheval mirror next to the door, you have the sudden feeling that it's somewhat hot in the office. No, not hot... rather burning. Something smells like it's burning. Oh no, she isn't... You see your remaining male clothes go up in flames in the trash basket, which seems to be used to being used for impromptu incineration.<br>
<br>
"@@.npc_manager;Oh no, your clothes were so ashamed of their existence they spontaneously combusted, to spare yourself from their sad existence. You are welcome by the way. And do not worry, your new shoes alone are worth more than your entire old outfit combined. While we are at it I am updating your current daily task from now on. From now on, you will dress completely as a woman. This will be a part of your evaluation as well. Of course this is on top of, quite literally, your current task, female underwear remains mandatory as well, as does your chastity device. Hmm... Come to think of it, maybe it was a good idea to appear today the way you did. Now I can finally whip you into shape without any compunction. As usual, neglecting your tasks will result in a disciplinary measure.@@"<br>
<br>
She stares at you for almost a minute, like she is memorizing every aspect of your new look.<br>
<br>
"@@.npc_manager;Hmm, looking at how fetching you look in your new outfit... I might have to update my style as well, don't you think? Yes?@@"<br>
<br>
You nod timidly, slowly grasping the consequences of your actions.<br>
<br>
<<printThought $player "This cannot be happening! All the male clothes I had with me... gone! How am I going to get home. How will I survive today?">><br>
<br>
"@@.npc_manager;<<=$player.first_name>>, look at me!@@"<br>
<br>
You are unable to comply, still petrified and staring at the floor in disbelief. Taking a menacing step forward <<=setup.getNpcName('npc_manager', 'formal')>> closes the distance between the two of you.<br>
<br>
"@@.npc_manager_dom;I said look at me, Sissy!@@", she commands you while putting her finger under your chin. Though she pushes upwards with little force you comply, soon looking up at her face.<br>
<br>
"@@.npc_manager;Look me in the eyes and tell me that this is not what you want. You had more than sufficient opportunities to quit and look for another job. Or simply follow the more... mundane initial instructions and hang on to the pitiful remains of your masculinity. But you did neither. And here we are. So do not tell me you do not like it. Me, dominating you, the clothes, the pain, the excitement! It is all part of the deal, so you either stay and enjoy the ride as the SISSY secretary you were meant to be, or you walk through that door, right now and never return. The later means of course that your contract, and your employment at this company, would be null and void. So... which will it be?@@"<br>
<br>
She smiles and your heart beats faster.<br>
<br>
<<if $player.flags.fem_style.name != "forced">>
"@@.npc_manager;Come on, this should not be a difficult decision, <<=$player.first_name>>.@@"<br>
<br>
<<printThought $player "She's right, I mean, I stayed so long, done so much... even changed my name... Maybe this is where I belong?">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_4" "Continue" 360 "<<set $npc_manager.call='Mistress'>><<set $npc_manager.title='Mistress'>>">>]
<<else>>
"@@.npc_manager;Either you tell me the name you want to be called from now on, since <<=$player.first_name>> is hardly a fitting name for a SISSY secretary, or you leave and never return. Make your choice, Sissy?@@"<br>
<br>
<<printThought $player "The truth is I stayed way longer and agreed to a lot of things I didn't intend to do. Maybe I really belong here?">><br>
<br>
[<<link "Tell her your chosen sissy name">><<openDialog "Your sissy name:" "dialog_selectName">><</link>>]
<</if>>
<br>
[<<moveTo "gameover_nintendolls" "Walk out the door." 360 >>]
</div>/*#
#desc: manager approve/disapprove of your new female name, told that you are now a girl, and to refer to her as Mistress
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set $acceptname = "">>
<<if $sissyname.toLowerCase() == $player.first_name.toLowerCase()>>
<<set $acceptname = "samename">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == $player.last_name.toLowerCase()>>
<<set $acceptname = "lastname">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == $npc_manager.first_name.toLowerCase() || $sissyname.toLowerCase() == $npc_manager.last_name.toLowerCase()>>
<<set $acceptname = "manager">>
<<applyExperience 'bimbofication' 6 'normal' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == 'sissy' || $sissyname.toLowerCase() == 'sissyname'>>
<<set $acceptname = "sissy">>
<<applyExperience 'bimbofication' 6 'normal' $SEEN_FRIEND>>
<<elseif $sissyname.toLowerCase() == 'frisk' || $sissyname.toLowerCase() == 'chara'>>
<<set $acceptname = "undertale">>
<<elseif $sissyname.toLowerCase() == 'sans' || $sissyname.toLowerCase() == 'papyrus' || $sissyname.toLowerCase() == 'gaster' || $sissyname.toLowerCase() == 'wingdings'>>
<<set $acceptname = "undertale2">>
<</if>>
<<if $acceptname != "">>
<<set $nametrys+=1>>
<<else>>
<<set $player.call = "Miss">>
<<set $player.original_first_name = $player.first_name>>
<<set $player.first_name = $sissyname>>
<<set $player.flags.company.depts += 10200>>
<<if !$scene.good_girl_namechange>>
/* As a bad girl this scene will happen the very same day! */
<<set _nextDate to setup.setNextDate($now, 0, 9, 0)>>
<<addWorkEvent 'admin_office_visit' '{"trigger":"morning","type":"always","chance":100,"repeat":false,"priority":200}' '{"szene":"event_work_femalesecretary_1_0","length":"30"}' _nextDate>>
<<addEvent 'first_lunch_female' '{"trigger":"always","type":"next","location":"room_office_lunchbreak_canteen","priority":100}' '{"szene":"event_canteen_femalesecretary_1_0"}'>>
<<else>>
<<addEvent 'first_lunch_female_good' '{"trigger":"always","type":"next","location":"room_office_lunchbreak_canteen","priority":100}' '{"szene":"event_canteen_good_girl_1"}'>>
<</if>>
<<set $npc_manager.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<switch $acceptname>>
<<case "samename">>
"@@.npc_manager;No, the point of this whole thing was for you to choose a feminine name, one fitting to your new personality. Not your old name! Try again!@@"<br>
<br>
[<<link "Tell her your chosen sissy name">><<openDialog "Your sissy name:" "dialog_selectName">><</link>>]
<<case "lastname">>
"@@.npc_manager;...You want your last name to be your Sissy name? So you would be Sissy <<=$player.last_name>> <<=$player.last_name>>. Seriously? Hmm... Maybe I simply call you Sissy Smartass from now on. Or Sissy Dumbfuck. One of the two. Try again!@@"<br>
<br>
[<<link "Tell her your chosen sissy name">><<openDialog "Your sissy name:" "dialog_selectName">><</link>>]
<<case "manager">>
"@@.npc_manager;No, that is not name fitting a Sissy. And it is my name. So... no! Try again!@@"<br>
<br>
[<<link "Tell her your chosen sissy name">><<openDialog "Your sissy name:" "dialog_selectName">><</link>>]
<<case "sissy">>
"@@.npc_manager;Very funny, but nope, not an option. Again!@@"<br>
<br>
[<<link "Tell her your chosen sissy name">><<openDialog "Your sissy name:" "dialog_selectName">><</link>>]
<<case "undertale">>
"@@.npc_manager;Oh no. We are not going down that road. The last thing we need here is another person with determination starting another global war! Again! The name, not the war. Look whatever you do, promise me to not start any wars, okay? @@"<br>
<br>
[<<link "Tell her your chosen sissy name">><<openDialog "Your sissy name:" "dialog_selectName">><</link>>]
<<case "undertale2">>
"@@.npc_manager;Why would you want to be called like a font? Once more! @@"<br>
<br>
[<<link "Tell her your chosen sissy name">><<openDialog "Your sissy name:" "dialog_selectName">><</link>>]
<<case "">>
<<if $scene.good_girl_namechange>>
"@@.npc_manager;So, sissy, from today on your name shall be <<=$player.first_name>>. I like it, it has a pleasant feminine ring to it. Now, if you would hand me the datapad we can make this official, what do you say <<=$player.first_name>>. Hmm... <<=$player.first_name>>. Rolls nicely off my tongue. I could see screaming that a lot during a nights passion. Actually.... Why wait until nightfall?@@"<br>
<br>
<<printThought $player "Wait... WHAT?">><br>
<br>
Your expression may be quite puzzled but her smile of satisfaction only grows wider as you hand her the filled out datapad.<br>
<br>
"@@.npc_manager;Well done. Okay <<=$player.first_name>> <<=$player.last_name>>, this concludes your official name change. Social Security Administration, Internal Revenue Service, Bureau of Consular Affairs, the Federal Communications Commission, the Selective Service System, the Department of Motor Vehicles and a few other departments have been informed of your name change. Your documents and ID card should be updated once you make your next online transaction. I think they send you your physical documents in the next few days if you still use these.@@"<br>
<br>
<<printThought $player "What?">><br>
<br>
"@@.npc_manager;No need to look so worried, the company has paid all fees related to the change, of course. But I would beware since the company keeps track of all the money they invest in their assets... I mean, employees, employees are our MOST important asset. That means that terminating your contract now would end you in hot water, since you would have to either repay the <<=setup.numberInWords($player.flags.company.depts, true)>> credits you are currently considered to owe the company at the moment, or you would have to negotiate a repurposing deal. Really, it is nothing you should be worrying your pretty head about, I mean, it would be such a waste to lose such an aspiring sissy as yourself. Of course, once your probationary period is over, a certain percentage of your salary will be credited towards paying things off. And if you continue to try to improve yourself at your current rate, well... I see a radiant future for you in this company, under my desk... err... supervision of course.@@"<br>
<br>
<<printThought $player "Que?">><br>
<br>
You explain to <<=setup.getNpcName('npc_manager', 'formal')>> that, while you were were not fully aware of the consequences, you plan to continue to do your best to fulfill her expectations.<br>
<br>
"@@.npc_manager;Mistress,@@", she states, interrupting the end of your speech. "@@.npc_manager;Since you readily accepted your role as a SISSY secretary, I am not your "Missus" anymore. We both know I never was your "Missus" in the first place, but it is finally time that you address me in a way that more accurately respects our respective positions. From now on, whenever you address me, I want to hear a Mistress in front of my name. Also know that I find find it delightfully refreshing that you accept that you are not merely a SISSY secretary here at work. Your new name, after all, reflects what we both knew all along - that you ARE a SISSY secretary 24/7.@@" She pauses and shakes her head in amusement. "@@.npc_manager;Hah! Listen to me going on and on about things we both already know! Well, I think there has been enough of this feckless chatter. All your unconditional obedience made me quite horny, and I think now is the perfect time you take appropriate responsibility for that!@@"<br>
<br>
Your jaw hits the floor so fast and hard it won't likely stop until it hits your old desk back at Cloud Data Services some forty-plus floors below.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_good_girl_namechange_2" "Wait, how did I end up on my knees?" 360 "<<set $npc_manager.call='Mistress'>><<set $npc_manager.title='Mistress'>>">>]
<<else>>
"@@.npc_manager;So, sissy, from today on your name shall be <<=$player.first_name>>. I like it, it has a certain feminine ring to it. One more thing, <<=$player.first_name>>... <<=$player.first_name>>... I am already getting used to it. Here you go@@", she hands you a datapad with a digital contract on it. It looks similar to your original contract from the looks of it. In other words a whole lot of text and you have no idea what's going on. "@@.npc_manager;I need you to sign this with your new name, to make it official within the companies records.@@"<br>
<br>
Still high on endorphins from deciding to finally go through with it and accept your feminine side you sign the document without even taking a closer look at it.<br>
<br>
"@@.npc_manager;Well done. Okay <<=$player.first_name>> <<=$player.last_name>>, this concludes your official name change. Social Security Administration, Internal Revenue Service, Bureau of Consular Affairs, the Federal Communications Commission, the Selective Service System, the Department of Motor Vehicles and a few other departments have been informed of your name change. Your documents and ID card should be updated once you make your next online transaction.@@"<br>
<br>
<<printThought $player "W... What?">><br>
<br>
"@@.npc_manager;No need to look so worried, the company has paid all fees related to the change, of course. But I would beware since the company keeps track of all the money they invest into you. So terminating your contract now would end you in hot water, since you would have to either repay the <<=setup.numberInWords($player.flags.company.depts, true)>> credits you owe the company at the moment, or you would have to negotiate a repurposing deal. But do not worry, once your probationary period is over a certain percentage of your salary will be credited towards paying things off.@@"<br>
<br>
<<printThought $player "That really does not make it any better!">><br>
<br>
You explain to <<=setup.getNpcName('npc_manager', 'formal')>> that you thought this was more an internal thing between the two of you and you would still get to keep your name.<br>
<br>
"@@.npc_manager;Mistress,@@", is the interruption you receive for trying explain your issues with what has just happened, "@@.npc_manager;Since you finally accepted your role as a SISSY secretary, I am not a Missus to you anymore. From now on, whenever you address me, I want to hear a Mistress in front of my name. And, well, there seems to be a misconception here. While you may only be paid to be a SISSY secretary during the day we both know that you ARE a SISSY secretary 24/7. Now your name reflects that, and really, it would be quite complex and inconvenient to change a name within the company to something other than what the law agreed was true. Besides, <<=$player.first_name>> fits you a lot better then <<=$player.original_first_name>>, especially if you consider the way you are dressed right now. Any more questions? Good, we have squandered enough time with feckless chatter.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_4" "Continue" 360 "<<set $npc_manager.call='Mistress'>><<set $npc_manager.title='Mistress'>>">>]
<</if>>
<</switch>>
</div>/*#
#desc: dialog box for choosing your feminine name
#status: FINISHED 0.4.0.0
#*/
<center>
<<textbox "$sissyname" "" autofocus>>
</center>
<br>
@@.textRightSide;
<<button "Okay">>
<<moveTo 'event_manager_daily_check_stage_2_3_female_secretary_3'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: start work or sent home/chastity rights revoked for failing morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<</if>>
<<set _things = 0>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You thank her for her time and attention and leave the office.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Leave her office.">>]
</div>/*#
#desc: sent home/with chastity rights revoked for failing morning inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "" && !($currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks['task_chastity_trial'].finished)>>
<<if setup.checkItemOwned("advance_chastity_cage_key") && !$npc_manager.flags.took_adv_key>>
/% no op %/
<<elseif $npc_manager.flags.trustplayerwithkey>>
<<set $scene.keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.managerhadkey = $npc_manager.flags.hascagekey>>
<<set $scene.playerhaskey = setup.checkItemInInventory($scene.keyId)>>
<<if $scene.playerhaskey>>
<<deleteItem $player $now $scene.keyId true>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<</if>>
<</if>>
<</if>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup, true)>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemOwned("advance_chastity_cage_key") && !$npc_manager.flags.took_adv_key>>
You wait in case she might have anything else, or be in the mood for mercy but she dismisses you with a wave and you leave the office.
<<elseif $npc_manager.flags.trustplayerwithkey>>
You turn to go but <<=setup.getNpcName('npc_manager', 'formal')>> stops you one last time.<br>
<br>
"@@.npc_manager;One last thing, before you go <<=$player.first_name>>, I will be holding onto your chastity key. If you behave yourself I may reinstate them someday but for now well... I think a bit of extra focus is just what you need for today, hmm? That should help curb your rebellious behaviour. Do I make myself clear?@@"<br>
<br>
<<if !$scene.managerhadkey>>
You stand in silence for a moment before she shakes her head again.<br>
<br>
"@@.npc_manager;Well? Hand it over!@@"<br>
<br>
<<if $scene.playerhaskey>>
Nervously you place the key in her palm. She smiles in satisfaction. "@@.npc_manager;And do not think you will be getting this back for a good long while @@"
<<elseif $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
You remind her that you are in the midst of the chastity trial and do not have access to the key.<br>
<br>
"@@.npc_manager;Oh, right, well, at least that means you will remain properly locked giving you one thing that you are unable to screw up.@@"
<<else>>
You explain that you do not actually have the key with you...<br>
<br>
"@@.npc_manager;Really? Yet another failure then. Well do remember to bring it with you whence you return if you hope to salvage anything from this morning's debacle.@@"
<</if>>
<<else>>
She waits for you to nod in acknowledgement before continuing.<br>
<br>
"@@.npc_manager;Good to see we are on the same page. So I will be continuing to hold on to this@@" she adds, showing of the key dangling from her thin necklace, "@@.npc_manager;for the rest of the day. You may, of course ask for it back after work but... well, you will need to get out of your current hole and really impress me.@@"
<</if>>
<br><br>
You nod, feeling quite awkward, then leave the office.
<<else>>
You wait in case she might have anything else, or be in the mood for mercy but she dismisses you with a wave and you leave the office.
<</if>>
<br><br>
[<<moveTo "company_lobby" "Leave work." 0 >>]
</div>/*#
#desc: sent home/with chastity rights revoked for failing morning inspection twice in same day
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You slowly turn to go, looking back at her in hopes she might change her mind. Her expression remains stern and annoyed, watching you like a hawk until you have left the room. You make your way to the elevator to head home for the day, already regretting your failure.<br>
<br>
[<<moveTo "company_lobby" "Leave work.">>]
</div>/*#
#desc: sent home/with chastity rights revoked for failing morning inspection twice in same day
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<if $roomchange == true>>
<<removeAllClothing $player $now>>
<<destroyMaleClothing $player $now false>>
<<if setup.checkItemOwned('satin_panties')>>
<<if !setup.checkItemInInventory('satin_panties')>>
<<wardrobeToItem "satin_panties">>
<</if>>
<<else>>
<<addItem 'satin_panties'>>
<</if>>
<<wearItem $player $now 'satin_panties' true>>
<<if setup.checkItemOwned('pink_pantyhose')>>
<<if !setup.checkItemInInventory('pink_pantyhose')>>
<<wardrobeToItem "pink_pantyhose">>
<</if>>
<<else>>
<<addItem 'pink_pantyhose'>>
<</if>>
<<wearItem $player $now 'pink_pantyhose' true>>
<<if setup.checkItemOwned('satin_bra')>>
<<if !setup.checkItemInInventory('satin_bra')>>
<<wardrobeToItem "satin_bra">>
<</if>>
<<else>>
<<addItem 'satin_bra'>>
<</if>>
<<wearItem $player $now 'satin_bra' true>>
<<set _itemList = ['satin_bra', 'pink_pantyhose', 'satin_panties']>>
<<fixClothSet 'p2_daily_evaluation_clothes' _itemList>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You shed your underwear and she casually pitches all of the male attire you have with you into the trash, following it up with a match for good measure causing them to go up in flames startlingly quickly.<br>
<br>
"@@.npc_manager;Here, this will have to do for the day.@@" She states, handing you a simple, basic set of pink underthings.<br>
<br>
Lacking alternative options you put them on, bra, panties and hose without voicing further objections.<br>
<br>
"@@.npc_manager;Better. How about we forget all of this happened and try this again fresh? Hmm?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_2" "Try again to pass inspection." 60 "<<set $scene.seriousoffense = false>>">>]
</div><<initRoom>>
<<set _x = setup.addManagerEndlessTask2($now, !$npc_manager.flags.playerstayedinchastity, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<moveTo "room_office_sissy_secretary_work_morning_start">>/*#
#desc: manager mentions after-work party
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.affection += 1>>
<<set $player.work.nowWorking = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Noting her stressed demeanour you turn and ask <<=setup.getNpcName('npc_manager', 'formal')>> what is bothering her.<br>
<br>
"@@.npc_manager;Oh, it is this after-work party... thing. I normally try to avoid them but one of the higher ups insists he wants to see me, and since he flies out in the morning, well...@@"<br>
<br>
She lets out a frustrated sigh.<br>
<br>
"@@.npc_manager;It would not be so bad but it is just dull to go alone, nobody to save me from when Paul from accounting starts droning on and on.@@"<br>
<br>
[<<moveTo "event_manager_preparty_2_accept" "Offer to accompany her." 180>>]<br>
[<<moveTo "event_manager_preparty_2_wellwish" "Wish her luck at the party." 180>>]
</div>/*#
#desc: manager mentions after-work party
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $player.work.nowWorking = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Deciding it is best not to disturb a sleeping lion you reach for the door only for the hinges to make an uncharacteristically loud noise and draw her attention.<br>
<br>
"@@.npc_manager;You are still here? I thought I- wait... actually, this could well be the solution to my problem. I do not know why I did not think of it earlier!@@"<br>
<br>
You turn nervously back as she seems to peer through you. "@@.npc_manager;Yes, that would work quite well. You see there is this after-work party... thing. I normally try to avoid them but one of the higher ups insists he wants to see me, and since he flies out in the morning, well...@@"<br>
<br>
She lets out a frustrated sigh.<br>
<br>
"@@.npc_manager;It would not be so bad but it is just dull to go alone, nobody to save me from when Paul from accounting starts droning on and on but if I had someone with me...@@"<br>
<br>
<<printThought $player "She obviously wants me to be her plus one... but why isn't she just ordering such?">><br>
<br>
[<<moveTo "event_manager_preparty_2_accept" "Offer to accompany her." 180>>]<br>
[<<moveTo "event_manager_preparty_2_wellwish" "Wish her luck at the party." 180>>]
</div>/*#
#desc: offer to accompany manager to after-work party
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $player.flags.fem_style.female == "">>
<<set $player.flags.fem_style.female = 'obedient'>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop.unlock_source = "female">>
<</if>>
<<set _x = $shopStatus['mall_apparel_store'].unlocked_inventory.push('designer')>>
<<set _x = $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.push('maid')>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
'theme_psychiatrist_manager_header'
>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
With her mentioning the difficulties incurred by attending the party alone you ask if, perhaps, you might accompany her this evening?<br>
<br>
<<if $player.flags.fem_style.name == "">>
"@@.npc_manager;Mister <<=$player.last_name>>, are you asking me on a Date? I would n...@@"
<<else>>
"@@.npc_manager;Miss <<=$player.last_name>>, are you asking me on a Date? I would n...@@"
<</if>>
is her answer in a tone that leaves no doubt of what directions it's heading towards, and the direction is utter defeat, but then there's a sudden change in her expression as it shifts from "No way" to a curious "Wait a second." <br>
<br>
"@@.npc_manager;Give me a second to think this through,@@" she says, a billion neurons fired at once, forming some devious plan. She looks at you for several long moments, and you get the weird feeling that she is undressing and... redressing(?) you with her eyes.<br>
<br>
"@@.npc_manager;Hmm, yes... I mean, that outfit is not really appropriate for an event such as this...But yes, thank you for the offer to come with me, that would be quite wonderful.@@"<br>
<br>
[<<moveTo "event_manager_preparty_3" "What did you just volunteer for?" 240>>]
</div>/*#
#desc: manager gives you dress for after-work party
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $scene.volunteeralt = (setup.getCurrentMakeup($player) != "" && setup.analyzeWornTags(['female','male','unisex']) == 'female' && setup.getItemObjFromType("shoes").hasOwnProperty('heels'))>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.volunteeralt>>
<<=setup.getNpcName('npc_manager', 'formal')>> pauses, her gaze scanning over your body, a smile slowly spreading across her face as her eyes pass over your heels, your feminine garb, and finally your made-up face.<br>
<br>
"@@.npc_manager;Hmm, yes. You really are becoming such a lovely girl... I think this is an opportunity for you to show off. As nice as you look it is not quite appropriate for a fancy soiree, but there is time for you to head home and change into something more appropriate... if you think you can impress me?@@"<br>
<br>
Your heart skips a beat at the way she looks at you...<br>
<br>
"@@.npc_manager;So, are you up to the challenge?@@"<br>
<br>
You pause, you certainly do not own anything more formal than what you have, but certainly the mall would have something? <<if $player.money.total < 100>>Of course that still leaves the question of if you could afford it...<</if>><br>
<br>
"@@.npc_manager;So what will it be, my dear, you want to find something of your own? I would like to get to the party by eight so you have until a quarter to to get presentable and return to the office.@@"<br>
<br>
[<<moveTo "event_manager_preparty_4_volunteer" "Say you'll be back dressed for the party." 240 "<<set $scene.find_dress=true>>">>]<br>
[<<moveTo "event_manager_preparty_4_volunteer" "Say you don't have anything appropriate to wear." 240 "<<set $scene.find_dress=false>>">>]
<<else>>
Before you can comment further she has moved to the wardrobe-like cabinet in the corner of her office. Over her shoulder you can glimpse that most of the clothing within appears to fall into one of two groups - those that are some combination of intimidating red and/or black, and those that are all feminine pink. She searches for only a few moments before returning carrying a pink dress and holding it up in front of you.<br>
<br>
"@@.npc_manager;Yes, this should do for you quite nicely. Go ahead and return to your office and get changed while I slip into something of my own.@@"<br>
<br>
<<if $player.flags.fem_style.female=="">>
Walking out of the room you are in a bit of a daze, still staring at the dress in your hands. Whereas your current outfit could, in the right (lack) of light be considered male, or at least unisex this.... this is a woman's dress, and you just committed to wearing it, in public. On autopilot you close the door to the inner office behind you and take a moment to compose yourself, placing the dress over a chair and inspecting it as you try to psych yourself up to change.
<<else>>
Walking out of the room you are in a bit of a daze, still staring at the dress in your hands. Even though you're already used to wearing feminine clothes, this party dress is for a formal event, the sort of thing you haven't yet attended since acquiring your new taste in clothes. Holding off from examining the dress just yet you you close the door to the inner office behind you before placing the dress over a chair and inspecting it.
<</if>>
<br><br>
[<<moveTo "event_manager_preparty_4_change" "Examine the dress." 240>>]
<</if>>
</div>/*#
#desc: wish manager luck at after-work party, she offers to pay you to come with
#status: PARTIAL 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You tell her you are sorry about the forthcoming dull party, but wish her luck nonetheless. You are turning to go when she calls out. "@@.npc_manager;Wait...@@"<br>
<br>
You turn back towards her.<br>
<br>
"@@.npc_manager;You know, I just realised there is an easy solution to part of my problem - you could come with me! Oh, do not worry, it would be considered overtime, beyond the current scope of your responsibilities, so you would be paid... let us say... <<=$player.work.payment>> credits?, That seems more than fair, would you agree?@@"<br>
<br>
[<<moveTo "event_manager_preparty_2a_paid_accept" "Accept the offer to be paid to accompany her to the party." 180>>]<br>
[<<moveTo "event_manager_preparty_2a_paid_decline" "Decline her offer to attend the party." 180>>]
</div>/*#
#desc: accept manager's offer to pay you to come with her to after-work party
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $player.flags.fem_style.female == "">>
<<set $player.flags.fem_style.female = 'money'>>
<</if>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop.unlock_source = "female">>
<</if>>
<<set _x = $shopStatus['mall_apparel_store'].unlocked_inventory.push('designer')>>
<<set _x = $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.push('maid')>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
'theme_psychiatrist_manager_header'
>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=$player.work.payment>> credits is more than fair, indeed, it is basically a full weeks pay! And just for a few hours! You quickly accept her offer without thinking twice. Judging by her catlike smile of satisfaction perhaps you may have been too rash...<br>
<br>
"@@.npc_manager;Wonderful, you will get your money at the end of the evening, for now we need to get you ready!@@"<br>
<br>
[<<moveTo "event_manager_preparty_3" "What did you just sign up for?" 240>>]
</div>/*#
#desc: decline manager's offer to pay you to come with her to after-work party
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Although <<=$player.work.payment>> is... quite a bit of money, basically a weeks wage, you decline her proposal. She looks disappointed, though, at the same time, she did not exactly make a great "sales pitch" beyond the monetary offer.<br>
<br>
Resigned to her fate she dismisses you to prepare herself for the party.<br>
<br>
[<<moveTo "company_lobby" "leave">>]
</div>/*#
#desc: respond to manager's offer to find your own dress for the party.
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if !$scene.find_dress>>
<<addItem "pink_formal_dress">>
<<setScene>>
<<set $scene.origFem = setup.getTotalValue('feminization')>>
<<setThreshold 'feminization' 'good_girl' 'office_party' true>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 0, 19, 45)>>
<<set _taskCondition = setup.getConditions(_nextDate, ["playerClean", "clothesClean", "fancyMakeup", "fancyFemale", "heels", "atOffice"])>>
<<set _taskDone = {
"trigger_event": "event_manager_preparty_volunteer_dress"
}>>
<<set _taskFailed = {
"trigger_event":"event_manager_preparty_volunteer_dress"
}>>
<<addTask 'party_dress'
$now
'npc_manager'
'task_manager_preparty_volunteer_dress'
_taskCondition
_taskDone
_taskFailed>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<if $scene.voluntary_failed>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager_formal.png">>
<<else>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.find_dress>>
She smiles at your suggestion and quickly dismisses you. Planning things out on your way down the elevator you come to the conclusion that, owing to your own miniscule wardrobe, there is only one place to go - the mall. You've been so strapped for cash you haven't really looked for formal wear in... you don't know how long, maybe now is the time?<br>
<br>
<<printThought $player "If I'm going to impress her I'm going to need a dress and some nice heels, and my makeup had better be perfect as well!">><br>
<br>
[<<moveTo "room_mall" "To the mall!">>]
<<else>>
You apologise for not having anything appropriate to wear to a formal party.<br>
<br>
Instead of being upset she merely nods and continues forward. "@@.npc_manager;Of course, I suppose you really have not had the opportunity to dress up of late, busy with your new job and all. No matter, I have just the thing for you!@@"<br>
<br>
Swiftly moving to the wardrobe-like cabinet in the corner of her office she spends a few moments searching before turning back towards you carrying a pink dress.<br>
<br>
"@@.npc_manager;Yes, this should do for you quite nicely. Go ahead and return to your office and get changed while I slip into something of my own.@@"<br>
<br>
<<if $player.flags.fem_style.female=="">>
Walking out of the room you are in a bit of a daze, still staring at the dress in your hands. Whereas your current outfit could, in the right (lack) of light be considered male, or at least unisex this.... this is a woman's dress, and you just committed to wearing it, in public. On autopilot you close the door to the inner office behind you and take a moment to compose yourself, placing the dress over a chair and inspecting it as you try to psych yourself up to change.
<<else>>
Walking out of the room you are in a bit of a daze, still staring at the dress in your hands. Even though you're already used to wearing feminine clothes, this party dress is for a formal event, the sort of thing you haven't yet attended since acquiring your new taste in clothes. Holding off from examining the dress just yet you you close the door to the inner office behind you before placing the dress over a chair and inspecting it.
<</if>>
<br><br>
[<<moveTo "event_manager_preparty_4_change" "Examine the dress." 240>>]
<</if>>
</div>/*#
#desc: time to goto the party on voluntary path (phone call if fail to show up)
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<if previous() == "company_lobby" || $scene.ran_back>>
<<set $scene.voluntary_dress = setup.checkTaskUntimedComplete('party_dress')>>
<<completeTask 'party_dress' $now $scene.voluntary_dress>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<set $scene.voluntary_failed = true>>
<<set $scene.find_dress = false>>
<<addItem "rhinestone_choker">>
<<swapItem $player $now "rhinestone_choker">>
<<incrementEmotion 'satisfaction' 'npc_manager' 3>>
<<else>>
<<set $player.location = "Phonecall">>
<<if !setup.checkTaskReason("party_dress","clothesClean")>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if !setup.checkTaskReason("party_dress","playerClean")>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if !setup.checkTaskReason("party_dress","fancyMakeup")>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<if previous() == "company_lobby" || $scene.ran_back>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager_formal.png">>
<<else>>
<<createBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if previous() == "company_lobby" || $scene.ran_back>>
You <<if $scene.ran_back>>race<<else>>walk<</if>> into the office to find <<=setup.getNpcName('npc_manager', 'formal')>> standing waiting for you.
<<if $scene.voluntary_dress>>
There is a shared pause as you take one another in. <<=setup.getNpcName('npc_manager', 'formal')>> has traded in her normal work attire for something far more formal, and sexy; the long, narrow black dress and long black opera gloves take her normal sultry appearance and crank it up to eleven. Her tall black-clad figure combines with her red hair to put you in mind of some sort of occult candle... but the demon empress has already been summoned and you are very liable to be burned.<br>
<br>
Though she exhibits better control you can tell that she is perhaps equally impressed with your own attire, a slight smile and a nod of acknowledgement followed by her breaking the silence.<br>
<br>
"@@.npc_manager;Well, well. You clean up remarkably well, even better than what I had in mind and I am glad you took the initiative to find something of your own.@@"<br>
<br>
You blush slightly at the comment, though hopefully your makeup takes care of hiding most of that.<br>
<br>
"@@.npc_manager;That said... I believe a bit of jewelry would really be the cherry on top.@@"<br>
<br>
She must have been planning this all along because she reveals a sparkling diamond choker and brings it around your throat. The feeling of her closing it around your neck has you tremble slightly.<br>
<br>
Smiling down and admiring your look she finally offers her arm. "@@.npc_manager;Come along, my dear. We have a party to attend.@@"<br>
<br>
Putting your hand gently inside of her elbow as she leads you up the hall towards the elevator. Focusing on walking in your heels you feel like an excited girl on her way to prom...<br>
<br>
[<<moveTo "event_party_1_1" "Head up to the party." 660>>]
<<else>>
You gawk at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> outfit - she has traded in her normal work attire for something far more formal, and sexy; the long, narrow black dress and long black opera gloves take her normal sultry appearance and crank it up to eleven. Her tall black-clad figure combines with her red hair to put you in mind of some sort of occult candle... but the demon empress has already been summoned and you are very liable to be burned.<br>
<br>
She returns your look of awe with a slight frown.
<<if !setup.checkTaskReason("party_dress","fancyFemale") || !setup.checkTaskReason("party_dress","heels")>>
"@@.npc_manager;I am disappointed, this is... not what I had in mind.@@" You reflexively brace for punishment but her tone immediately softens. "@@.npc_manager;No matter, I have a suitable matching outfit for you, come.@@"<br>
<br>
[<<moveTo "event_manager_preparty_4_volunteer" "Follow." 30 "<<set $scene.find_dress=false>>">>]
<<else>>
<<if !setup.checkTaskReason("party_dress","clothesClean")>>
"@@.npc_manager;Hmf, a lovely outfit and yet you failed to keep all of your clothing clean... Well I guess nobody will notice them under that lovely dress. Still, quite disappointing.@@"<br>
<br>
<</if>>
<<if !setup.checkTaskReason("party_dress","playerClean")>>
She takes a sniff of you "@@.npc_manager;did you forget to wash? Very sloppy but... we are out of time.@@" Producing a bottle of perfume she gives you several squirts, "@@.npc_manager;I suppose that will have to suffice, but know that I am quite disappointed that you did not do everything I instructed.@@"<br>
<br>
<</if>>
<<if !setup.checkTaskReason("party_dress","fancyMakeup")>>
<<if(setup.getCurrentMakeup($player)=="sissy_doll")>>
"@@.npc_manager;As to your lack of makeup... Well, while I appreciate you choosing this makeup, it hardly fits a formal event like the one we'll be attending shortly.@@"
<<else>>
"@@.npc_manager;As to your lack of makeup...I suppose you look cute enough naturally to get away with it... but I am disappointed.@@"
<</if>>
<br><br>
<</if>>
Seemingly not satisfied she produces something that sparkles in her hands and steps towards you. "@@.npc_manager;Here, this should help draw attention away from some of your... efforts.@@"<br>
<br>
You stand nervously as she fastens a rhinestone choker around your neck, smiling at you before offering her elbow. You feel like a girl on the way to prom as you place a hand in the crook of her arm and follow her out of the office.<br>
<br>
[<<moveTo "event_party_1_1" "Head up to the party." 660>>]
<</if>>
<</if>>
<<else>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not returning to the office for the party.<br>
<br>
"@@.npc_manager;<<=$player.call>> <<=$player.last_name>>! Where are you? We need to leave soon and I will be very cross if I have to attend stag. Drop whatever you are doing and come back in. Now. Unless you want tonight to mark the conclusion of your employment.@@"<br>
<br>
She hangs up.<br>
<br>
<<printThought $player "Uh-oh, I had better hurry back to the office...">><br>
<br>
<<if setup.getIndecentValue($player)==0>>
[<<moveTo 'event_manager_preparty_volunteer_dress' "Race back to the office." 600 "<<set $scene.ran_back = true>>">>]
<<else>>
[@@.link_locked;I'm not wearing enough clothing to head to the office.@@]
<</if>>
<br>
[<<moveTo 'gameover_party' "Tell her you will not be coming in and tender your resignation." 0>>] <<hint $options "This is probably a bad idea.">>
<</if>>
</div>/*#
#desc: examine formal dress and get changed for the party
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if !setup.checkItemOwned('pink_formal_dress')>>
<<addItem "pink_formal_dress">>
<<setScene>>
<<set $scene.origFem = setup.getTotalValue('feminization')>>
<<if $player.flags.fem_style.female == "money">>
<<setThreshold 'feminization' 'money' 'office_party' true>>
<<else>>
<<setThreshold 'feminization' 'good_girl' 'office_party' true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.forced_variant>>
Once again you find yourself staring
<<else>>
You stare
<</if>>
at the
<<if $scene.origFem > 10>> /* ie: you're already dressing female */
cute, but classy, dress
<<elseif $scene.origFem > 7>>
pink, but professional, dress
<<else>>
pink dress. Pink. Dress. So much pink. So much dress. A pink dress
<</if>>
draped over the chair. You take a deep breath and examine it closely, attempting to push your emotions aside and appraise it analytically.<br>
<br>
On the one hand, it appears to be a fairly modest outfit. While it doesn't have a high collar or sleeves you'd guess that the skirt will cover down over most of your calf. It is a narrow pencil style with a bit of fluting at the bottom dozen centimeters or so, nothing so tight that you would be hobbled but you will be restricted to short, ladylike steps and there is zero chance anyone could look up it with anything short of a shoe-camera.<br>
<br>
Up top it has a somewhat playful off the shoulder style but with a wavy neckline
<<if $player.body.breastsize[0] == 0>>
that would serve to obscure your lack of breasts. There is a, to you, useless integrated bra to cover for the strapless collar design precluding wearing a standard bra.
<<elseif $player.body.breastsize[0]>5>>
but you judge it would be insufficient to hide your mammoth breasts; fortunately there does look to be an integrated bra so you'll have support without having to wear a bra and have the straps clash with the open collar design.
<<else>>
that would serve to conceal your breasts, peeking inside it looks like there is an integrated strapless bra, a good thing given that the strapless collar design somewhat precludes wearing a normal bra.
<</if>>
<br><br>
All in all the outfit is quite nice, you would certainly approve of seeing it on a woman, but it also wouldn't turn heads or give any untoward ideas about the wearer.
<<if $scene.origFem > 10>> /* ie: you're already dressing female due to voluntary path */
Overall it is a quite pretty outfit, and you will welcome adding it to your wardrobe at the end of the night.<br>
<<elseif $scene.origFem > 7>>
As your first public outing in "full" female attire you could be doing a lot worse...<br>
<br>
<<printThought $player "And a lot more embarrassing, given some of the other stuff I've had to do.">><br>
<<else>>
You still can't quite wrap your head around wearing it yourself but... well, that seems like what is about to happen.<br>
<br>
<<printThought $player "How do these things always seem to happen to me?">><br>
<</if>>
<br>
You keep staring at the dress, but it doesn't seem to be changing and there's really nothing left to do but put it on...
<<if setup.getTotalValue('makeup')>0>>
Well, maybe more then one thing to do. If you really choose to go through this this, it might be a good time to put your makeup skills to good use.
<</if>>
<br><br>
<<set _thoughts = setup.getThougtList()>>
<<if _thoughts!= "">>
<<printThought $player _thoughts>><br>
<br>
<</if>>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Use your web-cam at your PC to check your makeup.' 0 '<<set $makeuproom="Changing room">><<set $return_makeuproom="event_manager_preparty_4_change">><<set $makeuproom_image="./images/scenes/makeup_01.png">><<set $return_makeuproomtext="Stand up from your desk.">><<set $makeuproom_water=true>>'>>]<br>
<</if>>
<<if setup.checkItemTypeWorn("stockings") && setup.checkItemTypeWorn("panties") && !setup.checkItemTypeWorn("bra") && setup.checkItemWorn('pink_formal_dress')>>
[<<moveTo "event_manager_preparty_5_final_prep" "Go to the party.">>]<br>
<<else>>
[@@.link_locked;You cannot go to the party looking like this!@@] <<hint $options "You need to wear the dress given to you, be presentable with stockings and panties, and wear no bra, unless it's strapless.">><br>
<</if>>
<<if $scene.forced_variant>>
[@@.link_locked;There's no escaping your fate now... if there ever was. @@]
<<else>>
[<<moveTo "event_manager_preparty_5_flee" "Chicken out and flee the office.">>]
<</if>>
</div>/*#
#desc: manager gives you shoes and jewelry to finish prep for after-work party
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<setScene>>
<<set $scene.orgMakeUp = setup.getCurrentMakeup($player)>>
<<set $scene.orgMessed = $player.makeup.messed>>
<<set $scene.orgHeelValue = setup.getTotalValue("heels")>>
<<setThreshold 'heels' 'heel_training' 'newbie' true>>
<<if ($scene.orgMakeUp != "") || ($scene.orgMakeUp == "nomakeupmakeup")>>
<<set $player.makeup.template = "normalmakeup">>
<</if>>
<<if ($player.makeup.messed>25)>>
<<set $player.makeup.messed = 0>>
<</if>>
<<addItem "rhinestone_choker">>
<<swapItem $player $now "rhinestone_choker">>
<<if !$scene.voluntary_dress>>
<<addItem "pink_court_shoes">>
<<swapItem $player $now "pink_court_shoes">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
/* note: assumed new file npc_manager_formal.png for manager in "formal" attractive description concepted as something in this: manager_formal.jpg vein */
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager_formal.png">>
<div id="invframe" class="scrolltext">
<<if $scene.voluntary_dress || $scene.voluntary_failed>>
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office. Even having seen her in that dress a few minutes ago you find yourself almost taken aback at her sultry beauty.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office and your jaw about hits the floor. The long, narrow black dress and long black opera gloves take her normal sultry appearance and crank it up to eleven. Her tall black-clad figure combines with her red hair to put you in mind of some sort of occult candle... but the demon empress has already been summoned and you are very liable to be burned.
<</if>>
<br><br>
Her smile has your knees rocking inside your skirt. An expression of pure devouring hunger, the look in her eyes making it clear that she is in total command... and she knows it, moreover she likes it.<br>
<br>
<<if ($scene.orgMakeUp != "") || ($scene.orgMakeUp == "nomakeupmakeup")>>
"@@.npc_manager;You look even better in that than I was expecting.
<<if $scene.orgMakeUp == "nomakeupmakeup">>
But that sad excuse of a makeup on that cute face of yours will simply not suffice. I know, a lot of girls like the natural look of a "no makeup" makeup, but for a social event like this, you need to dress to impress.
<<elseif $scene.orgMessed != "">>
But that cute face of yours, as inexplicably without facial hair it is, needs to be ready for a social event. Which means of course make up. Think of it as a war paint.
<<else>>
But that sad excuse of a makeup on that cute face of yours will simply not suffice. I think you meant well, but you need to learn how to handle these things in the future by yourself!
<</if>>
Here, take a seat and let me help you fix this.@@"<br>
<br>
You're led to the couch at the side of the office, only to sit down and look upward, while <<=setup.getNpcName('npc_manager', 'formal')>> starts to apply makeup on your visage like a pro. Is she that good at everything she does? You get suddenly pulled out of this thought, as she pulls out a small hand mirror from her handbag to show you the results of her efforts. You simply gulp at the cute face looking at you, only to realise it's yours.<br>
<br>
"@@.npc_manager;Now for a final few touches.@@"
<<else>>
"@@.npc_manager;You look even better in that than I was expecting. Though it would be better with some proper makeup... Maybe next time. For now I have just a few final few touches.@@"
<</if>>
<br><br>
<<if !$scene.voluntary_dress>>
Her hand appears from behind her back to reveal that she had been holding a pair of court shoes - in patent pink, of course. Handing them to you she instructs you to put them on and you dutifully obey, slipping one onto each foot and <<if $scene.orgHeelValue >= setup.getItemObj("pink_court_shoes").heels.difficulty>>standing heels-together at attention.<<elseif $scene.orgHeelValue > 0>>barely balancing in them.<<else>>wobbling slightly atop them.<</if>>
<<if $scene.orgHeelValue<1>>
Shaking her head, <<=setup.getNpcName('npc_manager', 'formal')>> looks at you sadly.<br>
<br>
"@@.npc_manager;Are you trying to tell me in your usual maladroit way, that you have never walked in high heels before? Okay, now listen carefully, this is going to be a very fast introduction into walking in heels, something you should have done ages ago. Consider yourself lucky for your cushioned behind and your prolific pelvis. Your centre of gravity is lower then the usual male one's, almost as if nature was going to tell you something. Anyway, this will help you to keep your balance better. Did you used to study martial arts? I surmise you would have a very powerful stance. Anyway, unlike what you're trying right now you should walk heel to toe. No, now you are just stomping. Heel to toe. Start slowly. Yes, that is it. Now straighten out that spine of yours... Imagine if some rope was pulling up on your neck. Now, small, slow steps.@@"<br>
<br>
You manage to make a few steps without stumbling, and after a few minutes even manage to find some rhyme and rhythm to the whole matter.<br>
<br>
"@@.npc_manager;Now do not put your feet next to each other, put them in front of the other, like you are walking along a line or a rope. Yes, that is better. Due to your nice, big hips you are automatically starting to strut. Very nice. Yes, I think you're finally ready!@@"<br>
<br>
<</if>>
<</if>>
She moves closer and you freeze like a prey animal. One gloved hand reaches up to caress your exposed throat as she smiles at you.<br>
<br>
"@@.npc_manager;Hmm, your neck would look so much better with... something around it. Fortunately I have just the thing.@@"<br>
<br>
You remain motionless as she produces a glittering diamond choker that she proceeds to close around your throat before stepping back.<br>
<br>
"@@.npc_manager;Yes... that will suffice.... for the time being.@@"<br>
<br>
You aren't sure what to make of that comment as she walks past you and opens the door out to the hallway.<br>
<br>
"@@.npc_manager;Come along now. The party is up in the penthouse, we had best arrive soon.@@"<br>
<br>
Gulping and mindful of the choker snug around your throat you manage to remember how to move.
<<if setup.getTotalValue("heels") > setup.getItemObj("pink_court_shoes").heels.difficulty>>
gracefully walking towards her.
<<elseif setup.getTotalValue("heels") == 0>>
swaying unevenly atop your heels as you walk towards her.
<<else>>
carefully walking towards her.
<</if>>
She offers you an arm and you reflexively take it<<if setup.getTotalValue("heels") < setup.getItemObj("pink_court_shoes").heels.difficulty>> for balance<</if>> as she leads you towards the elevator.<br>
<br>
[<<moveTo "event_party_1_1" "Head up to the party." 660>>]
</div>/*#
#desc: try to run away before after-work party
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = "Phonecall">>
<<include enterroom>>
<<if $roomchange == true>>
<<set $npc_manager.flags.party.flee = true>>
<<set $scene.forced_variant = true>>
<<incrementEmotion 'anger' 'npc_manager' 10>>
<</if>>
<<initRoom>>
<<createBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are halfway across the lobby when you get a phone call. It is from <<=setup.getNpcName('npc_manager', 'formal')>>. You heart catches in your throat and you consider making a run for it, only to look up and spot a security guard walk in front of the door. You think it is a coincidence... until he stares you down and gestures ominously towards your ringing phone. You gulp and answer.<br>
<br>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>! Where the hell did you go? You made a commitment and I expect you to STICK to that commitment. Get back up here and get dressed. NOW!@@"<br>
<br>
You wince as she slams the phone in your ear, a glance towards the exit finds the refrigerator-shaped guard now pointing back towards the elevator.<br>
<br>
<<printThought $player "Looks like I don't have a choice...">><br>
<br>
You turn around and return to the elevator.<br>
<br>
[<<moveTo "event_manager_preparty_4_change" "Go back upstairs.">>]
</div>/*#
#desc: accompany manager on the way to after-work party and meet doorperson
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "You're out in public with your <<=setup.getNpcName('npc_manager', 'title')>>!">>
<<set $npc_manager.flags.party.first_attend = true>>
<<if ($npc_manager.affection+$npc_manager.satisfaction)>$npc_manager.anger>>
<<set $scene.sentHome = false>>
<<else>>
<<set $scene.sentHome = true>>
<<removeItem $player $now 'rhinestone_choker' true>>
<<deleteItem $player $now 'rhinestone_choker'>>
<</if>>
<<if $player.flags.fem_style.female == "money">>
<<set $player.money.total += $player.work.payment>>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.push('formal')>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.push('formal')>>
<</if>>
<<set $player.location = "Outside Upper Event Room on 99th floor">>
<<include enterroom>>
<<initRoom>>
/* note: assumed new file npc_manager_formal.png for manager in "formal" attractive description concepted as something in this: manager_formal.jpg vein */
<<createBGR "./images/locations/company_ceremonial_hall.png" "./images/characters/npc_manager_formal.png">>
<div id="invframe" class="scrolltext">
Nervously standing next to <<=setup.getNpcName('npc_manager', 'formal')>> as the elevator goes, up, and up, and up you try to avoid staring at your reflection in the polished door.<br>
<br>
<<printThought $player "Is that really me? Do I really look that good?">><br>
<br>
Slightly distracted you almost trip hurrying to catch up as your manager disembarks on the 99th floor. You've never been remotely this high in the building and the hallway looks more like a swanky hotel than an office. Making your way up the hall you stop in front of a hostess who smiles and gives a small bow towards your manager.<br>
<br>
"Ah, welcome back <<=setup.getNpcName('npc_manager', 'Mistress')>>." <br>
<br>
<<printThought $player "Wait, did she just say Mistress, what?">><br>
<br>
"@@.npc_manager;... and guest.@@" your manager adds only for a look of concern to appear on the hostess' face.<br>
<br>
Looking even more worried she taps on her tablet for a bit before swallowing nervously and responding. "I am very sorry but your reservation did not mention a plus one. I really do apologise for this but without writing ahead the party isn't ready to handle this." <br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows as your previous butterflies turn to stone and drop like rocks into the pit of your stomach.<br>
<br>
<<printThought $player "RSVP? I didn't know I needed to do that...">><br>
<br>
You start to apologise to <<=setup.getNpcName('npc_manager', 'formal')>> for neglecting your duties but she cuts you off with a wave of the hand.<br>
<br>
<<if !$scene.sentHome>>
"@@.npc_manager;No, my sweet sissy, you did nothing wrong. No, it would appear that someone else was not properly... prepared for this eventuality.@@"<br>
<br>
She turns back to the hostess and surprises you as she continues.<br>
<br>
"@@.npc_manager;If you would kindly inform <<=setup.getNpcName('npc_boss', 'formal')>> that I will not be attending tonight's soiree? I just will not abide abandoning my sweet secretary after she went to such trouble to get dressed special for the occasion.@@"<br>
<br>
The hostess curtseys submissively, though you have a feeling she isn't looking forward to relaying the message. "Of course, Mistress. All of us here apologise that things were not prepared for you and we will do what we can to be ready for next time." <br>
<br>
"@@.npc_manager;See that you do. Now then, <<=$player.first_name>> come along, there is a nice little cocktail lounge on ninety-three...@@"<br>
<br>
<<printThought $player "Wait... did she just blow off the party... for me?">><br>
<br>
[<<moveTo "event_party_1_1_bar" "You hurry to catch up as she walks back to the elevator." 9720>>]
<<else>>
"@@.npc_manager;No, no, this was not your fault my adorably disobedient secretary. No, there are others to blame for not being properly... prepared for this eventuality. Well, I am sure they will attend to it in time, but for now it means that you will just have to miss out on the party...@@"<br>
<br>
Stepping away from you she turns back as the hostess holds the door, you can barely peek past to see a quite ostentatious ballroom beyond.<br>
<br>
As if remembering something <<=setup.getNpcName('npc_manager', 'formal')>> turns back, reaching out a hand.<br>
<br>
"@@.npc_manager;Your necklace, please.@@"<br>
<br>
Hurriedly you remove your choker and hand it over.<br>
<br>
"@@.npc_manager;A bit unsafe for a pretty little thing to wear that home this late in the day. Well try not to get lost on the way back to the elevator, I will see you tomorrow... Oh... and your attire? Yes, you look far too good in that dress to go back, I expect to see you in fully female clothing from now on, good night!@@"<br>
<br>
You stand there in a daze until the subtle glances from the hostess remind you that you really do not belong on this floor unaccompanied.<br>
<br>
[<<moveTo "room_foyer" "You hurry back to the elevator and head home." 60>>]
<</if>>
</div>/*#
#desc: goto bar instead of after-work party with manager
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $npc_manager.flags.party.ditch = true>>
<<setTmpEffect $player 'alcohol' 1>>
<</if>>
<<set $player.location = "98th Floor Bar">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_cocktail_lounge.png" "./images/characters/npc_manager_formal.png">>
<div id="invframe" class="scrolltext">
The cocktail lounge is just as your manager said - quiet and classy, far nicer than any bar you've ever been to on your own.<br>
<br>
<<printThought $player "Wow, it's like there's a whole city in this building...">><br>
<br>
Taking a seat at a corner table with a gorgeous view out over the city you are surprised when the waitress arrives and you recognise your "old friend" <<=setup.getNpcName('npc_barista', 'first')>> from Cafe 52! You can't quite decide if her skimpy cocktail dress is more or less slutty than her normal maid attire... probably about the same, and it looks to be made of the same rubbery material to boot.<br>
<br>
"@@.npc_barista;What can I get you to drink this eve-@@" She stops, her eyes going wide as she fixates on you with excitement and... is that... attraction? "@@.npc_barista;Oh, hiya!, I like LUUUUURRRVVVVEEE that dress! What are you doing way up here?@@"<br>
<br>
You quickly glance across at <<=setup.getNpcName('npc_manager', 'formal')>> but she just smiles and gives a nod to grant you permission to respond. You explain the mix-up at the party and then ask what <<=setup.getNpcName('npc_barista', 'first')>> is doing up here instead of her normal job.<br>
<br>
"@@.npc_barista;Would you believe, like, the same thing? Normally I'd be having fun at my other job right now but noooo someone called in sick so they're short waitresses for the party, so one of the cocktail girls gets volunteered and before you know it, bing, bang, boom, I end up with an extra shift here! Oh well, what can I like, get you to drink?@@"<br>
<br>
<<printThought $player "I wonder if being short-staffed is why the couldn't let me in, I mean one person seems pretty minor, what with <<=setup.getNpcName('npc_manager', 'formal')>> being head of HR and everything...">><br>
<br>
"@@.npc_manager;I will have a Macallan. Fifty years, neat. You?@@"<br>
<br>
Hearing her order steals your voice, you aren't exactly an expert on liquor; you're a cheap drunk and you freely admit to being fine with what is basically swill, but you're pretty sure what she just ordered is worth more than anything you've ever drank... combined.<br>
<br>
You try to sputter a response but your manager cuts in with a smile.<br>
<br>
"@@.npc_manager;She will have a strawberry daiquiri.@@"<br>
<br>
"@@.npc_barista;Oh, that's, like, my favourite, too!@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'first')>> scampers off to retrieve the order and <<=setup.getNpcName('npc_manager', 'formal')>> looks across at you with a catlike smile. "@@.npc_manager;So... Now that we are off the clock, as it were, how are things with my favourite secretary?@@"<br>
<br>
Even as your heart flutters at her kind words you struggle to find something to say. Normally things are so straightforward - she's the boss, you're the SISSY secretary, you do what she says... Here, though... while you feel no less subservient it's different, exciting and scary in equal measure...<br>
<br>
<<if $player.flags.onlineUniversity>>
You finally manage to come up with something, mentioning that you've started to take some classes online.<br>
<br>
"@@.npc_manager;Oh you do just continue to impress, well bettering oneself is always good.@@"<br>
<br>
You thank her for the compliment as your drinks arrive.
<<elseif $player.flags.gaming || $player.flags.onlineGaming>>
You explain that you've been mostly working and relaxing playing video games.<br>
<br>
"@@.npc_manager;Hmm, well, if that interests you, I suppose that is fine.@@"<br>
<br>
You can tell she's humoring you and you're glad that your drinks arrive as a distraction.
<<else>>
You realise that you really haven't been doing much that you can think of to talk about, mumbling something about "stuff," grateful when your drinks arrive to provide a distraction.
<</if>>
<br><br>
<<=setup.getNpcName('npc_barista', 'first')>> places your drinks down with a smile, leaning over so that you can't help but get a view of her ample cleavage.<br>
<br>
"@@.npc_barista;Like, here you go! Enjoy!@@"<br>
<br>
You nod in thanks, staring at your very red drink as <<=setup.getNpcName('npc_manager', 'formal')>> swirls her scotch before taking a slow sip and smiling.<br>
<br>
"@@.npc_manager;Come on, I did not invite you up here to drink alone!@@" She says with a smile as you hurriedly take a sip.<br>
<br>
It's sweet, and fruity and... good? You never would have thought of ordering something like this before but... it's pretty tasty, you take another sip and thank her for inviting you out.<br>
<br>
Perhaps it's the just the booze working its magic but your manager starts opening up a bit and you have a remarkably pleasant chat, learning a bit more... though, not really anything specific, about how complicated and stressful her responsibilities are - from the sound of it she hasn't been out after work in months...<br>
<br>
The evening flies by as you feel the warm fuzziness of multiple drinks flow through you. For her part <<=setup.getNpcName('npc_manager', 'formal')>> seems hardly affected, despite slamming back more hard liquor than you drink of your fruity concoctions. Finally it is time to go, your manager helping you out of your choker before escorting you down to the lobby.<br>
<br>
"@@.npc_manager;That was nice, maybe next time you can do a bit more of the talking? As pretty of a thing as you are I would love to have a more comprehensive understanding of what it is that makes you tick.@@"<br>
<br>
She taps your forehead with a single finger, her warm touch sending sparks through your body and having you blushing.<br>
<br>
<<if $player.flags.fem_style.female == "obedient">>
"@@.npc_manager;Anyway, I will see you tomorrow and having now seen you in that dress... well, it would be a crime to cover up your loveliness with dull androgynous attire. No, you can consider your dress code to be female top to bottom, inside and out.@@"<br>
<<else>>
"@@.npc_manager;Anyway, I will see you tomorrow and having now seen you in that dress... I think we both know that I made the right call, when I adjusted the requirements for your office outfits. It would be a crime to cover up your loveliness with dull androgynous or male attire.@@"<br>
<</if>>
<br>
Turning with a smile she walks out of the elevator before you can respond.<br>
<br>
[<<moveTo "event_party_1_1_head_home" "Head home." 630>>]
</div>/*#
#desc: head home after spending night at upper floor bar with manager
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<removeItem $player $now 'rhinestone_choker' true>>
<<deleteItem $player $now 'rhinestone_choker'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You're already on your way down the elevator when you realise that you're still wearing the VERY feminine dress from the party you were unable to attend. You gulp, but the doors open and you find yourself looking out at the lobby with no alternative but to head through and home still wearing the formal outfit...<br>
<br>
[<<moveTo "room_foyer" "Hurry through the lobby and head home." 630>>]
</div>/*#
#desc: phase 3 morning, call from manager if late
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if $roomchange == true>>
<<setScene>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.at_office = ($beforetasklocation == "room_office_sissy_secretary_work_morning_start" || $beforetasklocation == "room_office_sissy_secretary" || $beforetasklocation == "room_office_sissy_secretary_work_morning_work")>>
<<useClothSetPush 'p3_daily_evaluation_clothes'>>
<<if !$scene.at_office>>
<<set $npc_manager.criticalanger+=1>>
<<set _x = setup.addManagerEndlessTask3($now, !$npc_manager.flags.playerstayedinchastity)>>
<<if $now.getUTCDay() == 5 && $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<addEvent 'aslut_congratulations' '{"trigger":"always","type":"next","location":"room_elevator_in"}' '{"szene":"event_manager_check_uniform_upgrade"}'>>
<</if>>
<<else>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include calcUniformUpgrade>>
<<if $scene.uniform_upgrade != "">>
<<initRoom>>
<<moveTo "event_manager_check_uniform_upgrade">>
<</if>>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<storeVisual $player $npc_manager>>
<<if $player.work.startTime.getUTCHours() == 8 && $player.work.startTime.getUTCMinutes() == 0 && !$scene.workEarly>>
<<set $scene.preciselyOnTime = true>>
<</if>>
<<include inspectionData_clothes>>
<<include inspectionData_cleanClothes>>
<<include inspectionData_cleanBody>>
<<include inspectionData_underwear>>
<<include inspectionData_makeup>>
<<include inspectionData_shoes>>
<<include inspectionData_collar>>
<<set $scene.passed = setup.checkTaskCompleted('manager_morning_inspection_task') == 1>>
<<set $scene.forcedCleaning = !setup.checkTaskReason("manager_morning_inspection_task","clothesClean") || !setup.checkTaskReason("manager_morning_inspection_task","playerClean")>>
<</if>>
<</if>>
<<initRoom>>
<<if $scene.at_office>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<else>>
<<set $player.location = "Phonecall">>
<</if>>
<<if $scene.at_office>>
<<createBGR "./images/locations/secretary_office_2.png" "./images/characters/npc_manager.png">>
<<else>>
<<createBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.at_office>>
<<if $scene.aslutoverride>>
With a nod she takes a step back and begins your normal inspection.
<<elseif $scene.preciselyOnTime>>
As you rush in the door of the office you find <<=setup.getNpcName('npc_manager', 'formal')>> standing with phone in hand. Slowly checking the time she stares at you for a moment and then nods.<br>
<br>
"@@.npc_manager;Eight o'clock on the nose... A good secretary would aim to be early to set herself up for a more productive day, but you did walk through the door on time... technically.@@"
<<else>>
Your daily routine is getting more efficient the longer you work as a secretary. You start getting ready for your workday by getting all your office utensils in order, booting up your laptop and getting a nice, big cup of hot, steamy coffee. Dead on the hour <<=setup.getNpcName('npc_manager', 'formal')>> appears in the doorway of her office.
<</if>>
<br><br>
<<if $scene.forcedCleaning>>
Taking a deep whiff she frowns with deep annoyance, sniffing in disgust at your lack of cleanliness.<br>
<br>
[<<moveTo "events_work_cleaning_1" 'Continue' 60>>]
<<else>>
<<include inspectionText_clothes>>
<<include inspectionText_cleanClothes>>
<<include inspectionText_shoes>>
<<include inspectionText_cleanBody>>
<<if $scene.compareVisuals!="">>
"@@.npc_manager;<<=$scene.compareVisuals>>.@@"<br>
<br>
<</if>>
<<if $scene.gender == "male">>
[<<moveTo "event_manager_daily_check_stage_3_1" "Remove the tattered remains of your clothes and continue with the inspection.">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Strip, as ordered.">>] <<hint $options "You can still do this manually.">>
<</if>>
<</if>>
<<else>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not being in your office at 8 o'clock.<br>
<br>
<<if setup.compareDay($now, setup.checkTaskLocationTime('task_uniform_upgrade'))>>
"@@.npc_manager_dom;Where are you? You know today is the deadline for your first A-SLUT assignment, get in here NOW. No excuses; if you aren't in my office soon I may have no choice but to fire you for blatant insubordination.@@"
<br>
You can actually feel her slam the phone down to end the call before you can even get a word in. She definitely sounded serious, you really should rush straight into work.<br>
<br>
[<<moveTo $beforetasklocation "Put your phone away.">>]
<<else>>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>! Where the hell are you? Do you have any idea what time it is? Apparently not, because if you had any clue how to read a clock you would be seated in front of your workstation right now.@@"<br>
<br>
You hear her take a deep breath over the phone, she seems to calm slightly. Unfortunately, as you have already figured out, her calm after the storm is more often a lot more terrifying then the storm itself.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. This is your <<printNumber $npc_manager.criticalanger>> offense.
<<if $npc_manager.criticalanger < 5>>
Once you reach five I am afraid I will have to let you go. Please take this more seriously and endeavour to show up on time <<if $now.getUTCDay() == 5>>monday<<else>>tomorrow<</if>>.
<<else>>
I am sorry, but you have stepped out of line once to often. Consider your contract terminated!
<</if>>
@@"<br>
<br>
She hangs up.<br>
<br>
<<if $npc_manager.criticalanger >= 5>>
[<<moveTo 'gameover_grue' "Hang up." 0 "<<set $phonecall = true>>">>]
<<else>>
[<<moveTo $beforetasklocation "Hang up.">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: phase 3 inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<if $roomchange == true>>
<<removeEverythingButUnderwear $player $now>>
<<include inspectionData_chastity>>
<<include inspectionData_plug>>
<<include inspectionEffects_plug>>
<<if $scene.seriousoffense>>
<<set $npc_manager.criticalanger += 1>>
<</if>>
<<set $scene.reassignBedHeels = (setup.checkItemOwned("pink_thigh_highs") && !$npc_manager.flags.uniform_upgrade.lunch_heel_training_complete && ($currentTasks.hasOwnProperty('bed_heels_photoshoot') && !$currentTasks['bed_heels_photoshoot'].finished))>>
<<if $npc_manager.flags.uniform_upgrade.bed_heel_punish || $scene.reassignBedHeels>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<set _nextDate to setup.setNextDate($now, 0, 23, 0)>>
<<addTaskById 'bed_heels_photo' _nextDate>>
<</if>>
<<if $scene.gender == "male">>
<<destroyMaleClothing $player $now false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if $scene.gender == "male">>
Every bit of male clothing you have with you efficiently ripped to shreds she waits for you to get down to just your underthings to resumes the inspection.
<<else>>
Well used to this routine you shimmy out of your clothes and fold them neatly in a pile.
<</if>>
<br><br>
<<if $scene.forgot_cage>>
Her lazer-like gaze seeming to zero in on your lack of a cage she leads you into her office without a word.<br>
<br>
<<set $scene.return = "event_manager_daily_check_stage_3_1">>
[<<moveTo "event_manager_daily_check_forgot_cage" "Continue." 180>>]
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> watches you like a hawk, occasionally nodding in satisfaction as you strip before finally proceeding with the inspection.<br>
<br>
<<include inspectionText_underwear>>
<<include inspectionText_chastity>>
<<include inspectionText_plug>>
<<include inspectionText_makeup>>
<<if $scene.seriousoffense>>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head with a sigh.<br>
<br>
"@@.npc_manager;I really thought we were past this sort of thing but I am afraid there is no way you can perform your duties today.@@"<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. This is your <<printNumber $npc_manager.criticalanger>> offense.
<<if $npc_manager.criticalanger < 5>>
Once you reach five I am afraid I will have to let you go. Please take this more seriously and endeavour to show up on time <<if $now.getUTCDay() == 5>>monday<<else>>tomorrow<</if>>.
<<else>>
I am sorry, but you have stepped out of line once too often. Consider your contract terminated!
<</if>>
@@"<br>
<br>
"@@.npc_manager;Please get dressed and go home.@@"<br>
<br>
<<if $npc_manager.criticalanger >= 5>>
[<<moveTo 'gameover_grue' "Get dressed and leave." 0 "<<useClothSetPop 'p3_daily_evaluation_clothes' $player $now>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Get dressed and leave." 180 "<<useClothSetPop 'p3_daily_evaluation_clothes' $player $now>>">>]
<</if>>
<<else>>
<<include inspectionText_collar>>
<<if !$npc_manager.flags.uniform_upgrade.bed_heel_punish && $scene.reassignBedHeels>>
"@@.npc_manager;Thank you, again, for keeping me up-to-date on your nightly heel training. That said it appears that you still need some additional work, so I will be requiring another picture tonight, do not forget!@@"<br>
<br>
<</if>>
<<if $scene.forceChange>>
"@@.npc_manager;Well, aside from your wardrobe failure you did... tolerable. Being that you have so utterly failed to dress yourself suitable to perform your job it falls to me, once again. Come while I give you something proper to wear.@@"<br>
<br>
<<if $scene.gender == "male">>
You give a final glance at the torn remnants of your male clothing as she casually tosses them in the trash.<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_3_2" "Follow." 60>>]
<<elseif $npc_manager.flags.uniform_upgrade.bed_heel_punish>>
Your clothes back on you turn towards your desk to actually begin your day only to be brought up short by your <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;Ah, ah, ah, aren't you forgetting something?@@"<br>
<br>
<<printThought $player "Oh no, the bed heels photo!">>
<br><br>
"@@.npc_manager;You totally failed to complete a simple task. A task that, I will remind you, was for your own benefit; meant to help you more easily learn to walk in heels. Now it is time for more... severe measures. Give me your shoes and get dressed.@@"<br>
<br>
[<<moveTo "event_office_sissy_secretary_heel_punishment_1" "Do as she says." 120 "<<useClothSetPop 'p3_daily_evaluation_clothes' $player $now>>">>]<br>
[<<moveTo "event_office_sissy_secretary_heel_punishment_refuse" "Get dressed and put your shoes on." 120 "<<useClothSetPop 'p3_daily_evaluation_clothes' $player $now>>">>]
<<elseif $scene.passed>>
"@@.npc_manager;Well that seems to be everything, perfectly done, once again. Thank you for taking your responsibilities seriously, that attention to detail is the mark of a true SISSY secretary. If you would please get dressed you may commence your work.@@"<br>
<br>
<<if !$player.flags.uniform_upgrade.aslut_1_complete && $scene.passed &&
$scene.shoes == 'pink_thigh_highs' && $npc_manager.flags.uniform_upgrade.lunch_heel_training_complete &&
setup.getItemFromType("corset") == 'pink_satin_corset' && $player.timebased.tightlacing > 90 &&
["normalmakeup", "expertmakeup", "moviestar", "sissy_doll"].includes($scene.makeup) && $player.makeup.messed < 25 &&
setup.getItemFromType("earring") == "gold_hoop_earrings" &&
$scene.clothes == 'female_office' &&
setup.getItemFromType("shirt") == "satin_blouse_pink" && setup.getItemFromType("legwear") == "skirt_pink_leather" &&
["shoulderlength", "pixiecut"].includes($player.hair.style)>>
[<<moveTo "event_aslut_1_complete_1" "Get dressed and start working." 360 "<<useClothSetPop 'p3_daily_evaluation_clothes' $player $now>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Get dressed and start working." 360 "<<useClothSetPop 'p3_daily_evaluation_clothes' $player $now>>">>]
<</if>>
<<else>>
"@@.npc_manager;Hmm, some flaws, but none so sever as to prevent you from performing your duties. Please endeavour to take things more seriously in the future, but for now you may get dressed and commence your work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Get dressed and start working." 360 "<<useClothSetPop 'p3_daily_evaluation_clothes' $player $now>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: phase 3 gifted new outfit due to clothing failure
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<if $roomchange>>
<<if setup.inWardrobe("satin_blouse_pink")>>
<<wardrobeToItem "satin_blouse_pink">>
<</if>>
<<wearItem $player $now "satin_blouse_pink" true>>
<<if setup.inWardrobe("skirt_pink_leather")>>
<<wardrobeToItem "skirt_pink_leather">>
<</if>>
<<wearItem $player $now "skirt_pink_leather" true>>
<<if setup.inWardrobe("pink_mary_janes")>>
<<wardrobeToItem "pink_mary_janes">>
<</if>>
<<wearItem $player $now "pink_mary_janes" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> walks over to her wardrobe and retrieves a familiar pink ensemble, handing it to you and nodding for you to get changed into the familiar "secretary" attire.<br>
<br>
You see no choice but to do as instructed, quickly slipping back into the comfortable, but ultra-feminine garb.<br>
<br>
<<printThought $player "That's weird, this feels like the exact same outfit I had before... Must be some sort of lazy coder magic...">><br>
<br>
"@@.npc_manager;Much better, you may commence working now.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start working." 360>>]
</div><<initRoom>>
<<if $now.getUTCDay() == 5 && $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<set _x = setup.addManagerEndlessTask3($now, !$npc_manager.flags.playerstayedinchastity)>>
<<addEvent 'aslut_congratulations' '{"trigger":"always","type":"next","location":"room_elevator_in"}' '{"szene":"event_manager_check_uniform_upgrade"}'>>
<<else>>
<<set _x = setup.addManagerEndlessTask3($now, !$npc_manager.flags.playerstayedinchastity)>>
<</if>>
<<if $scene.seriousoffense>>
<<moveTo "company_lobby">>
<<else>>
<<moveTo "room_office_sissy_secretary_work_morning_start">>
<</if>>/*#
#desc: morning in your office
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<if (!$currentTasks.hasOwnProperty("manager_morning_inspection_task") || ($currentTasks.manager_morning_inspection_task.finished && $now.getUTCMinutes() > 0)) && !($now.getDate() == 29 && $now.getYear()==133 && $now.getUTCMonth()==5)>>
<<set $scene.dest = "room_office_sissy_secretary_work_morning_start">>
<<moveTo "debug_island">>
<</if>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $player.work.sendhome>>
You stand at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> Office. You've been sent home for the day and it seems like your account has been locked. You cannot access your computer.<br>
<br>
[<<moveTo "company_lobby" "Leave the office" 120>>]
<<else>>
You sit at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> Office. What will you do?<br>
<br>
<<include thoughts_work>>
<br>
[<<link "Check Work related data">> <<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">> <</link>>]<br>
<<if (Math.round($player.timebased.fatigue) <= ($player.timebased.fatiguemax/4)) && ($player.timebased.horny <= $player.penis.erection)>>
[<<moveTo room_office_sissy_secretary_work_morning_work "Work hard" 1 "<<set $player.timebased.fatiguemulti = 1.25>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.mode = 2>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]<br>
<<else>>
<<if (Math.round($player.timebased.fatigue) > ($player.timebased.fatiguemax/4)) && ($player.timebased.horny <= $player.penis.erection)>>
[@@.link_locked;You're too exhausted to work hard@@]<br>
<<elseif (Math.round($player.timebased.fatigue) <= ($player.timebased.fatiguemax/4)) && ($player.timebased.horny > $player.penis.erection)>>
[@@.link_locked;You're too horny to concentrate enough for this kind of work@@]<br>
<<else>>
[@@.link_locked;Your head is too clouded with strange thoughts to concentrate@@]<br>
<</if>>
<</if>>
<<if (Math.round($player.timebased.fatigue) < ($player.timebased.fatiguemax/2)) && ($player.timebased.horny <=99) >>
[<<moveTo room_office_sissy_secretary_work_morning_work "Work normal" 1 "<<set $player.timebased.fatiguemulti = 1>><<set $player.timebased.stressmulti = 0.1>><<set $player.work.mode = 1>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]<br>
<<else>>
<<if (Math.round($player.timebased.fatigue) > ($player.timebased.fatiguemax/2)) && ($player.timebased.horny <= $player.penis.erection) >>
[@@.link_locked;You're too exhausted to work normal@@]<br>
<<elseif (Math.round($player.timebased.fatigue) <= ($player.timebased.fatiguemax/2)) && ($player.timebased.horny > $player.penis.erection) >>
[@@.link_locked;You're too horny to work normal.@@]<br>
<<else>>
[@@.link_locked;You don't think you can work normally today.@@]<br>
<</if>>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Work sloppy" 1 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.05>><<set $player.work.mode = 0>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>>">>]<br>
<</if>>
<br><br>
<<include workMasturbationOptions>><br>
<br>
<<if $npc_ai.stage >=2 && $now.getUTCDay() == 5 && !$npc_ai.flags.missions.connection>>
<<if $scene.ranMission>>
[@@.link_locked;You already attempted to run a mission for <<=setup.getNpcName("npc_ai", "first")>> today, she does not appear to have anything else for you.@@]
<<else>>
[<<moveTo "event_ai_mission_voluntary" 'Hmm, there is a blinking icon, it looks like <<=setup.getNpcName("npc_ai", "first")>> has a mission for you.' 60 "<<set $workEventReturn = 'room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>
<<elseif $npc_ai.flags.missions.generic_missions > 2>>
<<if $scene.ranMission>>
[@@.link_locked;You already ran a mission for <<=setup.getNpcName("npc_ai", "first")>> today, she does not appear to have anything else for you.@@]
<<else>>
[<<moveTo "event_ai_mission_voluntary" 'Check if <<=setup.getNpcName("npc_ai", "first")>> has a mission for you.' 60 "<<set $workEventReturn = 'room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: morning work as secretary
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<setScene>>
<<setFood $player $now>>
<<set $scene.ate_lunch = false>>
<<set $scene.foodDelivery = {}>>
<<set $scene.foodDelivery.done = false>>
<<set $scene.foodDelivery.right = false>>
<<set $scene.foodDelivery.noFood = false>>
<<set $workEvent = setup.checkWorkEvents($player, $now)>>
<<if $workEvent && $workEvent.triggered>>
<<set $now = setup.advanceNextDate($player, $now, 0, $workEvent.rndH, $workEvent.rndM)>>
<<set $workEventReturn = "room_office_sissy_secretary_work_morning_work">>
<<else>>
<<if setup.getUTCDay($now) != 5>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_morning.hour, $player.work.time_morning.minutes)>>
<<else>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_friday.hour, $player.work.time_friday.minutes)>>
<</if>>
<<set $player.timebased.fatiguemulti = 1>>
<<set $player.timebased.stressmulti = 0>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
<<=$player.work.workMessage>><br><br>
<<include thoughts_work>><br><br>
<<if $workEvent.triggered>>
Your work gets interrupted after awhile.<br>
<br>
[<<moveTo $workEvent.szene "Continue" 0>>]
<<else>>
<<if setup.getUTCDay($now) != 5>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Continue">>]
<</if>>
<</if>>
</div>/*#
#desc: secretary lunchbreak
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $player.work.nowWorking = false>>
<</if>>
<<if (getUTCHours($now)==12 and getUTCMinutes($now) >= 30) or (getUTCHours($now)>12)>>
<<initRoom>>
/%<<if $player.work.getFood!=0>>%/
<<moveTo "room_office_sissy_secretary_work_afternoon_start">>
/%<</if>>%/
<</if>>
<<if $roomchange==true>>
<<set $player.timebased.fatiguemulti = 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You sit at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> Office. It is currently lunch break.
<<if (!$scene.foodDelivery.done) && ($player.work.foodID != "")>>
<<if !setup.checkItemTypeinInventory("food")>>
<<=setup.getNpcName('npc_manager', 'formal')>> has contacted you via instant messenger. She wants you to fetch her <<getFood $player>>.
<<else>>
You've managed to get some food from the canteen.
<</if>>
<</if>>
<br><br>
<<include thoughts_work>>
[<<link "Check Work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<br>
<<if setup.checkItemTypeinInventory("food")>>
<<if $npc_manager.flags.uniform_upgrade.lunch_heel_training > 0 && !$npc_manager.flags.uniform_upgrade.lunch_heel_training_complete>>
Glancing at the ominously towering pink ankle boots under your desk you consider how <<=setup.getNpcName('npc_manager', 'formal')>> would react to you delivering her lunch while wearing them.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood_special" 'Put on the shoes for a "special" delivery.' 120>>]<br>
<</if>>
<<set _text = 'Deliver the food to '+setup.getNpcName('npc_manager', 'formal')>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood" _text 60>>]<br>
<<elseif $npc_manager.flags.unlocked_lunch_play>>
<<if $player.timebased.horny > 25>>
<<if $scene.do_not_bother_manager>>
[@@.link_locked;Hmm, probably best not to bother her again.@@]
<<else>>
[<<moveTo "event_work_lunch_assistance_1" "Ask her for assistance in dealing with your arousal." 60>>]
<</if>>
<<else>>
[@@.link_locked;You are not presently horny enough to need assistance, best not to bother her.@@]
<</if>>
<br><br>
<</if>>
<<if setup.getItemFromType("corset")>>
<<if $player.timebased.tightlacing < 100>>
<<if $scene.attemptedTightlacing>>
<br>[@@.link_locked;You have already attempted to re-lace your corset.@@]<br>
<<else>>
<br>[<<moveTo "event_work_lunch_corset" "Re-tighten your corset" 60 "<<set $scene.attemptedTightlacing=true>>">>]<br>
<</if>>
<<elseif $player.flags.uniform_upgrade.autoLacing>>
<br>[@@.link_locked;Thanks to the auto-laces you never need to worry about re-tightening your corset.@@]<br>
<</if>>
<</if>>
<<if (getUTCHours($now)==12 and getUTCMinutes($now) <= 30) or (getUTCHours($now)<12)>>
<<if $scene.foodDelivery.done && $npc_manager.stage == 3 && !$npc_manager.flags.uniform_upgrade.lunch_heel_training_complete>>
[<<moveTo "event_lunch_heels_training_1_alt" "Take a powernap until the break ends." 1>>]
<<else>>
[<<link "Take a powernap until the break ends.">>
<<set $roomchange = true>>
<<set $now to setup.powerNap($player, $now)>>
<<goto "room_office_sissy_secretary_work_afternoon_start">>
<</link>>]
<</if>>
<</if>>
<br>
[<<moveTo "room_office_lunchbreak_canteen" "Canteen" 60>>]<br>
<<include workLunchbathroom>>
</div>/*#
#desc: friday afternoon at your office
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if !$scene.afterWorkEventTriggered && $player.flags.fem_style.chastity != "" && $npc_manager.flags.hascagekey && (!$npc_manager.flags.playerstayedinchastity || $npc_manager.flags.playerstayedinchastity && $npc_manager.flags.chastitydays < 5) && !$npc_manager.flags.took_adv_key>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue" 60 "<<set $player.work.nowWorking = false>>">>]
<<elseif !$scene.afterWorkEventTriggered && $player.flags.fem_style.chastity != "" && !$npc_manager.flags.trustplayerwithkey &&
!($currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished)>>
You are getting ready to depart when <<=setup.getNpcName('npc_manager', 'formal')>> strides out of her office and stops in front of your desk, staring down at you.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_after_work_key_special_1" "See what she has to say." 60 "<<set $player.work.nowWorking = false>>">>]
<<else>>
You stand in front of your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> Office. Your work time has officially ended. What will you do?<br>
<br>
<<include thoughts_work>><br>
<br>
[<<link "Check Work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<set _text = 'Office of '+setup.getNpcName('npc_manager', 'formal')>>
[<<moveTo "room_office_manager" _text 10 "<<set $player.work.nowWorking = false>>">>]<br>
[<<moveTo "room_elevator_home" "Leave work" 160 "<<set $player.work.nowWorking = false>>">>]
<</if>>
</div>/*#
#desc: afternoon work as secretary
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange==true>>
<<set $workEvent = setup.checkWorkEvents($player, $now)>>
<<if $workEvent.triggered>>
<<set $now = setup.advanceNextDate($player, $now, 0, $workEvent.rndH, $workEvent.rndM)>>
<<set $workEventReturn = "room_office_sissy_secretary_work_afternoon_work">>
<<else>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_evening.hour, $player.work.time_evening.minutes)>>
<<set $player.timebased.fatiguemulti = 1>>
<<set $player.timebased.stressmulti = 0>>
<<set $player.work.nowWorking = false>>
<</if>>
<<if $npc_manager.flags.chastitydays >= 5>>
<<set $npc_manager.affection += 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
<<=$player.work.workMessage>><br>
<br>
<<include thoughts_work>><br>
<br>
<<if $workEvent.triggered>>
Your work is interrupted after a while.<br>
<br>
[<<moveTo $workEvent.szene "Continue" 0>>]
<<elseif setup.getItemFromType("cage") != "" && $npc_manager.flags.hascagekey && $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.chastitydays < 5>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue" 60 "<<set $player.work.nowWorking = false>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_evening" "Continue" 60 "<<set $player.work.nowWorking = false>>">>]
<</if>>
</div>/*#
#desc: end of secretary workday
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<if $npc_manager.stage < 3>>
<<if $player.work.qualifyingperiod == 28>>
<<set $player.work.qualifyingperiod -= 1>>
<<initRoom>>
<<moveTo "event_manager_mandatory_disciplinary_measure_1">>
<<elseif ($player.work.qualifyingperiod < 28) && ($player.work.qualifyingperiod >= 0)>>
<<initRoom>>
<<if $npc_manager.stage >= 3>>
<<moveTo "event_manager_performance_review">>
<<elseif $player.work.qualifyingperiod == 6>>
<<set $player.work.qualifyingperiod -= 1>>
<<moveTo "event_manager_qualifier_warning">>
<<elseif $player.work.qualifyingperiod <= 0>>
<<set $player.work.qualifyingperiod -= 1>>
<<moveTo "event_manager_qualifier_ultimatum">>
<<else>>
<<set $player.work.qualifyingperiod -= 1>>
<<moveTo "event_manager_performance_review">>
<</if>>
<</if>>
<<else>>
<<initRoom>>
<<moveTo "event_manager_performance_review">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You sit at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. Your workday is officially over. What will you do?<br>
<br>
<<include thoughts_work>>
<br><br>
[<<link "Check Work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<set _text = 'Office of '+setup.getNpcName('npc_manager', 'formal')>>
<<if $player.makeup.messed >= 25>>
[<<moveTo "room_office_sissy_secretary_work_evening" "Take a moment to touch up your makeup" 300 "<<set $player.makeup.messed=0>>">>]<br><br>
<</if>>
[<<moveTo "room_office_manager" _text 10>>]<br>
[<<moveTo "room_elevator_home" "Leave the office" 120>>]
</div>/*#
#desc: manager returns chastity key at end of workday
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $scene.afterWorkEventTriggered = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Shortly before the end of your workday, <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and walks up next to you.<br>
<br>
"@@.npc_manager;Well, you have proven to me that my trust in you was not misplaced. So here is my part of the deal. Take it.@@"<br>
<br>
She holds out her hand. The key to your chastity rests innocuously on her palm.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_keyreturn_accept' 'Accept the key.' 60>>]<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_keyreturn_decline' 'Decline the key.' 60>>]
</div>/*#
#desc: accept chastity key at end of workday
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $npc_manager.flags.hascagekey = false>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<addItem _keyId>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, true, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, true)>>
<<default>>
ERROR unexpected npc_manager.stage! <<=$npc_manager.stage>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You take the key and thank her. She walks back into her office without saying a word, but you think you hear a faint, maybe even sad sigh.<br>
<br>
<<if setup.getTotalValue('submission')>6>>
<<printThought $player "I should have left the key with her. I could still give it back to her...can't I?">><br>
<br>
<</if>>
<<if setup.getUTCDay($now) == 5>>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' 'Continue.' 60>>]
<<else>>
[<<moveTo 'room_office_sissy_secretary_work_evening' 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: decline to take back your chastity key from manager at end of workday
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<set $npc_manager.flags.chastitydays += 1>>
<<include room_office_manager_chastity_calc_affinity>>
<<set $scene.badsissy1 = false>>
<<if ($scene.chastity_happy == 'yes') && !$npc_manager.flags.unlocked_badsissy1>>
<<set $scene.badsissy1 = true>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_header'
0
'event_manager_theme_badsissy1'
true>>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_surrendered')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_surrendered' true>>
<</if>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem $player $now $scene.keyId>>
<<set $scene.cage_locked = $inventory[setup.getItemFromType("cage")].status.lock>>
<<if !$scene.cage_locked>>
<<set _cageId = setup.getItemFromType("cage")>>
<<manipulateItem $player $now _cageId "lock" true>>
<</if>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, false, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, false)>>
<<default>>
ERROR unexpected npc_manager.stage! <<=$npc_manager.stage>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
You raise your hand, as if reaching for the key only to softly close her fingers around it. Without even speaking a word you make it quite clear that you don't want it back for the time being. If it wasn't such an act of total submission it could have been a quite romantic gesture.<br>
<br>
"@@.npc_manager;Just as I thought. You do want to be an obedient sissy. Very well, I will respect your decision and keep this safe for you
<<if setup.getUTCDay($now) == 5>>
over the weekend.
<<else>>
until tomorrow.
<</if>>
<<if $scene.badsissy1>>
You know, sometimes I wish you would be more disobedient, so I could punish you more often from time to time. Oh well, seems like one cannot have everything.
<</if>>
<<if setup.getUTCDay($now) == 5>>
Well then, I will see you on Monday. Have a nice weekend sissy <<=$player.first_name>>.
<<else>>
Good, I will be seeing you soon for our end of day work review.
<</if>>
@@"<br>
<br>
With a gentle smile she threads the key back onto its chain, making a minor ceremony of hanging it back around her neck, the fact that it now rests just over her heart igniting sparks of happiness inside your own chest.
<br><br>
"@@.npc_manager;Oh, one final thing. Not to spoil this lovely moment but... could you show me that the cage is actually locked? It would be a betrayal of my duties as a keyholder to allow you to believe that you had given up control when you had not!@@"<br>
<br>
<<if $scene.cage_locked>>
Pulling your clothes aside you reveal your securely locked self. Giving it a testing squeeze she smiles. "@@.npc_manager;Perfection. This is just how you should be obedient, caged, mine... and all of your own free will.@@"<br>
<br>
She stares down at you with a smile until you bashfully turn away, only then removing her grasp and allowing you to fix your clothes.
<<else>>
Pulling your clothes aside you reveal your clearly unlocked self. She frowns, reaching down to squeeze things closed with a quiet, but ominous, click.<br>
<br>
"@@.npc_manager;Well, well, it is a good thing I thought to check, hmm? Your sloppy forgetfulness almost had you going off unsecured! It is a good for you I am so diligent about these things but fortunately everything is now as it should be.@@"
<</if>>
<br><br>
<<if $npc_manager.flags.chastitydays == 5>>
"@@.npc_manager;Also... as much as I enjoy you going through the ritual of turning over the key every evening... it has become a bit of a formality, would you not agree? If you really need it back, and I deem you behaved enough to deserve such, you may visit me and ask for they key but otherwise... well, I will just hold onto it for you and stop bothering you about it every day when we both know that you will just end up doing the right thing.@@"<br>
<br>
Your heart flutters at her smile. In a way nothing has changed - per her word you can still have the key back and yet... you feel like you have just given a part of yourself over to her.
<<else>>
"@@.npc_manager;Lovely, back the way things should be. If you need the key back for some reason come talk to me, otherwise I will just hold onto it... for your own good.@@"
<</if>>
<br><br>
<<if setup.getUTCDay($now) == 5>>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' 'Continue.' 60>>]
<<else>>
[<<moveTo 'room_office_sissy_secretary_work_evening' 'Continue.' 60>>]
<</if>>
</div><<set $scene.bonus = 0>>
<<set $scene.bonus += Math.floor((($player.work.workPensum/$player.work.hoursperWeek)-1)*100)>>
<<if $scene.bonus > 25>>
<<set $scene.bonus = 25>>
<<elseif $scene.bonus < -25>>
<<set $scene.bonus = -25>>
<</if>>
<<set $scene.salary = Math.round($player.work.payment * (1+($scene.bonus/100)))>>
<<if $player.work.hoursDone>($player.work.hoursperWeek+1)>>
<<if $player.work.workPensum<$player.work.hoursperWeek>>
<<applyExperience 'bimbofication' 4 'normal' $SEEN_FRIEND>>
<<set $npc_manager.workdiscipline -= 1>>
<<else>>
<<set $npc_manager.workdiscipline += 1>>
<</if>>
<<elseif ($player.work.hoursperWeek-$player.work.hoursDone)<6 || (Math.abs($player.work.hoursDone-$player.work.hoursperWeek)<1)>>
<<if $player.work.workPensum>=$player.work.hoursperWeek>>
<<if $player.work.workPensum==$player.work.hoursperWeek>>
<<set $npc_manager.workdiscipline += 0.25>>
<<else>>
<<set $npc_manager.workdiscipline += 1>>
<</if>>
<<else>>
<<set $npc_manager.workdiscipline -= 1>>
<</if>>
<<else>>
<<if $player.work.workPensum>=$player.work.hoursperWeek>>
<<if $player.work.workPensum==$player.work.hoursperWeek>>
<<set $npc_manager.workdiscipline += 0.25>>
<<else>>
<<set $npc_manager.workdiscipline += 0.5>>
<</if>>
<<else>>
<<set $npc_manager.workdiscipline -= 1>>
<<applyExperience 'bimbofication' 5 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.money.total += $scene.salary>>/*#
#desc: paid for work as secretary
#status: FINISHED 0.4.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _nextDate = setup.setNextDate($now, 7, 19, 0)>>
<<removeEvent 'weekly_salary_phonecall'>>
<<addEvent 'weekly_salary_phonecall'
'{"trigger":"always","type":"date","id":"event_manager_weekly_salary_remote"}'
'{"szene":"event_manager_weekly_salary_remote"}'
_nextDate
>>
<<include calcSalary>>
<<set $scene.partytalk = ($npc_manager.stage == 2 && !$npc_manager.flags.party.first_attend)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Let me look at the numbers and see how well you did this pay period.@@"<br>
<br>
<<include salarySummary>>
<br><br>
<<if $scene.partytalk>>
"@@.npc_manager;Well, that will be all for today. You may leave <<=$player.first_name>>.@@"<br>
<br>
As you turn to go, you notice <<=setup.getNpcName('npc_manager', 'formal')>> has already turned back to her work and you realise that she is looking a bit harried this evening. Not even bothering looking over at you,
<<if ($npc_manager.satisfaction+$npc_manager.affection)>($npc_manager.anger)>>
even though you did everything she asked you to lately.
<<else>>
even though you're still your usual frisky self.
<</if>>
For a moment you were sure that you heard a sigh from her direction. Even though she was just dealing with you she seems already to have forgotten your presence.<br>
<br>
[<<moveTo "event_manager_preparty_1_offer" "Ask her if there's something upsetting her." 60 '<<set $player.work.hoursperWeek = 39>><<set $player.work.hoursDone = 0>><<set $player.work.workPensum = 0>>'>>]<br>
[<<moveTo "event_manager_preparty_1_offer_alt" "Continue on your way." 60 '<<set $player.work.hoursperWeek = 39>><<set $player.work.hoursDone = 0>><<set $player.work.workPensum = 0>>'>>]
<<else>>
"@@.npc_manager;Well, that will be all for today. You may leave <<=$player.first_name>>.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 '<<set $player.work.hoursperWeek = 39>><<set $player.work.hoursDone = 0>><<set $player.work.workPensum = 0>>'>>]
<</if>>
</div><<if $player.work.hoursDone>($player.work.hoursperWeek+1)>>
<<if $player.work.workPensum<$player.work.hoursperWeek>>
"@@.npc_manager;It appears that you worked a lot... more then required... of course. Such superb dedication... and yet you did not complete your weekly workload. You should really concentrate more during work and stop thinking about whatever it is a little ditz like you thinks about? You do not wish to end up as a bimbo, do you?@@"<br>
<br>
<<if setup.getTotalValue('bimbofication')<5>>
<<printThought $player "What, of course not! What kind of questions this?">>
<<elseif setup.getTotalValue('bimbofication')<10>>
<<printThought $player "No... I don't want to end up as a sexy sluttily-dressed Bimbo ... what was I thinking just now?">>
<<else>>
<<printThought $player "My mind is empty, blank and happy...?">>
<</if>>
<br><br>
<<if $npc_manager.anger>$npc_manager.satisfaction>>
"@@.npc_manager;That would be less of an problem if you excelled at other parts of your duties, but alas, you fail there as well. What am I ever going to do with you. Maybe re-edu... no, it is still too early for that...@@"
<<else>>
"@@.npc_manager;Well, at least you take your other duties serious. That way we can get a certain use from you, now can we?@@"
<</if>>
<<else>>
"@@.npc_manager;Hmm, you managed to work even more then you needed to. That is the kind of commitment to excellence I am talking about. Well done.@@"<br>
<br>
<<if setup.getTotalValue('submission')<5>>
<<printThought $player "Well of course, that's what I get paid for?">>
<<elseif setup.getTotalValue('submission')<10>>
<<printThought $player "Normally I wouldn't be this motivated but it's very hard to not listen to her. She can be very ...persuasive.">>
<<else>>
<<printThought $player "I live to serve!">>
<</if>>
<br><br>
<<if $npc_manager.anger>$npc_manager.satisfaction>>
"@@.npc_manager;Still, I wish you would show this kind of dedication to ALL aspects of your work relation ship with Social Interaction Service Syndicate Inc.@@"
<<else>>
"@@.npc_manager;And your obedience is praiseworthy as well. I think there lies a great future ahead for you in this company.@@"
<</if>>
<</if>>
<<elseif ($player.work.hoursperWeek-$player.work.hoursDone)<6 || (Math.abs($player.work.hoursDone-$player.work.hoursperWeek)<1)>>
<<if ($player.work.hoursperWeek-$player.work.hoursDone)<=0>>
"@@.npc_manager;You have not missed a single hour of work. Very good.@@"
<<elseif ($player.work.hoursperWeek-$player.work.hoursDone) < 1>>
"@@.npc_manager;You missed less than a single hour of work. Try to do better next week but I will grant you a favour and "round up" this time.@@"
<<elseif ($player.work.hoursperWeek-$player.work.hoursDone)<6>>
"@@.npc_manager;You missed a few hours. Let us see if your work performance is at least within reason.@@"
<</if>>
<br><br>
<<if $player.work.workPensum>=$player.work.hoursperWeek>>
<<if $player.work.workPensum==$player.work.hoursperWeek>>
"@@.npc_manager;Hmm, you managed to finish all your work.@@"
<<else>>
"@@.npc_manager;Somehow you managed to complete more work then required. Very Efficient.@@"
<</if>>
<br><br>
<<if $npc_manager.anger>$npc_manager.satisfaction>>
"@@.npc_manager;Still, I wish you would show this kind of dedication to ALL aspects of your work relation ship with Social Interaction Service Syndicate Inc.@@"
<<else>>
"@@.npc_manager;And your obedience is praiseworthy as well. I think there lies a great future ahead for you in this company.@@"
<</if>>
<<else>>
"@@.npc_manager;Unfortunately you did not come close to finishing your workload. This is not acceptable.
<<if $npc_manager.anger>$npc_manager.satisfaction>>
That would be less of an problem if you excelled at other parts of your duties, but alas, you fail them as well. What am I ever going to do with you. Maybe Re-edu... no, it is still too early for that...
<<else>>
Well, at least you take your other duties serious. But I need a secretary, not some ditzy Bimbo, do you understand that?
<</if>>
@@"
<</if>>
<<else>>
<<if $player.work.workPensum>=$player.work.hoursperWeek>>
"@@.npc_manager;You missed a lot of hours. Are you even taking this seriously?
<<if $player.work.workPensum==$player.work.hoursperWeek>>
Despite that you somehow managed to finish all your work.
<<else>>
Despite that you somehow managed to finish more work then necessary.
<</if>>
I am not sure if I should be impressed by your efficiency, or angry about your lack of motivation. You have to realise, that there is more to being a secretary then just the work. You have to be here to represent the company. You are the first thing people see when they come into my office, what sort of message does it say when they do not see you at all?
<<if $npc_manager.anger>$npc_manager.satisfaction>>
If you would just put that efficiency to work with all your required responsibilities.
<<else>>
At least you take your other responsibilities serious.
<</if>>
@@"
<<else>>
"@@.npc_manager;You missed a lot of hours. Are you even taking this serious at all? And you did not finish your workload either. Who would have guessed?@@"<br>
<br>
<<if setup.getTotalValue('bimbofication')<5>>
<<printThought $player "I really should take this serious if I want to keep this job!">><br>
<<elseif setup.getTotalValue('bimbofication')<10>>
<<printThought $player "No... It's just there's so much, like, going on in my head...">><br>
<<else>>
<<printThought $player "Thinking is hard!">><br>
<</if>>
<<if $npc_manager.anger>$npc_manager.satisfaction>>
"@@.npc_manager;That is a big problem, since you take none of your duties serious. I think I have to recommend you for re-education. Yes, that might solve your issues... hopefully.@@"
<<else>>
"@@.npc_manager;Well, at least you take your other duties serious. But I need a secretary, not some air headed Bimbo Doll. Do you not understand that?@@"
<</if>>
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Because of your actions this week you will get
<<if $scene.bonus>0>>
a total bonus of <<=$scene.bonus>>%,
<<elseif $scene.bonus<0>>
a penalty of <<=-$scene.bonus>>%,
<<else>>
your normal salary,
<</if>>
which makes for a total of <<=$scene.salary>> credits.@@"<br>
<br>
<<if $scene.bonus>0>>
<<printThought $player "Oh, nice. A bonus!">>
<<elseif $scene.bonus<0>>
<<printThought $player "Oh great. A penalty. I can't afford to get those too often!">>
<<else>>
<<printThought $player "Nice! Payday!">>
<</if>>/*#
#desc: paid for work as secretary over the phone due to not being in-office
#status: RELEASED 0.6.0.0
#*/
<<if $roomchange == true>>
<<set $sceneVisibility = $ALONE>>
<<set _nextDate = setup.setNextDate($now, 7, 19, 0)>>
<<removeEvent 'weekly_salary_phonecall'>>
<<addEvent 'weekly_salary_phonecall'
'{"trigger":"always","type":"date","id":"event_manager_weekly_.salary_remote"}'
'{"szene":"event_manager_weekly_salary_remote"}'
_nextDate
>>
<<include calcSalary>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<include enterroom>>
<<initRoom>>
<<createBGR "./images/locations/sissy_office.png" "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Your phone rings, it is <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;Hello, just wanted to let you know that today was payday so I went ahead and wired your compensation. You worked a total of <<=Math.round($player.work.hoursDone)>> of your required <<=Math.round($player.work.hoursperWeek)>> hours this week.@@"<br>
<br>
<<include salarySummary>>
<br><br>
"@@.npc_manager;Enjoy your payment. Perhaps next week we will be able to do this in person. Good day.@@"<br>
<br>
[<<moveTo $beforetasklocation "Hang up" 1 "<<set $currentcall = false>>">>]
</div>/*#
#desc: manager may start trusting player w/key
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<if $npc_manager.satisfaction > $npc_manager.anger && setup.getItemFromType("cage") != "electric_chastity">>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<else>>
<<set $scene.sissy_underwear_gift = !$npc_manager.flags.good_girl.got_sissy_underwear && !$npc_manager.flags.bad_girl.got_sissy_underwear>>
<<if $scene.sissy_underwear_gift>>
<<set $npc_manager.flags.bad_girl.got_sissy_underwear = true>>
<<addItem "pink_sissy_panties">>
<<addItem "pink_sissy_bra">>
<<addItem "sissy_garter">>
<<addItem "pink_sissy_stockings">>
<</if>>
<</if>>
<<set $scene.afterWorkEventTriggered = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
Already halfway through packing up you freeze in place, staring up at her until the silence starts to get awkward yet you find yourself unable to break her gaze and turn to go.<br>
<br>
"@@.npc_manager;So,@@" she finally says, sounding strangely loud in the previously quiet room.
<<if $npc_manager.satisfaction > $npc_manager.anger>>
<<if setup.getItemFromType("cage") == "electric_chastity">>
"@@.npc_manager;In light of your recent behaviour I was considering offering you control of your chastity key... and then I remembered the reprehensible behaviour that forced me to lock you into your current device.@@"<br>
<br>
You tremble in your tiny prison at the memory of the painful shocks it is capable of administering.<br>
<br>
<<if $scene.sissy_underwear_gift>>
"@@.npc_manager;Thus, for your own good, I will be retaining control of your key but still... I thought you should know that I have been impressed with your behaviour of late. That said well... normally I consider a sissy voluntarily giving up control of their key to be an important step in their development but with you... She shakes her head. No, I just cannot trust you that far... Still, I would hardly wish for you to go without the lovely bonus that I had planned so here.@@"<br>
<br>
She hands you a pink bag. Looking inside you find it filled with the pinkest, sissiest underthings imaginable.
<<if setup.checkItemOwned("pink_sissy_panties") && setup.checkItemOwned("sissy_garter") && setup.checkItemOwned("pink_sissy_bra") && setup.checkItemOwned("pink_sissy_stockings")>>
You decide it would be wise not to inform her that you already have a set just like this.
<<elseif setup.checkItemOwned("pink_sissy_panties") || setup.checkItemOwned("sissy_garter") || setup.checkItemOwned("pink_sissy_bra") || setup.checkItemOwned("pink_sissy_stockings")>>
You realize that they will "finish" the set you already begun collecting.
<</if>>
You expect her to insist you change into them immediately but she merely waves you off. "@@.npc_manager;Enjoy the gift, you are dismissed.@@"<br>
<br>
You hurry off before she considers "testing" the evil device she has left locked on you.
<<else>>
"@@.npc_manager;Thus, for your own good, I will be retaining control of your key but still... I thought you should know that I have been impressed with your behaviour of late.@@"<br>
<br>
You brace for something else but she merely waves in dismissal and you hurry off lest she consider "testing" the evil device she has left locked on you.
<</if>>
<br><br>
[<<moveTo "room_elevator_home" "Leave.">>]
<<else>>
"@@.npc_manager;In light of your recent behaviour I wanted to make you an offer.@@"<br>
<br>
You tense in anticipation but she smiles to put you at ease.<br>
<br>
"@@.npc_manager;Oh it is nothing like that. You see I was thinking that you have shown sufficient improvement to the point that I believe I can trust you with possession of your key.@@"<br>
<br>
Producing the key to your cage she extends her hand to offer it to you.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_special_2' 'Accept the key.' 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_special_2' 'Decline the key.' 60 "<<set $scene.accept = false>>">>]
<</if>>
<<elseif $player.flags.fem_style.female != "" && !$npc_manager.flags.good_girl.got_sissy_underwear && !$npc_manager.flags.good_girl.got_pink_secretary>>
"@@.npc_manager;Normally I would consider whether to allow you to take your key home with you but well... your behaviour of late tells me that there is just no way I can trust you to be out of my control for that long.@@"<br>
<br>
You can sense there is more that just the continuation of the status quo and wait for her to continue.<br>
<br>
"@@.npc_manager;While you remaining caged and the key under my control is certainly nothing like a problem the fact that I could not even consider trusting you with anything else well... Anyway, I had a thought that perhaps some new clothing might help. We have made such wonderful strides with your overall attire but I was thinking that maybe the real solution is to go back the start and focus on the fundamentals.@@"<br>
<br>
She hands you a pink bag.<br>
<br>
"@@.npc_manager;Go on, now, open it.@@"<br>
<br>
[<<moveTo 'event_manager_good_girl_sissy_panties' 'Look inside the bag.' 60 "<<set $scene.afterWork = true>>">>]
<<else>>
"@@.npc_manager;I have been considering your performance as a whole and well... Work productivity aside your attitude... it needs some work. Thus I will be holding on to your key for another week, for your own good, you understand.@@"<br>
<br>
You open your mouth to respond but think better of it merely nodding silently.<br>
<br>
She smiles. "@@.npc_manager;A good start. That will be all for today. Run along, now.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Leave the office." 60>>]
<</if>>
</div>/*#
#desc: manager may start trusting player w/key
#status: WRITTEN 0.7.0.0
#*/
<<set $player.inside = false>>
<<if $roomchange == true>>
<<if !$scene.accept>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<if !$npc_manager.flags.unlocked_badsissy1>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_header'
0
'event_manager_theme_badsissy1'
true>>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem $player $now $scene.keyId>>
<<set $scene.cage_locked = $inventory[setup.getItemFromType("cage")].status.lock>>
<<if !$scene.cage_locked>>
<<set _cageId = setup.getItemFromType("cage")>>
<<manipulateItem $player $now _cageId "lock" true>>
<</if>>
<<applyExperience 'submission' 8 'very' $SEEN_FRIEND>>
<<else>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $npc_manager.flags.hascagekey = false>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<addItem _keyId>>
<</if>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set _x = setup.addManagerEndlessTask2($now, false, $npc_manager.stagevalues[2].femalesecretary, $npc_manager.stagevalues[2].makeup)>>
<<case 3>>
<<set _x = setup.addManagerEndlessTask3($now, false)>>
<<default>>
ERROR unexpected npc_manager.stage! <<=$npc_manager.stage>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice($player)>>
<<include enterroom>>
<<initRoom>>
<<createBGR setup.imageSecretaryOffice($npc_manager.stage) "./images/characters/npc_manager.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.accept>>
You ask if she would keep the key for you and she beams.<br>
<br>
"@@.npc_manager;Oh, that is just so, so wonderful to hear. I was afraid that you might be tempted by the promise of "freedom"@@" she somehow manages to make the word sound foul, "@@.npc_manager;but you know better than that, hmm? Well, just goes to show that we made the right decision in the first place. Still, this only reinforces my trust in you so you may feel free to request the key in the future but... well, you seem to already understand what is proper.@@"<br>
<br>
The key, hanging from her necklace, slides down her cleavage and she smiles.
<<if !$npc_manager.flags.good_girl.got_sissy_underwear>>
"@@.npc_manager;Well, do have a wonderful weekend. Mine will, alas, be busy, and yet improved knowing that you have entrusted me with this honor. Oh, and <<=$player.first_name>>? Well, let your weekend be improved by the fact that I have have a special reward planned for you on Monday to match the gift you have just given me.@@"
<<else>>
"@@.npc_manager;Well, do have a wonderful weekend. Mine will, alas, be busy, and yet improved knowing that you have entrusted me with this honor. Do try to relax, you have doubly proved yourself today and that can only mean good things for your continued career advancement.@@"
<</if>>
<<else>>
She frowns at your decision but hands over the key without resistance.<br>
<br>
"@@.npc_manager;Have plans for the weekend? Well, no matter, just so long as you are back here on monday, locked, secured, cute and ready to obediently perform your duties.@@"
<</if>>
She turns and disappears back into her office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Get ready to head home.">>]
</div>